LINUX.ORG.RU
ФорумAdmin

Блокирование vlan пакетов iptables


0

0

eth0 смотрит в инет, eth1 - внутренняя сеть. В инет нужно отдавать по http, в локальную сеть открыто все.
Казалось бы, политики по умолчанию - DOP, но не тут-то было:

iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
iptables -t nat -X
iptables -t mangle -X

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

#Loopback enable
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

iptables -A INPUT -i eth0 -s 192.168.0.0/16 -j DROP
iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j DROP
iptables -A INPUT -i eth0 -s 10.0.0.0/16 -j DROP
iptables -A FORWARD -i eth0 -s 192.168.0.0/16 -j DROP
iptables -A FORWARD -i eth0 -s 172.16.0.0/12 -j DROP
iptables -A FORWARD -i eth0 -s 10.0.0.0/16 -j DROP


iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

echo SYN flow
iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
iptables -A OUTPUT -p tcp ! --syn -m state --state NEW -j DROP

iptables -A INPUT -i eth1 -s 192.168.1.0/24 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth1 -d 192.168.1.0/24 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth1 -s 192.168.1.0/24 -d 0.0.0.0/0 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth0 --destination 192.168.1.0/24 -m state --state ESTABLISHED -j ACCEPT

iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o eth0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


echo Enable icmp
iptables -A INPUT -p icmp -m icmp -i eth0 --icmp-type source-quench -j ACCEPT
iptables -A OUTPUT -p icmp -m icmp -o eth0 --icmp-type source-quench -j ACCEPT

echo Allow pinging other hosts
iptables -A INPUT -p icmp -m icmp -i eth0 --icmp-type echo-reply -j ACCEPT
iptables -A OUTPUT -p icmp -m icmp -o eth0 --icmp-type echo-request -j ACCEPT

echo Allow pinging from other hosts
iptables -A INPUT -p icmp -m icmp -i eth0 --icmp-type echo-request -j ACCEPT
iptables -A OUTPUT -p icmp -m icmp -o eth0 --icmp-type echo-reply -j ACCEPT

iptables -A INPUT -p icmp -m icmp -i eth0 --icmp-type parameter-problem -j ACCEPT
iptables -A OUTPUT -p icmp -m icmp -o eth0 --icmp-type parameter-problem -j ACCEPT

iptables -A INPUT -p tcp --dport 25 -j DROP
iptables -A OUTPUT -p tcp --sport 25 -j ACCEPT

echo SSH Enable
iptables -A INPUT -p tcp --dport 22 --sport 1024:65535 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 --dport 1024:65535 -j ACCEPT

echo http enable
iptables -A INPUT -p tcp --dport 80 --sport 1024:65535 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 80 --dport 1024:65535 -j ACCEPT

echo DNS Enable
iptables -A INPUT -p udp -s %dns1 -d %me --sport 53 -j ACCEPT
iptables -A INPUT -p udp -s %dns2 -d %me --sport 53 -j ACCEPT

iptables -A OUTPUT -p udp -d %dns1 --dport 53 -j ACCEPT
iptables -A OUTPUT -p udp -d %dns2 --dport 53 -j ACCEPT

echo DHCP Enable for localnet
iptables -A INPUT -i eth1 -p udp --dport 67:68 --sport 67:68 -j ACCEPT

Все это дает вот что на внешнем интерфейсе (tcpdump):
23:49:19.617452 vlan 2000, p 0, IP 172.16.10.23.1076 > 255.255.255.255.7801: UDP, length 1024
23:49:19.633224 vlan 2000, p 0, IP 172.16.10.23.1076 > 255.255.255.255.7801: UDP, length 1024
23:49:19.651721 vlan 2000, p 0, IP 172.16.10.23.1076 > 255.255.255.255.7801: UDP, length 1024

целую кучу. Пытался всячески заблокировать эти адреса, ставил правило первым - ничего не помогает, все равно идут. Как избавиться?

★★★

Re: Блокирование vlan пакетов iptables

Очевидно это входящие пакеты. Естественно что tcpdump их показывает

CFA ()

Re: Блокирование vlan пакетов iptables

это надо свич настраивать... отключи этот влан на своём порту, тогда эти пакеты до тебя вообще доходить не будут :)

disney ()

Re: Блокирование vlan пакетов iptables

tcpdump ловит пакеты до того как они в iptables попадут, поэтому ты их и видишь :)

true_admin ★★★★★ ()
Ответ на: Re: Блокирование vlan пакетов iptables от true_admin

Re: Блокирование vlan пакетов iptables

Странно, всегда думал, когда tcpdump писал

8363 packets received by filter
372 packets dropped by kernel

это все-таки значит, что он уже после файервола срабатывает.
Собственно, во внутреннюю сеть они не лезут, так что можно забить.

Envel ★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.