设置iptables防止端口扫描

加载xt_recent模块:确保xt_recent模块已加载,可以使用以下命令检查和加载:

lsmod | grep xt_recent
sudo modprobe xt_recent

1.创建跟踪连接的规则:

将每个TCP连接的源IP地址加入到名为PORTSCAN的列表中:

iptables -A INPUT -p tcp -m recent --set --name PORTSCAN

2.允许已建立的连接:

确保已建立的连接不会被阻止:

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

3.记录被阻止的连接 attempt:

添加日志规则以记录被阻止的连接:

iptables -A INPUT -p tcp -m recent --update --seconds 60 --hitcount 10 --name PORTSCAN -j LOG --log-prefix "PORTSCAN DETECTED: "

4.设置阻止频繁连接的规则:

如果一个IP在60秒内有10次及以上的连接尝试,则阻止该IP:

iptables -A INPUT -p tcp -m recent --update --seconds 60 --hitcount 10 --name PORTSCAN -j DROP

5.保存规则:

保存当前的iptables规则,以便系统重启后规则仍然有效:

sudo iptables-save > /etc/iptables/rules.v4

posted on 2025-01-13 20:01  guan88  阅读(87)  评论(0)    收藏  举报

导航