Iptables zu nftables: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „command translation You can generate a translation of an iptables/ip6tables command to know the nftables equivalent. *iptables-translate -A INPUT -p tcp --dpo…“)
 
Zeile 1: Zeile 1:
command translation
+
=Befehlsübersetzung=
You can generate a translation of an iptables/ip6tables command to know the nftables equivalent.
+
;Sie können eine Übersetzung eines iptables/ip6tables-Befehls generieren, um das nftables-Äquivalent zu erzeugen.
 
 
 
*iptables-translate -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT
 
*iptables-translate -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT
 
  nft add rule ip filter INPUT tcp dport 22 ct state new counter accept
 
  nft add rule ip filter INPUT tcp dport 22 ct state new counter accept
 
 
*ip6tables-translate -A FORWARD -i eth0 -o eth3 -p udp -m multiport --dports 111,222 -j ACCEPT
 
*ip6tables-translate -A FORWARD -i eth0 -o eth3 -p udp -m multiport --dports 111,222 -j ACCEPT
 
  nft add rule ip6 filter FORWARD iifname eth0 oifname eth3 meta l4proto udp udp dport { 111,222} counter accept
 
  nft add rule ip6 filter FORWARD iifname eth0 oifname eth3 meta l4proto udp udp dport { 111,222} counter accept
 
+
;Anstatt Befehl für Befehl zu übersetzen, können Sie Ihren gesamten Regelsatz in einem einzigen Durchlauf übersetzen:
Instead of translating command by command, you can translate your whole ruleset in a single run:
 
 
 
 
*iptables-save > save.txt
 
*iptables-save > save.txt
 
*cat save.txt
 
*cat save.txt
Zeile 24: Zeile 20:
 
*iptables-restore-translate -f save.txt
 
*iptables-restore-translate -f save.txt
 
<pre>
 
<pre>
 
 
# Translated by iptables-restore-translate v1.6.0 on Sat Dec 24 14:26:59 2016
 
# Translated by iptables-restore-translate v1.6.0 on Sat Dec 24 14:26:59 2016
 
add table ip filter
 
add table ip filter
Zeile 33: Zeile 28:
 
</pre>
 
</pre>
  
You should be able to directly give this to nftables:
+
;Sie sollten dies direkt an nftables übergeben können:
 
 
 
*iptables-restore-translate -f save.txt > ruleset.nft
 
*iptables-restore-translate -f save.txt > ruleset.nft
 
*nft -f ruleset.nft
 
*nft -f ruleset.nft

Version vom 18. Januar 2023, 20:06 Uhr

Befehlsübersetzung

Sie können eine Übersetzung eines iptables/ip6tables-Befehls generieren, um das nftables-Äquivalent zu erzeugen.
  • iptables-translate -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT
nft add rule ip filter INPUT tcp dport 22 ct state new counter accept
  • ip6tables-translate -A FORWARD -i eth0 -o eth3 -p udp -m multiport --dports 111,222 -j ACCEPT
nft add rule ip6 filter FORWARD iifname eth0 oifname eth3 meta l4proto udp udp dport { 111,222} counter accept
Anstatt Befehl für Befehl zu übersetzen, können Sie Ihren gesamten Regelsatz in einem einzigen Durchlauf übersetzen
  • iptables-save > save.txt
  • cat save.txt
# Generated by iptables-save v1.6.0 on Sat Dec 24 14:26:40 2016
*filter
:INPUT ACCEPT [5166:1752111]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [5058:628693]
-A FORWARD -p tcp -m tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT
COMMIT
# Completed on Sat Dec 24 14:26:40 2016
  • iptables-restore-translate -f save.txt
# Translated by iptables-restore-translate v1.6.0 on Sat Dec 24 14:26:59 2016
add table ip filter
add chain ip filter INPUT { type filter hook input priority 0; }
add chain ip filter FORWARD { type filter hook forward priority 0; }
add chain ip filter OUTPUT { type filter hook output priority 0; }
add rule ip filter FORWARD tcp dport 22 ct state new counter accept
Sie sollten dies direkt an nftables übergeben können
  • iptables-restore-translate -f save.txt > ruleset.nft
  • nft -f ruleset.nft
  • nft list ruleset

table ip filter {
	chain INPUT {
		type filter hook input priority 0; policy accept;
	}

	chain FORWARD {
		type filter hook forward priority 0; policy accept;
		tcp dport ssh ct state new counter packets 0 bytes 0 accept
	}

	chain OUTPUT {
		type filter hook output priority 0; policy accept;
	}
}

These translate tools are included in the iptables source tarball and works for iptables and ip6tables.