скинути ланцюжок iptables вперед


0

Я створив такі правила (лише для FORWARD):

iptables -P FORWARD DROP
iptables -A FORWARD -o lo -j ACCEPT
iptables -A FORWARD -s ##MYIPHERE## -j ACCEPT

І тоді я запускаю iptables -L і отримую це:

Chain FORWARD (policy DROP)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
ACCEPT     all  --  ##MYREVERSEDNS##     anywhere
ACCEPT     all  --  localhost            anywhere

Отже, я бачу, що політика за замовчуванням відкидається, але чому це перший рядок так:

ACCEPT     all  --  anywhere             anywhere

Чи означає це, що політика за замовчуванням перезаписується і що весь трафік з будь-якого місця можна пересилати? Чи потрібно додати ще одне правило? Дякую

Відповіді:


0

Це тому, що iptables -L не містить усіх деталей. Це лише дає приблизний огляд. Щоб отримати детальніший список, скористайтеся перемикачем: iptables -vL. Це виглядатиме так:

Chain FORWARD (policy ACCEPT 363K packets, 256M bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 DOCKER     all  --  any    docker0  anywhere             anywhere            
    0     0 ACCEPT     all  --  any    docker0  anywhere             anywhere             ctstate RELATED,ESTABLISHED
    0     0 ACCEPT     all  --  docker0 !docker0  anywhere             anywhere            
    0     0 ACCEPT     all  --  docker0 docker0  anywhere             anywhere            

Як бачите, назви інтерфейсів (тільки docker0 у цьому прикладі).

Якщо ви хочете, щоб "код" відтворити правила точно, використовуйте iptables-save команда:

-A FORWARD -o docker0 -j DOCKER
-A FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i docker0 ! -o docker0 -j ACCEPT
-A FORWARD -i docker0 -o docker0 -j ACCEPT
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.