Руководство по настройке маршрутизатора Ubuntu правила iptables

Руководство по настройке маршрутизатора Ubuntu правила iptables

Я пытаюсь понять смысл правил iptablesвОфициальное руководство по настройке маршрутизатора Ubuntu. Например, *nat. Я не могу найти нигде в интернете, где *natесть iptables.

*nat
-A POSTROUTING -o "$EXTIF" -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A FORWARD -i "$EXTIF" -o "$INTIF" -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT 
-A FORWARD -i "$INTIF" -o "$EXTIF" -j ACCEPT
-A FORWARD -j LOG
COMMIT

решение1

Я полагаю, что это селектор для имени таблицы. Используется *вместо -tопции для варианта командной строки команды, с выбирает таблицу. Например, обычно таблица выбирается указанием -t <tablename>, поэтому в этом случае -t nat, чтобы выбратьнатстол:

iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

В приведенном вами примере используется перенаправление ввода изздесь документto iptables-restore- обратите внимание на <<EOF ... EOFи поэтому вместо параметра командной строки ( -t) используются отдельные строки, например:

iptables-restore <<-EOF
*nat
-A POSTROUTING -o "$EXTIF" -j MASQUERADE
COMMIT
EOF

Можно утверждать, что раз -Aвсе еще есть в документе, то почему -tнет? Я не знаю ответа на этот вопрос, надеюсь, кто-то другой знает.

Аналогично после того, как *natтаблица отредактирована COMMIT, ее *filterвыбирают, обрабатывают и затем COMMITредактируют.

iptables-restore <<-EOF
*filter
:INPUT ACCEPT [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A FORWARD -i "$EXTIF" -o "$INTIF" -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT 
-A FORWARD -i "$INTIF" -o "$EXTIF" -j ACCEPT
-A FORWARD -j LOG
COMMIT
EOF

Если вы ищете руководство, вы можете найти этоNAT — трансляция сетевых адресовурок полезен.

Связанный контент