日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

linux檢測及防止DDOS攻擊的技巧

身為一個網(wǎng)站的站長 , 不僅要保證網(wǎng)站的流量提升 , 還要預(yù)防DDOS攻擊 , 那么在Linux系統(tǒng)下要如何檢測DDOS攻擊呢?又該如何防止DDOS攻擊呢?這都是一門學問 。

linux檢測及防止DDOS攻擊的技巧


【linux檢測及防止DDOS攻擊的技巧】1、利用netstat 工具來檢測查看SYN連接
netstat -n -p -t
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 192.168.0.200:5050 192.168.0.38:48892 TIME_WAIT -
tcp 0 0 192.168.0.200:5050 192.168.0.38:36604 TIME_WAIT -
tcp 0 0 192.168.0.200:5050 192.168.0.38:52988 TIME_WAIT -
tcp 0 0 192.168.0.200:5050 192.168.0.38:38911 TIME_WAIT -
tcp 0 0 192.168.0.200:5050 192.168.0.38:58623 TIME_WAIT -
tcp 0 0 192.168.0.200:43690 192.168.0.200:61616 ESTABLISHED 10415/java
當然我上面的都是正常連接 。當然TIME_WAIT如果占比過多 , 肯定也是不正常的 。(要么受到了攻擊 , 要么需要參數(shù)調(diào)優(yōu) 。)
而受到DDOS惡意攻擊的情況下會在系統(tǒng)中看到的 , 很多連接處于SYN_RECV狀態(tài)(在WINDOWS系統(tǒng)中是SYN_RECEIVED狀態(tài))源IP地址都是隨機的 , 表明這是一種帶有IP欺騙的SYN攻擊 。
tcp 0 10.11.11.11:23 124.173.152.8:25882 SYN_RECV-
tcp 0 10.11.11.11:23 236.15.133.204:2577 SYN_RECV-
tcp 0 10.11.11.11:23 127.160.6.129:51748 SYN_RECV-
具體主機的端口狀態(tài)有以下幾種:
CLOSED:無連接是活動的或正在進行
LISTEN:服務(wù)器在等待進入呼叫
SYN_RECV:一個連接請求已經(jīng)到達 , 等待確認
SYN_SENT:應(yīng)用已經(jīng)開始 , 打開一個連接
ESTABLISHED:正常數(shù)據(jù)傳輸狀態(tài)
FIN_WAIT1:應(yīng)用說它已經(jīng)完成
FIN_WAIT2:另一邊已同意釋放
ITMED_WAIT:等待所有分組死掉
CLOSING:兩邊同時嘗試關(guān)閉
TIME_WAIT:另一邊已初始化一個釋放
LAST_ACK:等待所有分組死掉
稍微更詳細的說明可以看下百度百科上對ESTABLISHED狀態(tài)的解釋及延伸 。
具體SYN_RECV狀態(tài)的統(tǒng)計比較多 , 我這里介紹兩種腳本的寫法:
netstat -an | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a ,  S[a]}’
上面的腳本會列出所有狀態(tài)的連接數(shù) 。
netstat -n -p -t | grep SYN_RECV | grep :80 | wc -l
當然 , 上面80是特指web站點受到DDOS攻擊 。
2、LINUX下DDOS SYN攻擊的防范
防范也主要從兩方面入手 , 一是sysctl的自身的關(guān)于syn方面的配置 , 二是防火墻策略上 。
sysctl -w net.ipv4.tcp_syncookies=1 # tcp syncookie , 默認關(guān)閉
sysctl -w net.ipv4.tcp_max_syn_backlog=1280 # syn隊列 , 默認1024 , 》 1280可能工作不穩(wěn)定 , 需要修改內(nèi)核源碼參數(shù)
sysctl -w net.ipv4.tcp_synack_retries=2 # syn-ack握手狀態(tài)重試次數(shù) , 默認5 , 遭受syn-flood攻擊時改為1或2
sysctl -w net.ipv4.tcp_syn_retries=2 # 外向syn握手重試次數(shù) , 默認4
以上四處是網(wǎng)上經(jīng)常提到的幾個地方 , 當然還有未提到的也可以通過下列命令查看 。
[root@web3 nginx]# sysctl -a|grep syn
net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_recv = 60
net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_sent = 120
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_synack_retries = 5
net.ipv4.tcp_syn_retries = 5
fs.quota.syncs = 25
如未受到攻擊 , 上面的參數(shù)不建議修改 。據(jù)說有增加主機的不穩(wěn)定性的風險 。
上一頁123下一頁 剩下全文

推薦閱讀