Nftables mehrere tables verwenden
Hallo zusammen,
ich bin aktuell von iptables zu nft umgestiegen und hätte hierzu eine Frage.
Wie kann ich eine separate Table anlegen, welche jedoch in Konflikt zu einer vorherigen steht?
In diesem Fall soll die neue Table erzwungen werden.
Beispiel:
in diesem Beispiel ist in der ersten table "filter" der Port 443 nur für das interne Subnetz geöffnet. Anschließend möchte ich diesen Port temporär für das Internet öffnen. Jedoch funktionniert das nicht. Wo liegt mein Fehler?
ich bin aktuell von iptables zu nft umgestiegen und hätte hierzu eine Frage.
Wie kann ich eine separate Table anlegen, welche jedoch in Konflikt zu einer vorherigen steht?
In diesem Fall soll die neue Table erzwungen werden.
Beispiel:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
table ip filter {
chain input {
type filter hook input priority 0; policy drop;
ct state related, established accept
}
chain forward {
type filter hook forward priority 0; policy drop;
}
chain output {
type filter hook output priority 0; policy drop;
ct state related, established accept
udp dport 53 ip daddr 192.168.0.254 accept
tcp dport 443 ip daddr 192.168.0.0/24 accept
}
}
in diesem Beispiel ist in der ersten table "filter" der Port 443 nur für das interne Subnetz geöffnet. Anschließend möchte ich diesen Port temporär für das Internet öffnen. Jedoch funktionniert das nicht. Wo liegt mein Fehler?
1
2
3
4
5
6
7
2
3
4
5
6
7
table ip temp {
chain output {
type filter hook output priority 0; policy drop;
ct state related, established accept
tcp dport 443 accept
}
}
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 425360
Url: https://administrator.de/forum/nftables-mehrere-tables-verwenden-425360.html
Ausgedruckt am: 16.04.2025 um 14:04 Uhr
11 Kommentare
Neuester Kommentar

Wo liegt mein Fehler?
Öhm du weißt aber hoffentlich schon das die Output Chain nur für den Traffic den die Firewall selbst generiert und nicht des LANs?! Für Traffic der aus dem LAN kommt und über die FW ins Internet soll, ist die FORWARD Chain zuständig und die blockst du vollständig, also kann da nichts fließen.
Öhm ..
Deine Fehler liegt darin daß du zwar eine neue Chain anlegst aber von der Output Chain nicht in die neue Chain springst weil dein jump fehlt.
Hier siehst du wie sowas geht:
https://wiki.nftables.org/wiki-nftables/index.php/Classic_perimetral_fir ...
War bisher bei iptables aber auch nicht anders...
in diesem Beispiel ist in der ersten table "filter" der Port 443 nur für das interne Subnetz geöffnet.
Was soll man da bitte anderes denken ??Deine Fehler liegt darin daß du zwar eine neue Chain anlegst aber von der Output Chain nicht in die neue Chain springst weil dein jump fehlt.
Hier siehst du wie sowas geht:
https://wiki.nftables.org/wiki-nftables/index.php/Classic_perimetral_fir ...
War bisher bei iptables aber auch nicht anders...

Ganz einfach indem du dir die handles anzeigen lässt und mit grep das ganze extrahiert
https://wiki.archlinux.org/index.php/nftables#Deletion
Oder die Regel an bestimmter Position einfügen
https://wiki.nftables.org/wiki-nftables/index.php/Simple_rule_management
Oder noch besser zwei FW Sets erstellen und dann zwischen denen hin und her schalten.
Oder eine neue Chain erstellen und dann nur den Jump zu dieser löschen /erstellen.
Such dir was aus.
https://wiki.archlinux.org/index.php/nftables#Deletion
Oder die Regel an bestimmter Position einfügen
https://wiki.nftables.org/wiki-nftables/index.php/Simple_rule_management
Oder noch besser zwei FW Sets erstellen und dann zwischen denen hin und her schalten.
Oder eine neue Chain erstellen und dann nur den Jump zu dieser löschen /erstellen.
Such dir was aus.

Ich habe gehofft das es vielleicht eine einfachere Methode gibt.
Was ist an all dem so schwer??? Wenn das schon zu viel ist ist Linux nichts für dich.Les dich ein und mach. Bringt dich weiter als wenn wir dir hier was vorbeten und du dadurch die Lesestunde auslässt 😉.
Die passenden Ansätze hast du jetzt ja.

Ich sag's ja, Selbsthilfe ist die beste Medizin 🙂.