在CentOS上,您可以使用iptables來配置防火墻規則,以幫助防止DDoS(分布式拒絕服務)攻擊。以下是一些建議的步驟和策略:
iptables
的limit
模塊來限制每個IP地址的連接速率。例如,您可以限制每個IP每秒鐘最多建立5個新連接:iptables -A INPUT -p tcp --dport <port> -m state --state NEW -m recent --set
iptables -A INPUT -p tcp --dport <port> -m state --state NEW -m recent --update --seconds 60 --hitcount 5 -j DROP
iptables
結合tc
(流量控制)工具來限制每秒請求數。首先,安裝iproute2
和tc
:sudo yum install iproute
sudo yum install iproute-tc
sudo tc qdisc add dev eth0 root handle 1: htb default 11
sudo tc class add dev eth0 parent 1: classid 1:10 htb rate 10mbit ceil 20mbit
sudo tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip src <your_server_ip> flowid 1:11
/var/log/secure
和/var/log/messages
),找出可疑的IP地址,并將它們添加到iptables
的黑名單中:# 假設您已經從日志中提取了可疑IP地址,并將它們存儲在文件'suspicious_ips.txt'中
while read ip; do
sudo iptables -A INPUT -s $ip -j DROP
done < suspicious_ips.txt
echo 1 > /proc/sys/net/ipv4/ip_forward
sudo sysctl -p
# 阻止UDP流量
sudo iptables -A INPUT -p udp -j DROP
# 阻止特定端口的流量,例如SSH(22)
sudo iptables -A INPUT -p tcp --dport 22 -j DROP
iptables
規則,以避免不必要的訪問限制或誤報。請注意,雖然這些方法可以幫助您抵御DDoS攻擊,但它們并不能完全阻止所有的攻擊。因此,除了使用防火墻工具外,還應考慮采用其他安全措施,如使用負載均衡器、部署多個服務器實例以及實施其他網絡安全策略。