iptables -p all --dport

13

iptables nie wydaje się rozpoznać --dportz -p all.

iptables -A INPUT -p all --dport www -j ACCEPT

daje:

iptables v1.4.4: unknown option `--dport'
Try `iptables -h' or 'iptables --help' for more information.

--destination-port doesn't work either: iptables v1.4.4: unknown option `--destination-port'

Dodanie dwóch osobnych reguł -p tcpi -p udpdziała dobrze, więc dlaczego nie działa -p all?

W razie potrzeby dotyczy to serwera LTS Ubuntu 10.04 z pakietem iptables w wersji 1.4.4-2ubuntu2

Darkfeline
źródło

Odpowiedzi:

16

--dport nie jest flagą dla ogólnych reguł iptables. Jest to flaga jednego z rozszerzonych modułów dopasowywania pakietów . Są one ładowane, gdy używasz -p protocollub -m. O ile nie można określić -m <protocol>ani -p <protocol>z protokołu konkretnego nie można używać--dport

Zobaczysz to na stronie podręcznika iptables (8) :

   tcp
       These extensions can be used if `--protocol tcp' is specified. It provides the
       following options:
       ...
       [!] --destination-port,--dport port[:port]
              Destination port or port range specification.  The flag --dport is a
              convenient alias for this option.
       ...

Nie wszystkie protokoły mają flagę --dport, ponieważ nie wszystkie protokoły obsługują pojęcie portów

Philip Reynolds
źródło
7

„wszystko” obejmuje więcej niż tylko TCP i UDP; obejmuje także protokoły takie jak ICMP, które nie mają pojęcia numerów portów, a zatem nie mogą przyjmować parametru --dport.

techieb0y
źródło