Linux反DDOS的幾個設定

2021-06-09 04:09:26 字數 1767 閱讀 1035

對sysctl引數進行修改

$ 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」關閉。

net.ipv4.tcp_max_syn_backlog是syn佇列的長度,加大佇列長度可以容納更多等待連線的網路連線數。

net.ipv4.tcp_synack_retries和net.ipv4.tcp_syn_retries是定義syn重試次數。

把如下加入到/etc/sysctl.conf即可,之後執行「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 提示沒有這個關鍵字

使用iptables

命令:# netstat -an | grep ":80" | grep established

來檢視哪些ip可疑~比如:221.238.196.83這個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

這是錯的

我認為應該這樣寫

iptables -a input -s 221.238.196.83 -p tcp -j drop

將來自221.238.196.83的包丟棄。

對於偽造源ip位址的syn flood攻擊。該方法無效

其他參考

防止同步包洪水(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併發數每秒1次,可以根據自己的需要修改防止各種埠掃瞄

# 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執行:

sysctl net.inet.tcp.msl=7500

為了重啟有效,可以將下面折行加入 /etc/sysctl.conf:

net.inet.tcp.msl=7500

Linux 反 DDOS的幾個設定

對sysctl引數進行修改 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.ipv...

Linux 反 DDOS的幾個設定

2 bsd 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 s...

linux幾個相關設定

將檔案 file1.txt 的擁有者設為 users 群體的使用者 jessie chown jessie usersfile1.txt 設定檢視ip vi etc sysconfig network scripts ifcfg eth0 etc init.d network restart 共享目...