Почему iptables не сбрасывает пакеты?

У меня есть следующее правило в нашем конфигурационном файле iptables /etc/sysconfig/iptables

-A INPUT -s 84.23.99.97 -j DROP

И когда я делаю iptables --list, я получаю следующее

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
DROP       all  --  84.23.99.97          anywhere


Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Однако, если я делаю tcpdump, я все еще вижу весь этот трафик с этого ip, почему?

tcpdump -ttttn tcp port 1234 | grep 84.23.99.97
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
2010-10-21 23:49:33.828011 IP 84.23.99.97.9061 > myip: Flags [S], seq 3522466008, win 65535, options [mss 1460,sackOK,eol], length 0
2010-10-21 23:49:33.832182 IP 84.23.99.97.64804 > myip: Flags [S], seq 1088176500, win 65535, options [mss 1460,sackOK,eol], length 0
....

2 ответа

tcpdump видит входящий трафик, прежде чем он достигнет iptables. В приведенном выше примере это объясняет, почему вы видите входящие SYN, а не SYN/ACK с вашего компьютера.

Вы должны сохранить свои правила. Может быть, вы сделали, но не упомянули об этом? Если нет, попробуйте это: % sudo /sbin/service iptables save

Это экспортирует используемые в настоящее время правила и запускает брандмауэр. Независимо от того, что у вас есть в / etc / sysconfig /iptables, это скажет вам, что на самом деле использует брандмауэр.

Другие вопросы по тегам