Правило iptables для доступа к Интернету

Я сделал политику по умолчанию для своей машины,

iptables -A INPUT -j REJECT #DROP ALL PACKETS TO INPUT CHANNEL 

Канал INPUT заблокирован. Теперь я хочу разрешить только некоторые конкретные службы, например, я должен иметь доступ к Интернету. Итак, какое правило я должен добавить? Порт 80 для HTTP, поэтому я попытался разрешить этот порт

 iptables -A INPUT -p tcp --dport 80 ACCEPT 

Но это не сработало. Дайте мне знать, как я могу это сделать?

  • iptables: какая разница между фильтром и калекой
  • Ответ перенаправления IP на определенный порт
  • Как проверить порт, перенаправленный с localhost на localhost на .. localhost?
  • Переместить правило iptables (без удаления и добавления)
  • iptables не пересылает из WAN виртуальные машины
  • linux + iptables + / etc / sysconfig / iptables
  • iptables инфографический
  • Плохой аргумент `127.0.0.1 'в iptables
  • One Solution collect form web for “Правило iptables для доступа к Интернету”

    Правила iptables являются последовательными, то есть первое правило, которое они нажимают, выполняет совпадение. такие правила, как ACCEPT, DROP и REJECT, являются терминальными, то есть пакет не будет продвигаться дальше в цепочку. -A означает добавление . Так что вы сделали

    • сопоставить все и ОТКАЗАТЬ это # ​​все останавливается здесь
    • принять tcp-порт 80 #, мы никогда не достигаем этого, потому что все там остановилось ^

    К сожалению, порт tcp 80 является частью всего, и, таким образом, вы никогда не достигнете своего второго правила. Промойте цепочку INPUT с помощью -F и измените порядок, в котором вы запускаете свои правила. Я также рекомендую прочитать статью Дэна Роббинса о разработке брандмауэра с сохранением состояния, который предназначен не только для ядер gentoo или 2.4.

    Linux и Unix - лучшая ОС в мире.