iptables -Dodaj jedną lub więcej reguł


0

Przeglądałem dzisiaj stronę podręcznika iptables i zauważyłem, że opis -A mówi „Dołącz jedną lub więcej reguł na końcu wybranego łańcucha”. Czy to oznacza, że ​​jeśli mam:

iptables -A INPUT {...rule1...}
iptables -A INPUT {...rule2...}

można to uprościć do jednej linii?

iptables -A INPUT {...rule1; rule2...}

Rozejrzałem się w Google i nie mogę znaleźć przykładu, że ktoś mógłby to zrobić, ale byłoby to po prostu kilka moich skryptów, jeśli to możliwe.

Odpowiedzi:


2

Można podać tylko jedną definicję reguły w jednym iptables -Awywołaniu.

Jeśli jednak użyjesz adresu takiego jak www.example.com, który zdarza się rozpoznawać na więcej niż jednym adresie, dołączanych jest wiele reguł, po jednym dla każdego adresu.

Na przykład: (użyte fałszywe adresy IP ...):

$ host www.example.com
www.example.com has address 10.1.2.3
www.example.com has address 10.1.2.4
$ sudo iptables -A INPUT -s www.example.com -j ACCEPT
$ sudo iptables -L INPUT -vn
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
 208K  250M ACCEPT     all  --  *      *       192.168.0.0/16       0.0.0.0/0           
    0     0 ACCEPT     all  --  *      *       10.1.2.3             0.0.0.0/0
    0     0 ACCEPT     all  --  *      *       10.1.2.4             0.0.0.0/0      

Więc teraz wstawiłeś więcej niż jedną regułę za pomocą jednego iptables -Awywołania.

Zgadzam się, że nie jest to całkiem oczywiste z opisu strony.


Tak, to jest wyjaśnienie dla „jednego lub więcej”, jak opisano w następnym zdaniu na stronie podręcznika: „Gdy nazwy źródłowe i / lub docelowe zostaną przetłumaczone na więcej niż jeden adres, dla każdej możliwej kombinacji adresów zostanie dodana reguła”
AB

2

Zasada nr 1 na każde wywołanie iptables. opcja „Dołącz” jest przeciwieństwem opcji „Wstaw”. Dołącz jak w ... nowa reguła trafia na koniec listy reguł, ale Wstaw dodaje regułę na początku listy.

iptables -I INPUT {Rule1}
iptables -I INPUT {Rule2}

spowoduje, że reguły będą następujące:

{Rule2}
{Rule1}

gdzie

iptables -A INPUT {Rule1}
iptables -A INPUT {Rule2}

spowodowałoby

{Rule1}
{Rule2}

To prawda, ale w jaki sposób odpowiada to na pytanie, czy można dodać wiele reguł za pomocą jednego połączenia iptables?
wurtel

@wurtel Tak, pierwsze dwa zdania. Proszę przeczytaj.
TheCompWiz,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.