如何将数据包丢弃到封闭的端口而不是拒绝?

如何将数据包丢弃到封闭的端口而不是拒绝?

当我连接到关闭的端口时,我收到“连接被拒绝”的消息。我想在 Ubuntu 14.04 中禁用此响应的发送。

我可以做吗?

答案1

您可以使用 iptables 、DROP 与 REJECT 来执行此操作。

句法

iptables -option [链] [规则] -j [目标]

拒绝

iptables -P INPUT REJECT --reject-with icmp-host-prohibited

降低

iptables -P INPUT DROP

注意:-j不与 -P 选项一起使用,请在编辑之前参阅 iptables 文档 -https://help.ubuntu.com/community/IptablesHowTo?action=show&redirect=Iptables#Disabling_the_firewall

使用端口 22 的示例(这里我们使用 -j )

拒绝

iptables -A INPUT -p tcp ! --dport 22 -j REJECT --reject-with icmp-host-prohibited

或者使用 DROP

iptables -A INPUT -p tcp ! --dport 22 -j DROP 

IMO 拒绝优先于放弃

丢弃并不比拒绝更安全(尽管“Shields up” 可能会这么说)。

  • 爆竹者不会遵守“暂停”的规定,因此它实际上不会以任何方式减慢爆竹者的速度。
  • 由于缺乏响应,Drop 会告知/揭示破解者您的 IP 地址存在。
  • 查看 nmap 和 map 等工具来测试您 LAN 上的计算机。https://nmap.org/book/man-os-detection.html

http://bodhizazen.com/Tutorials/iptables

http://www.chiark.greenend.org.uk/~peterb/network/drop-vs-reject

如果您需要帮助调试 iptables,请发布您的整套规则,因为规则的语法和顺序都很重要。

相关内容