我有一台 Ubuntu 服务器,在一些端口上有公共服务,包括 TCP 和 UDP,并试图保护它免受端口扫描器(TCP 和 UDP)的攻击。TCP 扫描器阻止是使用 iptables 的“recent”模块完成的,该模块检测并将 TCP 端口扫描器列入黑名单。UDP 端口扫描器的方式与 TCP 不同。据我所知,UDP 扫描器的方法是:将 UDP 包发送到目标服务器 S 中的所有(UDP)端口,如果端口 P 关闭,S 将返回 ICMP“端口不可达”错误代码,攻击者将知道端口已关闭,并且开放端口(如果有)在剩余端口内。如果 S 没有响应,攻击者将假设端口 P 是开放的或被防火墙过滤的,这需要他很长时间才能区分。从这个线索,我想到两个想法:
- 阻止除我的服务端口之外的所有端口上的 ICMP。-
阻止除我的服务端口之外的任何 UDP 端口。我不是攻击预防专家。有没有办法阻止 UDP 端口扫描而不影响我的服务端口正常运行?