- 論壇徽章:
- 0
|
對(duì)sysctl參數(shù)進(jìn)行修改
$ sudo sysctl -a | grep ipv4 | grep syn
輸出類似下面:
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.tcp_syncookies = 0
net.ipv4.tcp_synack_retries = 5
net.ipv4.tcp_syn_retries = 5
net.ipv4.tcp_syncookies是是否打開SYN COOKIES的功能,“1”為打開,“2”關(guān)閉。
net.ipv4.tcp_max_syn_backlog是SYN隊(duì)列的長(zhǎng)度,加大隊(duì)列長(zhǎng)度可以容納更多等待連接的網(wǎng)絡(luò)連接數(shù)。
net.ipv4.tcp_synack_retries和net.ipv4.tcp_syn_retries是定義SYN重試次數(shù)。
把如下加入到/etc/sysctl.conf即可,之后執(zhí)行“sysctl -p”!
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 4096
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2
提高TCP連接能力
net.ipv4.tcp_rmem = 32768
net.ipv4.tcp_wmem = 32768
net.ipv4.sack=0 #我的Centos 5.4 提示沒有這個(gè)關(guān)鍵字
使用iptables
命令:
# netstat -an | grep ":80" | grep ESTABLISHED
來(lái)查看哪些IP可疑~比如:221.238.196.83這個(gè)ip連接較多,并很可疑,并不希望它再次與221.238.196.81有連接?墒褂妹睿
iptables -A INPUT -s 221.238.196.81 -p tcp -d 221.238.196.83 --dport 25 --syn -j ACCEPT
這是錯(cuò)的
我認(rèn)為應(yīng)該這樣寫
iptables -A INPUT -s 221.238.196.83 -p tcp -j DROP
將來(lái)自221.238.196.83的包丟棄.
對(duì)于偽造源IP地址的SYN FLOOD攻擊。該方法無(wú)效
其他參考
防止同步包洪水(Sync Flood)
# iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT
也有人寫作
# iptables -A INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPT
--limit 1/s 限制syn并發(fā)數(shù)每秒1次,可以根據(jù)自己的需要修改防止各種端口掃描
# iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
Ping洪水攻擊(Ping of Death)
# iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
BSD
運(yùn)行:
sysctl net.inet.tcp.msl=7500
為了重啟有效,可以將下面折行加入 /etc/sysctl.conf:
net.inet.tcp.msl=7500 |
|