为了阻止 Linux 上的端口扫描程序,我在 iptables 上找到了一些阻止攻击者 IP 地址的规则。这些规则工作正常,可以阻止攻击者,并将攻击者的 IP 地址记录在 kernel.log 文件中。问题是,为什么这些规则会阻止 TCP 端口 139(net-bios)端口以阻止攻击者?我已经进行了流量捕获,没有证据表明nmap
在 TCP 上使用端口 139 启动端口扫描。
iptables -A INPUT -m recent --name portscan --rcheck --seconds 86400 -j DROP
iptables -A FORWARD -m recent --name portscan --rcheck --seconds 86400 -j DROP
iptables -A INPUT -m recent --name portscan --remove
iptables -A FORWARD -m recent --name portscan --remove
iptables -A INPUT -p tcp -m tcp --dport 139 -m recent --name portscan --set -j LOG --log-prefix "portscan:"
iptables -A INPUT -p tcp -m tcp --dport 139 -m recent --name portscan --set -j DROP
iptables -A FORWARD -p tcp -m tcp --dport 139 -m recent --name portscan --set -j LOG --log-prefix "portscan:"
iptables -A FORWARD -p tcp -m tcp --dport 139 -m recent --name portscan --set -j DROP
答案1
网络基本输入输出系统是一种 LAN 协议,而不是 WAN 协议,面向互联网的系统上该端口上的流量几乎总是可疑/无效的。
因此,此类流量可用作指示远程系统正在探测您的互联网服务器上的随机端口。但我认为,将一个无效端口上的流量等同于端口扫描的逻辑有点不合理。