CentOS 7 Firewall-Cmd nicht gefunden

20

Ich habe gerade CentOS 7 installiert:

[root @ new ~] # cat / etc / redhat-release
CentOS Linux Version 7.1.1503 (Core) 

Ich versuche, die Firewall zu konfigurieren. In CentOS 7 wird iptables nicht mehr verwendet und durch firewalld ersetzt. Wenn Sie versuchen, einen Befehl auszuführen, um eine Firewall-Regel als solche festzulegen:

firewall-cmd --add-port = 80 / tcp

Ich erhalte folgende Nachricht:

[root @ new ~] # firewall-cmd --add-port = 80 / tcp
-bash: firewall-cmd: befehl nicht gefunden

edit : Ich habe auch den folgenden Befehl ausprobiert:

[root @ new ~] # firewall-offline-cmd --add-port = 80 / tcp
-bash: firewall-offline-cmd: Befehl nicht gefunden

ohne Erfolg.

Ich habe versucht, Folgendes auszuführen, um zu überprüfen, ob die Firewall installiert ist:

[root @ new ~] # Dienst Firewall Status
Weiterleitung nach / bin / systemctl status firewalld.service
firewalld.service
   Geladen: nicht gefunden (Grund: Keine solche Datei oder Verzeichnis)
   Aktiv: inaktiv (tot)

Nach dieser Ausgabe habe ich versucht, firewalld zu starten:

[root @ new ~] # service firewalld start
Die Umleitung nach / bin / systemctl startet firewalld.service
Fehler beim Ausgeben des Methodenaufrufs: Einheit firewalld.service konnte nicht geladen werden: Keine solche Datei oder kein solches Verzeichnis.

Irgendwelche Ideen, was mit der CentOS 7-Installation nicht stimmt? Dies ist eine saubere Installation auf einem OpenVZ VPS, ich muss noch keine Änderungen vornehmen.

BnMcG
quelle
2
Haben Sie versucht , die Firewall zu installieren ?
Michael Hampton
@MichaelHampton ... Größter Facepalm der Woche bis jetzt ... Ich nahm an, da die Dienstbefehle nicht "nicht gefunden" zurückgegeben haben, wie ich es auf Debian gesehen habe, wurde es installiert, aber nicht konfiguriert oder so, aber du bist richtig, sieht aus wie es nicht installiert ist.
BnMcG
2
Die Standard-CentOS-Vorlage von OpenVZ ist kein Standard. es ist stark angepasst und abgespeckt. (Dasselbe gilt für alle anderen Vorlagen.) Wenn etwas fehlt, installieren Sie es. Und beenden Sie die Nutzung von OpenVZ-basierten VPS-Anbietern so bald wie möglich. Sie werden erst später auf weitere Probleme stoßen ...
Michael Hampton
@MichaelHampton Ah, das macht Sinn, danke. Ich habe mich gefragt, warum es nicht standardmäßig vorinstalliert ist.
BnMcG

Antworten:

31

Zwei mögliche Optionen

  • Ihr PATH enthält nicht / usr / bin
  • firewall-cmd ist nicht installiert
    • yum install firewalld
user9517 unterstützt GoFundMonica
quelle
Wie oben von @MichaelHampton kommentiert, ist die CentOS 7-Vorlage von OpenVZ reduziert und enthält standardmäßig keine Firewall. Die Antwort ist natürlich, Firewalld zu installieren.
BnMcG
28

Sieht für mich so aus, als hättest du es nicht installiert / aktiviert.

yum install firewalld
systemctl unmask firewalld
systemctl enable firewalld
systemctl start firewalld
Fred Flint
quelle
Dies entspricht im Wesentlichen der vorherigen Antwort.
Kasperd
8
Diese Antwort bietet einen Mehrwert, indem die Befehle zum Aktivieren und Starten des Dienstes angezeigt werden. Ich habe beide Antworten positiv bewertet.
Isapir
Obwohl TBH ich gerade festgestellt habe, dass der Dienst enabledstandardmäßig ist.
Isapir
-3

Versuchen Sie stattdessen das GUI-Tool. Dieses wird standardmäßig mit Centos 6/7 ausgeliefert. firewalld ist nach centos5 veraltet

$ sudo system-config-firewall

oder

# system-config-firewall 

Die System-Config-Firewall sieht wie folgt aus

snehasys
quelle
1
Das ist rückwärts. In CentOS 7 ist Firewalld die Standardeinstellung und die System-Konfigurations-Firewall ist veraltet.
Michael Hampton
Die Lösung in meinem Fall war die Installation einer Firewall, die nicht mit dem OpenVZ-Image geliefert wird. Außerdem ist ein GUI-Tool auf einem Headless-Server nicht (zumindest nicht ohne weiteres) verfügbar.
BnMcG