Назад | Перейти на главную страницу

Правило соответствия iptables

Если правило соответствует пакету и оно имеет -j DROP, Я знаю, что пакет перестанет проходить все остальные правила. Однако я не понимаю, что произойдет, если пакет будет соответствовать правилу с -j ACCEPT? Перестанет ли он снова пересекать правила или попытается соответствовать другим правилам? Другими словами, что произойдет, если у карты будет много правил, которым нужно соответствовать.

Побеждает первое совпадение, и обработка останавливается, если цель является «конечной» целью; те включают DROP, ACCEPT, DNAT, и так далее. Это цели, которые определяют окончательное размещение пакета; нет смысла говорить -j REJECT если его можно переопределить тремя строками позже с помощью -j OH-SORRY-I-DIDNT-MEAN-IT.

Побеждает первый матч, а обработка делает не остановить, если цель «не прекращается»; те включают LOG, ULOG, и отправка пакета в определенную пользователем цепочку. В последнем случае обработка продолжается по правилам в этой цепочке, и, если ни одно из них не соответствует конечной цели, пакет «выпадает из нижней части цепочки» и возвращается к правилу в вызывающей цепочке после того, которое отправило его в определяемая пользователем цепочка.

Это ясно? Победа в первом матче всегда применяется, поэтому порядок правил важен.

В общем, существует 2 типа целей iptables:

  • Непрерывные цели (например, LOG, ULOG, TOS, MARK, CONNMARK, NOTRACK, CONNTRACK)
  • Удаление целей (например, ACCEPT, DROP, REJECT)

Без прекращения действия означает, что после применения определенного действия пакет переходит к следующему правило в та же цепочка / стол

Прекращение означает, что после выполнения определенного действия обработка завершается на том стол. Если пакет все еще существует, он перейдет к следующей таблице в соответствии с последовательностью потока netfilter (см. Ниже). Конечно, в случаях REJECT и DROP пакет больше не существует, поэтому, естественно, больше не будет обработки.

В статья в Википедии об iptables предоставляет диаграмму последовательности таблиц / цепочек, с которыми встретится пакет.