Имеется сервер с 3 сетевыми интерфейсами. По первому (eth0) приходит интернет, два других (eth1,eth2) смотрят в две локальные сети.
Настройки следующие (/etc/network/interfaces):
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet static
address 20.0.0.1
netmask 255.255.255.192
broadcast 20.0.0.34
auto eth2
iface eth2 inet static
address 30.0.0.1
netmask 255.255.255.128
broadcast 30.0.0.66
Ну и далее необходимо разрешить пропускать во внутренние сети только трафик по http и https. Изнутри (то есть с компьютеров сетей) необходимо запретить ICMP, а также подключения к серверу кроме как по протоколам http, https, ftp и ssh.
С ICMP разобрался:
iptables –A INPUT –s 20.0.0.0/30 –p icmp –j DROP
iptables –A INPUT –s 30.0.0.0/28 –p icmp –j DROP
С остальными подключениями нет возможности проверить, но сделал следующее:
iptables –A INPUT –s 20.0.0.0/30 –p tcp –m multiport ! –dport 20,21,22,80,443,8080 –j DROP
iptables –A INPUT –s 30.0.0.0/28 –p tcp –m multiport ! –dport 20,21,22,80,443,8080 –j DROP
iptables –A INPUT –s 20.0.0.0/30 –p udp –m multiport ! –dport 20,21,22,80,443,8080 –j DROP
iptables –A INPUT –s 30.0.0.0/28 –p udp –m multiport ! –dport 20,21,22,80,443,8080 –j DROP
Насколько это верно?
А вот как разрешить пропускать во внутренние сети только трафик по http и https не знаю. Помогите пожалуйста!
Сделал так:
iptables –A FORWARD –p tcp –m multiport ! –dport 80,443,8080 –j DROP
iptables –A FORWARD –p udp –m multiport ! –dport 80,443,8080 –j DROP
и у меня вообще пропал интернет внутри сетей...