1

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

Запретить все ВВОД

iptables -A INPUT -j DROP

Разрешить все ВЫХОД

iptables -A OUTPUT -j ACCEPT

Направляйте все пакеты из подсети во внешнюю

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT

Сбросить все пакеты извне в подсеть ???

Направляйте пакеты на порт 80 на сервер в подсети.

iptables -t nat -A PREROUTING -d 192.168.2.143 -p tcp --dport 80 -j DNAT --to 172.16.32.131

IP-адрес брандмауэра на eth0 - 192.168.2.143, а на eth1 - 172.16.32.254, а сервер - 172.16.32.131.

Подсеть 172.16.32.0/24

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

1 ответ1

2

Политика по умолчанию - принимать пакеты, которые не соответствуют ни одному правилу. Чтобы изменить это, используйте:

iptables -P FORWARD DROP

Вы можете проверить текущий набор правил с помощью iptables -L . См. Также http://www.netfilter.org/documentation/HOWTO/packet-filtering-HOWTO-7.html (функция политики указана внизу).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .