it-swarm.com.de

Öffnen Sie den Firewall-Port auf CentOS 7

Ich verwende CentOS 7 und muss sicherstellen, dass die Ports 2888 und 3888 offen sind.

Ich habe diesen Artikel gelesen, aber das hat nicht funktioniert, da es unter CentOS 7 OS keinen iptables save-Befehl gibt.

Jemand sagte mir, dass die oben genannte URL für CentOS 7 nicht gültig ist und ich sollte this folgen. Dieser Artikel ist mir jedoch nicht klar, welchen Befehl ich ausführen muss.

Habe ich auch gefunden 

firewall-cmd --zone=public --add-port=2888/tcp 

dies überlebt jedoch keine Neustarts.

Wie kann ich also die Ports öffnen und Neustarts überleben lassen?

295
Knows Not Much

Verwenden Sie diesen Befehl, um Ihre aktiven Zonen zu finden:

firewall-cmd --get-active-zones

Es wird entweder public, dmz oder etwas anderes sagen. Sie sollten sich nur auf die erforderlichen Zonen beziehen. 

Im Falle eines öffentlichen Versuchs:

firewall-cmd --zone=public --add-port=2888/tcp --permanent

Denken Sie anschließend daran, die Firewall neu zu laden, damit die Änderungen wirksam werden.

firewall-cmd --reload

Andernfalls ersetzen Sie public für Ihre Zone, zum Beispiel, wenn Ihre Zone dmz ist:

firewall-cmd --zone=dmz --add-port=2888/tcp --permanent
562
ganeshragav

Die Antwort von ganeshragav ist korrekt, aber Es ist auch nützlich zu wissen, dass Sie Folgendes verwenden können:

firewall-cmd --permanent --zone=public --add-port=2888/tcp 

wenn jedoch ein bekannter Dienst ist, können Sie Folgendes verwenden:

firewall-cmd --permanent --zone=public --add-service=http 

und laden Sie dann die Firewall neu

firewall-cmd --reload

[Die Antwort wurde geändert, um den Kommentar von Martin Peter widerzuspiegeln. Die ursprüngliche Antwort hatte --permanent am Ende der Befehlszeile.]

102
Sotsir

CentOS (RHEL) 7 hat die Firewall geändert, um firewall-cmd zu verwenden, der eine Vorstellung von Zonen hat, die einer Windows-Version von öffentlichen, privaten und privaten Netzwerken ähnelt. Sie sollten hier schauen, um herauszufinden, welches Sie Ihrer Meinung nach verwenden sollten. EL7 verwendet standardmäßig public, sodass dies in den folgenden Beispielen verwendet wird.

Sie können überprüfen, welche Zone Sie mit firewall-cmd --list-all verwenden, und diese mit firewall-cmd --set-default-zone=<zone> ändern.

Sie wissen dann, in welcher Zone ein Dienst (oder Port) zulässig ist:

firewall-cmd --permanent --zone=<zone> --add-service=http

firewall-cmd --permanent --zone=<zone> --add-port=80/tcp

Sie können überprüfen, ob der Port tatsächlich geöffnet wurde, indem Sie Folgendes ausführen: 

firewall-cmd --zone=<zone> --query-port=80/tcp

firewall-cmd --zone=<zone> --query-service=http

Nach der Dokumentation ,

Wenn Sie Änderungen an den Firewall-Einstellungen im permanenten Modus vornehmen, wird Ihr Die Auswahl wird nur wirksam, wenn Sie die Firewall oder .__ neu laden. System startet neu.

Sie können die Firewall-Einstellungen wie folgt neu laden: firewall-cmd --reload.

48
Rick Smith

Fedora, über iptables

Sudo iptables -I INPUT -p tcp --dport 3030 -j ACCEPT
Sudo service iptables save

Scheint zu funktionieren

24
joviano dias

Verwenden Sie den folgenden Befehl, um offene Ports anzuzeigen.

firewall-cmd --list-ports

Wir verwenden das Folgende, um Dienste anzuzeigen, deren Ports geöffnet sind.

firewall-cmd --list-services

Wir verwenden das Folgende, um Dienste anzuzeigen, deren Ports offen sind, und offene Ports anzuzeigen 

firewall-cmd --list-all

Um einen Dienst zur Firewall hinzuzufügen, verwenden Sie den folgenden Befehl. In diesem Fall verwendet der Dienst einen beliebigen Port zum Öffnen in der Firewall.

firewall-cmd --add-services=ntp 

Damit dieser Dienst dauerhaft geöffnet ist, verwenden wir den folgenden Befehl.

firewall-cmd —add-service=ntp --permanent 

Verwenden Sie den folgenden Befehl, um einen Port hinzuzufügen

firewall-cmd --add-port=132/tcp  --permanent

Um die Firewall auszuführen, muss der folgende Befehl erneut geladen werden.

firewall-cmd --reload

Ya ALi 

19
Hasan Barary

Während ganeshragav und Sotsir korrekte und direkt anwendbare Ansätze bieten, ist es nützlich zu beachten, dass Sie /etc/firewalld/services eigene Dienste hinzufügen können. Sehen Sie sich /usr/lib/firewalld/services/ an, wo sich die vordefinierten Dienste von firewalld befinden.

