1

Ниже приведены мои правила iptables в Ubuntu.

╰─$ sudo iptables -S              
-P INPUT ACCEPT
-P FORWARD DROP
-P OUTPUT ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -j DROP

Только для INPUT я дал правила и весь исходящий трафик находится в политике ACCEPT. Но я не могу просматривать интернет или пинговать к любому интернет-домену.

Но если я удаляю последнее правило в цепочке -A INPUT -j DROP я могу просматривать и пинговать.

Какую цепочку нужно открыть для просмотра интернета? Почему политика цепочки INPUT мешает исходящему трафику. Я сбит с толку. Пояснения пожалуйста.

1 ответ1

1

-A INPUT -j DROP отменяет ваш -P INPUT ACCEPT . -j - это опция перехода, которая, насколько я понимаю, означает, что если пакет соответствует этому правилу, брандмауэр проигнорирует все остальные правила о пакете и сделает все, что эта строка скажет, чтобы сделать с пакетом, что в данном случае , это DROP .

Это позволяет вам отправлять ICMP-сигнал или делать HTTP-запрос, но отбрасывает все полученные вами ответы. Если есть какие-то входные данные, которые вы пытаетесь отфильтровать, вам нужно будет добавить больше правил к правилу, иначе оно будет отбрасывать все, что возвращают ваши исходящие запросы.

Это мой любимый учебник по IPTables. В нем есть несколько примеров фильтрации определенных типов ввода, а также объясняется различие между NEW и ESTABLISHED трафиком.

http://www.thegeekstuff.com/2011/06/iptables-rules-examples/

надеюсь это поможет.

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