Das Öffnen eines Ports mit firewalld scheint nicht zu funktionieren

1716
mikemaccana

Ich habe sshd so konfiguriert, dass es an einem anderen Port lebt. Ich habe diesen Port mit Firewalld geöffnet:

$ sudo firewall-cmd --zone=public --add-port=22000/tcp --permanent 

Listungsregeln zeigen, dass Port 22000 geöffnet ist:

$ sudo firewall-cmd --permanent --zone=public --list-all public (default) interfaces: sources: services: dhcpv6-client ssh ports: 22000/tcp  masquerade: no forward-ports:  icmp-blocks: rich rules: 

Ich kann mich jedoch nicht von einem Remote-Host an Port 22000 anmelden. Wenn ich iptables verwende, funktioniert es:

$ sudo iptables -I INPUT -p tcp --dport 22000 -j ACCEPT 

Ich kann mich jetzt einloggen. Aber wie kann ich den Port mit Firewalld öffnen ?

Edit: Wie gewünscht:

 $ sudo firewall-cmd --get-default-zone public 

Und:

 $ firewall-cmd --get-active-zones public interfaces: eth0 eth1 
2
Ihre öffentliche Zone ist keinem Interface zugewiesen und daher nicht wirksam, afaik. Was ist die Ausgabe von sudo firewall-cmd --get-default-zone`? Jakuje vor 7 Jahren 2
Danke @Jakuje! Die Ausgabe ist "public". mikemaccana vor 7 Jahren 0
Vielleicht nützlicher wäre "firewall-cmd --get-active-zone" mit einer Erläuterung der Netzwerkschnittstelle, über die Sie sprechen. Jakuje vor 7 Jahren 1
@Jakuje hinzugefügt! Danke für Ihre Hilfe. mikemaccana vor 7 Jahren 0
Das sieht aus wie in einem nicht konsistenten Zustand. Wenn Sie jedoch sowohl mit iptables als auch mit firewalld anfangen zu spielen, hört es normalerweise auf zu funktionieren. Das ist wahrscheinlich alles, was ich dazu sagen kann. Jakuje vor 7 Jahren 0
@mikemaccana Hast du gleichzeitig `firewalld` und` iptables`? Funktioniert die Firewall überhaupt? Versuchen Sie, "iptables" & "iptables-service" zu entfernen, "firewalld" neu zu laden und zu sehen pun vor 7 Jahren 0
@ Jakuje Es war kaputt * vor * Ich habe die iptables-Regel hinzugefügt, nicht danach. Durch das Löschen der iptables-Regel kann auf den Port nicht mehr zugegriffen werden. mikemaccana vor 7 Jahren 0
@pun 'Versuchen Sie, iptables & iptables-service zu entfernen' - meinen Sie das Modul, das Paket oder etwas anderes? mikemaccana vor 7 Jahren 0
@mikemaccana Ja, ich wollte das Paket iptables und iptables-service entfernen pun vor 7 Jahren 0
@pun-Paket iptables-service ist nicht installiert. Das Paket iptables wird von firewalld benötigt. mikemaccana vor 7 Jahren 0

1 Antwort auf die Frage

3
Sergei B.

Siehe die Firewall-Dokumente :

Mit der permanenten Option --permanent können Optionen dauerhaft gesetzt werden. Diese Änderungen sind nicht sofort wirksam, nur nach Neustart / Neustart des Dienstes oder Neustart des Systems. Ohne die Option --permanent ist eine Änderung nur Teil der Laufzeitkonfiguration.

Bei Verwendung der --permanentOption sollten Sie die Konfiguration neu laden. firewall-cmd --reload
Dies liegt daran, dass die --permanentOption Änderungen in die gespeicherte Konfiguration schreibt und nicht in die Ausführung von config.

Vielen Dank! Könnten Sie den entsprechenden Dokumenten einen Link hinzufügen? mikemaccana vor 6 Jahren 0
Sicher. http://www.firewalld.org/documentation/man-pages/firewall-cmd `Die permanente Option --permanent kann verwendet werden, um Optionen dauerhaft festzulegen. Diese Änderungen sind nicht sofort wirksam, nur nach Neustart / Neustart des Dienstes oder Neustart des Systems. Ohne die Option --permanent ist eine Änderung nur Teil der Laufzeitkonfiguration.` Sergei B. vor 6 Jahren 0