我有一个监听 1234 端口的软件,我想对外界隐藏它。我知道我可以说例如
sudo iptables -A INPUT ! -s 1.2.3.4/32 -p tcp -m tcp --dport 9000 -j 1234 --reject-with icmp-port-unreachable
使端口 1234 仅可供远程主机 1.2.3.4 访问。
但是,其他主机仍然可以运行nmap -sS myhost
,nmap -sW myhost
或者进行一些其他高级测试以查看输出,例如
PORT STATE SERVICE
1234/tcp filtered someservice-guessed-from-port-number
对于基本nmap
扫描(作为普通用户而不是 root),端口 1234 似乎已关闭。
请注意,无论是否有任何软件实际在端口 1234 上运行,此输出都是相同的。
是否可以使用iptables
使端口 1234 看起来与除选定主机之外的所有主机的正常关闭端口完全相同?我知道我可以修改所有端口以显示为已过滤,但这似乎是一种解决方法,而不是真正的解决方案。
回复 RST: