Заморочился с вопросом...
Есть система подсчёта трафика на базе fprobe-ulog.
Всё работает уже полгода и без сбоев, что примечательно.
Но вот мучает меня положение правил подсчёта.
Сейчас трафик снимается в INPUT, OUTPUT и FORWARD по интерфейсу.
Может, кто лучший вариант предложит?
# Generated by iptables-save v1.3.8 on Sun Apr 24 20:33:16 2011
*mangle
:PREROUTING ACCEPT [20:1268]
:INPUT ACCEPT [20:1268]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [11:1412]
:POSTROUTING ACCEPT [11:1412]
-A FORWARD -i ppp+ -p tcp -m tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1357:1500 -j TCPMSS --set-mss 1356
COMMIT
# Completed on Sun Apr 24 20:33:16 2011
# Generated by iptables-save v1.3.8 on Sun Apr 24 20:33:16 2011
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A PREROUTING -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A PREROUTING -i eth1 -p tcp -m tcp --dport 4899 -m conntrack --ctstate NEW -j DNAT --to-destination 192.168.17.2:4899
-A PREROUTING -i eth1 -p tcp -m tcp --dport 23 -m conntrack --ctstate NEW -j DNAT --to-destination 192.168.17.2:23
-A POSTROUTING -o eth1 -j SNAT --to-source 83.220.60.36
COMMIT
# Completed on Sun Apr 24 20:33:16 2011
# Generated by iptables-save v1.3.8 on Sun Apr 24 20:33:16 2011
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [13:2524]
:NOWAY - [0:0]
:SSH_CHECK - [0:0]
-A INPUT -i eth1 -j ULOG --ulog-prefix "OWN-INPUT "
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p gre -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -s 192.168.17.0/255.255.255.0 -i ! eth1 -m conntrack --ctstate NEW -j ACCEPT
-A INPUT -i eth1 -p tcp -m multiport --dports 9,22,23,25,110,4899 -m conntrack --ctstate NEW -j SSH_CHECK
-A INPUT -p tcp -m tcp --dport 9 -m conntrack --ctstate NEW -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT
-A INPUT -p tcp -m tcp --dport 25 -m conntrack --ctstate NEW -j NOWAY
-A INPUT -p tcp -m tcp --dport 80 -m conntrack --ctstate NEW -j NOWAY
-A INPUT -p tcp -m tcp --dport 110 -m conntrack --ctstate NEW -j NOWAY
-A INPUT -p tcp -m tcp --dport 1723 -m conntrack --ctstate NEW -j ACCEPT
-A INPUT -i ! eth1 -j LOG --log-prefix "INPUT-TRAP "
-A FORWARD -i eth1 -j ULOG --ulog-prefix "FORWARD-IN "
-A FORWARD -o eth1 -j ULOG --ulog-prefix "FORWARD-OUT "
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -m conntrack --ctstate DNAT -j ACCEPT
-A FORWARD -p gre -j ACCEPT
-A FORWARD -i eth1 -p tcp -m multiport --dports 9,22,23,25,110,4899 -m conntrack --ctstate NEW -j SSH_CHECK
-A FORWARD -s 192.168.0.0/255.255.0.0 -i eth1 -j NOWAY
-A FORWARD -d 192.168.0.0/255.255.0.0 -i eth1 -j NOWAY
-A FORWARD -s 192.168.17.0/255.255.255.0 -i ! eth1 -o eth1 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -s 192.168.17.0/255.255.255.0 -o ! eth1 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -i ! eth1 -j LOG --log-prefix "FORWARD-TRAP "
-A OUTPUT -o eth1 -j ULOG --ulog-prefix "OWN-OUTPUT "
-A NOWAY -p tcp -j REJECT --reject-with tcp-reset
-A NOWAY -j REJECT --reject-with icmp-port-unreachable
-A SSH_CHECK -m conntrack --ctstate NEW -m recent --set --name SSH --rsource
-A SSH_CHECK -m conntrack --ctstate NEW -m recent --update --seconds 90 --hitcount 4 --name SSH --rsource -j NOWAY
COMMIT
# Completed on Sun Apr 24 20:33:16 2011
eth0 - локалка 192.168.17/24 и сеть WiFi роутера 192.168.10.0/30
eth1 - инет
Пользователь решил продолжить мысль 25 Апреля 2011, 05:31:10:
Мммм... что, если поставить правила сбора трафика в самый конец nat/PREROUTING(входящие) и в самое начало nat/POSTROUTING (исходящие) ?
Какие шансы, что что-то будет пропущено-потеряно?