Der Vorteil dieses Ansatzes ist, dass Sie später wissen werden, warum diese Ports geöffnet sind, wie Sie es in der Servicedatei beschrieben haben. Sie können es jetzt auch auf jede Zone anwenden, ohne Tippfehler zu riskieren. Darüber hinaus müssen Änderungen am Dienst nicht auf alle Zonen separat angewendet werden, sondern nur auf die Dienstdatei.

Sie können beispielsweise /etc/firewalld/services/foobar.xml erstellen:

<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>FooBar</short>
  <description>
    This option allows you to create FooBar connections between
    your computer and mobile device. You need to have FooBar
    installed on both sides for this option to be useful.
  </description>
  <port protocol="tcp" port="2888"/>
  <port protocol="tcp" port="3888"/>
</service>

(Informationen zur Syntax finden Sie in man firewalld.service.)

Sobald diese Datei erstellt wurde, können Sie firewall-cmd --reload verfügbar machen und sie dann dauerhaft zu einer Zone hinzufügen

firewall-cmd --permanent --zone=<zone> --add-service=foobar

gefolgt von firewall-cmd --reload, um es sofort zu aktivieren.

12
equaeghe

Die Top-Antworten hier funktionieren, aber ich fand etwas Eleganteres in Michael Hamptons Antwort zu einer verwandten Frage. Die "neue" (firewalld-0.3.9-11 +) --runtime-to-permanent Option zu firewall-cmd lässt Sie Laufzeitregeln erstellen und testen, bevor Sie sie permanent machen:

$ firewall-cmd --zone=<zone> --add-port=2888/tcp
<Test it out>
$ firewall-cmd --runtime-to-permanent

Oder um die Änderungen nur zur Laufzeit zurückzusetzen:

$ firewall-cmd --reload

Siehe auch Kommentar von Antony Nguyen . Anscheinend funktioniert firewall-cmd --reload unter Umständen nicht richtig, wenn Regeln entfernt wurden. In diesem Fall schlägt er vor, den Firewall-Dienst neu zu starten:

$ systemctl restart firewalld
4
Neal Gokli

Verwenden Sie den folgenden Befehl, um offene Ports anzuzeigen.

firewall-cmd --list-ports Wir verwenden Folgendes, um Dienste anzuzeigen, deren Ports offen sind.

firewall-cmd --list-services Wir verwenden Folgendes, um Dienste anzuzeigen, deren Ports offen sind, und offene Ports anzuzeigen

firewall-cmd --list-allUm einen Dienst zur Firewall hinzuzufügen, verwenden Sie den folgenden Befehl. In diesem Fall verwendet der Dienst einen beliebigen Port zum Öffnen in der Firewall.

firewall-cmd --add-services = ntp Damit dieser Dienst dauerhaft geöffnet ist, verwenden wir den folgenden Befehl.

firewall-cmd -add-service = ntp --permanent Um einen Port hinzuzufügen, verwenden Sie den folgenden Befehl

firewall-cmd --add-port = 132/tcp --permanent

2
Hasan Barary

Wenn Sie in Centos 7 FIrewalld mehrere Ports zulassen, können Sie den folgenden Befehl verwenden.

#firewall-cmd --add-port={port number/tcp,port number/tcp} --permanent

#firewall-cmd --reload


And check the Port opened or not after reloading the firewall.


#firewall-cmd --list-port


For other configuration [Linuxwindo.com][1]
0
Vinay Patil

Firewalld ist für den iptables-Veteran etwas nicht intuitiv. Wenn Sie eine iptables-gesteuerte Firewall mit iptables-ähnlicher Syntax in einem einfach konfigurierbaren Baum bevorzugen, versuchen Sie, firewalld durch fwtree: .__ zu ersetzen. https://www.linuxglobal.com/fwtree-flexible-linux-ree-based-firewall/ und führen Sie dann die folgenden Schritte aus:

 echo '-p tcp --dport 80 -m conntrack --cstate NEW -j ACCEPT' > /etc/fwtree.d/filter/INPUT/80-allow.rule
 systemctl reload fwtree 
0
Eric Wheeler

Wenn Sie mit dem iptables-Dienst wie in centos 6 oder früher vertraut sind, können Sie den iptables-Dienst weiterhin durch manuelle Installation verwenden:

schritt 1 => epel repo installieren

yum installiere epel-release

schritt 2 => iptables-Dienst installieren

yum installiere iptables-services

schritt 3 => Firewall-Dienst stoppen

systemctl stop firewalld

schritt 4 => Deaktiviere den Firewall-Dienst beim Start

systemctl disable firewalld

schritt 5 => iptables-Dienst starten

systemctl start iptables

schritt 6 => iptables beim Start aktivieren

systemctl ermöglicht iptables

endlich können Sie Ihre iptables-Konfiguration jetzt unter/etc/sysconfig/iptables bearbeiten.

Also -> Regel bearbeiten -> neu laden/neu starten.

ich mag ältere Centos mit derselben Funktion wie Firewall.

0
dek.tiram