我正在使用iptables在主机上设置防火墙。 我想禁用时间戳ICMP请求,但它是有线的,我只允许types8(回声请求)进入主机,但事件仍然可以从我的主机得到时间戳
64 bytes from xxxxxxxxx: icmp_seq=2 ttl=61 time=2.56 ms TS: 36654775 absolute -6423 3 1 -4 0 4 0 -2 Unrecorded hops: 1
我试图只允许types8,但它不起作用,看来我所能做的就是让所有的ICMP请求通过,或拒绝所有的,下面是我使用的configuration脚本。
iptables -F iptables -X iptables -Z iptables -P INPUT DROP iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -m state --state RELATED -j ACCEPT # allow the icmp iptables -I INPUT -p icmp --icmp-type 8 -j ACCEPT # services iptables -A INPUT -p TCP --dport 22 -j ACCEPT # SSH iptables -A INPUT -p UDP --sport 53 -j ACCEPT # DNS iptables -A INPUT -p TCP --sport 53 -j ACCEPT # DNS iptables -A INPUT -p TCP --dport 80 -j ACCEPT # HTTP iptables -A INPUT -p TCP --dport 443 -j ACCEPT # HTTPS # allow the replay from outgoing established connection iptables -A INPUT -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
Linux内核的版本是2.6.18,而iptables的版本是v1.3.5。 那有什么问题? 如何阻止时间戳请求?
我尝试了ping的时间戳选项,它看起来像ICMPtypes保持在8,并且时间戳请求是IP选项的一部分。 这可能是为什么你不过滤请求,因为他们看起来就像普通的回应请求到iptables 。
有一个名为ipv4options的匹配扩展,您可能想要探索以阻止时间戳。