GNU/Linux >> Znalost Linux >  >> Linux

Chyba iptables:neznámá volba --dport

Řešení 1:

Nejprve zadejte -p možnost jako -p tcp nebo -p udp .

Příklady:

iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j DROP

iptables -A INPUT -p udp --dport 53 --sport 1024:65535 -j PŘIJÍMAT

Můžete také zkusit -p all ale nikdy jsem to nedělal a v příkladech pro to nenacházím příliš velkou podporu.

Řešení 2:

Pokud používáte --dport, je vyžadován protokol (-p). Příklad:

-p tcp

Řešení 3:

@dmourati a @diegows již odpověděli na vaši první otázku, takže se budu zabývat vaší druhou otázkou. A bonusová otázka. A hodím i bonusový tip;)

iptables -P pouze akceptuje VESTAVNÉ řetězy. V filter tabulka, to by bylo INPUT , OUTPUT a FORWARD řetězy.

Přesměrování portů není řešeno INPUT řetězec, takže nemusíte otevírat port v INPUT řetěz. zpracuje FORWARD ale řetěz. Dejte si na to pozor.

Bonusový tip: Při učení a/nebo odstraňování problémů iptables , výstup iptables-save je hlavy a ramena lepší než výstup iptables -L -v --line-numbers . Zkuste to, budete mile překvapeni :)

Řešení 4:

Dalším možným řešením je, že zapomínáte spustit jako root. Právě jsem na to narazil při používání tutoriálu k debianu

$ iptables -t nat -p tcp -I PREROUTING --src 0/0 --dst 127.0.0.1  --dport 80 -j REDIRECT --to-ports 8080
iptables v1.8.2 (nf_tables): unknown option "--dport"
$ sudo iptables -t nat -I PREROUTING --src 0/0 --dst 127.0.0.1 -p tcp --dport 80 -j REDIRECT --to-ports 8080
# OK

Řešení 5:

Pokud iptables hlásí, že používá nftables , je třeba použít iptables-legacy místo toho.

Například:
Použijte iptables-legacy -A INPUT -p tcp --dport 22 -m state --state NEW -j DROP
Místo iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j DROP

Je to trochu stará otázka, ale ve výsledcích vyhledávání je první.


Linux
  1. Chyba v definici sítě:Neznámý klíč Dhcp4-overrides?

  2. Úvod do iptables

  3. Použijte iptables s CentOS 7

  1. Linux OS Service „iptables“

  2. chyba autoconf na ubuntu 11.04

  3. Co je :-!! v C kódu?

  1. Zpracování chyb ve skriptech Bash

  2. dpkg:potřebuje možnost akce

  3. Vrátit zpět modifikaci iptables