Назад | Перейти на главную страницу

Отслеживание состояния iptables

Я только что взял на себя администрирование довольно сложного набора правил брандмауэра для брандмауэра, работающего под управлением Fedora Core 12, и есть одна вещь, которая меня озадачивает.

Когда я запускаю nmap на шлюзе из-за пределов сети, я вижу все ожидаемые службы, но также и sunrpc на порту 111. В цепочке INPUT установлено DROP DEFAULT, и нет правила, разрешающего порт 111. Насколько я могу судить (наблюдая счетчики пакетов до / во время / после сканирования) это разрешено правилом: «-m state --state RELATED, ESTABLISHED -j ACCEPT», но я не понимаю, почему новое TCP-соединение будет считаться RELATED или ESTABLISHED .

Любые предложения будут ценны.

РЕДАКТИРОВАТЬ:

Модули Conntrack:

nf_conntrack_netlink    14925  0 
nfnetlink               3479  1 nf_conntrack_netlink
nf_conntrack_irc        5206  1 nf_nat_irc
nf_conntrack_proto_udplite     3138  0 
nf_conntrack_h323      62110  1 nf_nat_h323
nf_conntrack_proto_dccp     6878  0 
nf_conntrack_sip       16921  1 nf_nat_sip
nf_conntrack_proto_sctp    11131  0 
nf_conntrack_pptp      10673  1 nf_nat_pptp
nf_conntrack_sane       5458  0 
nf_conntrack_proto_gre     6574  1 nf_conntrack_pptp
nf_conntrack_amanda     2796  1 nf_nat_amanda
nf_conntrack_ftp       11741  1 nf_nat_ftp
nf_conntrack_tftp       4665  1 nf_nat_tftp
nf_conntrack_netbios_ns     1534  0 
nf_conntrack_ipv6      18504  2 
ipv6                  279399  40 ip6t_REJECT,nf_conntrack_ipv6

Цепочка INPUT в таблице фильтров:

-A INPUT -s 192.168.200.10/32 -p tcp -m tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT 
-A INPUT -s 127.0.0.0/8 -i lo -j ACCEPT 
-A INPUT -p udp -m udp --sport 67:68 --dport 67:68 -j ACCEPT 
-A INPUT -d 192.168.200.5/32 -i eth0 -j ACCEPT 
-A INPUT -d 192.168.1.2/32 -i eth0 -j ACCEPT 
-A INPUT -d {public_ip}/32 -i ppp0 -p tcp -m multiport --dports 22,80,443 -j ACCEPT 
-A INPUT -d {public_ip}/32 -i ppp0 -p tcp -m multiport --sports 22,25,80,443 -j ACCEPT 
-A INPUT -d {public_ip}/32 -i ppp0 -p udp -m udp --dport 1194 -j ACCEPT 
-A INPUT -d {public_ip}/32 -i ppp0 -p udp -m udp --sport 1194 -j ACCEPT 
-A INPUT -d {public_ip}/32 -i ppp0 -p udp -m multiport --sports 53,123 -j ACCEPT 
-A INPUT -d {public_ip}/32 -i ppp0 -p icmp -m icmp --icmp-type 8 -j ACCEPT 
-A INPUT -i eth0 -m state --state NEW -j ACCEPT 
-A INPUT -d {public_ip}/32 -m state --state NEW -j ACCEPT 
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 

eth0 подключен к внутренней сети, eth3 подключен к ADSL-модему в режиме моста, ppp0 - это WAN-соединение, туннелируемое через eth3.

-A INPUT -d {public_ip}/32 -m state --state NEW -j ACCEPT

Здесь сказано: «Принимайте все новые подключения», и этим все сказано.

Если вы хотите диагностировать это самостоятельно, посмотрите на счетчики iptables до и после сканирования. Вы не только увидите увеличение этого правила, но также заметите, что оно позволяет вводить довольно большое количество новых подключений.