2

Я боролся с iptables в Linux, чтобы получить правильную конфигурацию. По сути, я пытаюсь установить правила, которые решают следующие задачи:

Входящий трафик, который является частью установленного сеанса TCP, разрешен

Входящий трафик на обычные порты WWW и SSH разрешен

Все остальные порты TCP заблокированы

По какой-то причине только SSH-порт работает нормально.

1 ответ1

3
iptables -A INPUT -m conntrack -j ACCEPT  --ctstate RELATED,ESTABLISHED
iptables -A INPUT -p tcp -m tcp -m multiport -m state --state NEW -j DROP ! --dports 22,80

Последние правила должны быть:

iptables -A INPUT -j DROP

Если у вас есть несколько сетевых карт на вашем ПК, вы можете указать, на какие из них это повлияет, иначе это повлияет на ВСЕ из них.

В зависимости от того, как настроен остальной брандмауэр, вам может понадобиться продублировать эти правила в цепочке FORWARD.

Эти правила должны находиться в верхних или близких к ним правилах, цепочки INPUT/FORWARD - это правила, которые предшествуют этим правилам.

Если вы не используете веб-сервер, порт 80 даже не требуется.

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