@Bright144

Iptables, в чем назначение состояние NEW в цепочке INPUT?

Не давно начал изучать iptables, и в таблице filter политику цепочки INPUT поставил на DROP. Дальше добавлял в него разрешенные подключение и порты. Где-то читал состояние RElATED, ESTABLISHED не обходимо чтобы пакеты установленных соединении проходили через файрволл без препятствие. И с состоянием INVALID тоже все ясно. Но решил узнать о состояние NEW, и добавил в таблицу filter такое правило
iptables -A INPUT -m state --state RELATED,ESTABLISHED,NEW -j ACCEPT

и после этого правило сканировал не разрешенные порты и они были открыты, даже можно подключиться и использовать сервисы не смотря у меня на политика INPUT DROP.
И я ни как не могу понять для чего состояние NEW, по моему взгляду оно ведет себя как INPUT ACCEPT. Я не мог найти подробные примеры состояние NEW, так в чем его назначение и в чем его отличие от простого ACCEPT?
  • Вопрос задан
  • 192 просмотра
Решения вопроса 1
hint000
@hint000
у админа три руки
Давайте по аналогии. Вы заходите в автобус или в вагон поезда. В этот момент вы - NEW. К вам подходит кондуктор. В автобусе вы покупаете билет, а в поезде предъявляете ранее купленный билет. Кондуктор запоминает ваше лицо и больше к вам не пристаёт, потому что теперь вы - ESTABLISHED. А ещё у вас может быть с собой чемодан - это ваш RELATED.
Когда вы делаете ... --state RELATED,ESTABLISHED,NEW -j ACCEPT -это значит что кондуктор спит или бухает, вошедших NEW зайцев никто не проверяет, они спокойно едут.
Не забывайте, что после срабатывания -j ACCEPT или -j DROP дальнейшие правила в цепочке не применяются, так что не важно, что в следующей строчке вы хотите закрыть доступ по какому-то порту, если вы уже применили -j ACCEPT раньше.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@Zerg89
New это только новые коннекты чаще всего через него ставятся ловушки против сканеров портов или защита доступов с фильтрами сети в цепочке drop из интернета чтобы не тратить процессорное время на проверку соответствий по всему файрволу ставится до RELATED,ESTABLISHED или с дополнительными фильтрами(адрес-листу, списку портов и тд) к которым точно доступа быть не должно
То есть если порт не открыт динамически изнутри сети nat'ом такой конект будет сброшен
Ответ написан
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Таким --state NEW -j ACCEPT вы разрешили новые коннекты на любые порты с любых IP-адресов через любой интерфейс.
И все правила, идущие уже после этого ACCEPT - вообще не сработают, до них обработка не дойдёт, потом что это правило уже всем всё разрешило...
И да, это полный аналог дефаултного правила INPUT[ACCEPT]. Поэтому так ни кто не пишет, в такое правило обязательно добавляют разные аргументы, типа через какой интерфейс, на какой порт, и с каких IP, и т.д.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы