Вот составил примерный файл конфигурации, может кто посмотреть, сказать что здесь не так.
Код: Выделить всё
IPTABLES = "/sbin/iptables"
# delete all rules from this chains
$IPTABLES -F INPUT
$IPTABLES -F OUTPUT
$IPTABLES -F FORWARD
# set default chains policy
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP
# create new chains
$IPTABLES -N allowed
$IPTABLES -N tcp_packets
$IPTABLES -N udp_packets
$IPTABLES -N icmp_packets
$IPTABLES -N bad_tcp_packets
# allow DHCP connections
$IPTABLES -I INPUT -i eth0 -p udp --dport 67:68 --sport 67:68 -j ACCEPT
# allow all packets from loopback interface
$IPTABLES -A INPUT -p ALL -i lo -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -o lo -j ACCEPT
# redirect packet to another chain
$IPTABLES -A INPUT -p ALL -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -p TCP -i eth0 -j tcp_packets
$IPTABLES -A INPUT -p UDP -i eth0 -j udp_packets
$IPTABLES -A INPUT -p ICMP -i eth0 -j icmp_packets
#
# rules for tcp_packets chain
#
$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 80 -j allowed
#
# rules for udp_packets chain
#
$IPTABLES -A udp_packets -p UDP -s 0/0 --destination-port 4000 -j ACCEPT
#
# ICMP rules
#
$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT
$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT
#
# rules for bad_tcp_packets chain
#
$IPTABLES -A bad_tcp_packets -p tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j REJECT --reject-with tcp-reset
$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j DROP
#
# rules for allowed chain
#
$IPTABLES -A allowed -p TCP --syn -j ACCEPT
$IPTABLES -A allowed -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A allowed -p TCP -j DROPЯ вот не пойму какие цепочки проходит пакет. Насколько я понимаю приходящий к нам пакет проходит INPUT -- FORWARD -- OUTPUT. Так ли это? И какой путь проходит исходящий от нашей машины пакет?