我想在我的 iptables 中添加一些规则来防止端口扫描,我该怎么做?
我找到了一些解决方案,但效率不高。
答案1
最好的办法是在 iptables 中设置默认丢弃策略,然后只允许需要的内容。例如:
# 默认丢弃所有数据包。 iptables -P 输入删除 # 允许预先存在的连接 iptables -A INPUT -m 状态 --状态 ESTABLISHED,RELATED -j ACCEPT # 允许来自 192.0.2.0/24 的 SSH iptables -A 输入 -p tcp -s 192.0.2.0/24 --目标端口 22 -i eth0 -j 接受 # 允许所有 HTTP iptables -A 输入 -p tcp --目标端口 80 -i eth0 -j 接受
它不会阻止人们进行端口扫描,但这意味着他们所能看到的只有 80 端口开放。
答案2
为了nmap 端口扫描,你可以查看以下答案:iptables 技巧和窍门
我不熟悉 Hping,但如果 Hping 使用 NULLflags,那么我上面链接的答案也应该有效。