即使跑步之后
iptables -A INPUT -p icmp -m icmp --icmp-type 3 -j DROP
我不断在 tcpdump 上收到 ICMP 类型 3 代码 13 数据包。当我运行时tcpdump icmp
,我收到如下消息:
19:41:31.923630 IP NAMESOURCE > MY_NAME: ICMP net IP_SOURCE unreachable, length 76
我的问题是,我怎样才能摆脱这些数据包?
顺便说一句,我从多个来源获取了这些数据包,这让我认为这可能是某种 (D)DoS。但我不确定我在其中扮演什么角色。
此外,snort 不断发出警报:
[**] [1:485:4] ICMP Destination Unreachable Communication Administratively Prohibited [**]
[Classification: Misc activity] [Priority: 3]
05/02-19:44:20.171298 SOURCE_IP -> MY_IP
ICMP TTL:238 TOS:0x0 ID:13584 IpLen:20 DgmLen:56
Type:3 Code:13 DESTINATION UNREACHABLE: ADMINISTRATIVELY PROHIBITED,
PACKET FILTERED
** ORIGINAL DATAGRAM DUMP:
MY_IP:47541 -> SOURCE_IP:8080
TCP TTL:47 TOS:0x0 ID:22750 IpLen:20 DgmLen:60 DF
Seq: 0x5EB7CF7A
** END OF DUMP
答案1
我大胆猜测(如果不进行进一步调查很难确定),有人冒充您的 IP 作为来源,而您获得了返回流量。
请记住,tcpdump
检查“线路”(即,在 iptables 之前),因此即使 iptables 正在丢弃流量,您仍然会在 tcpdump 中看到流量。
您无法阻止数据包发送给您(您的提供商需要这样做),您所能做的就是丢弃它们以尽量减少对您的主机的影响。
答案2
请记住,iptables
规则是按照给定的顺序处理的,因此如果链在到达您的规则之前返回,则不会产生影响。
请注意,ICMP 对于网络的运行至关重要,它用于在一长串其他错误消息中告诉您某个连接无法正常工作。要通过 ICMP 淹没任何合理的机器,需要不法之徒相当聪明,不要太担心这一点。