In diesem Tutorial zeigen wir Ihnen, wie Sie eine Firewall unter CentOS 7 konfigurieren. Für diejenigen unter Ihnen, die es nicht wussten, FirewallD ist eine vollständige Firewall-Lösung, die die iptables-Regeln des Systems verwaltet und bietet eine D-Bus-Schnittstelle für den Betrieb auf ihnen. Beginnend mit CentOS 7 ersetzt FirewallD iptables als Standard-Firewall-Verwaltungstool.
Dieser Artikel geht davon aus, dass Sie zumindest über Grundkenntnisse in Linux verfügen, wissen, wie man die Shell verwendet, und vor allem, dass Sie Ihre Website auf Ihrem eigenen VPS hosten. Die Installation ist recht einfach und setzt Sie voraus im Root-Konto ausgeführt werden, wenn nicht, müssen Sie möglicherweise 'sudo
hinzufügen ‘ zu den Befehlen, um Root-Rechte zu erhalten. Ich zeige Ihnen Schritt für Schritt, wie Sie die Firewall unter CentOS 7 konfigurieren.
Voraussetzungen
- Ein Server, auf dem eines der folgenden Betriebssysteme ausgeführt wird:CentOS 7.
- Es wird empfohlen, dass Sie eine neue Betriebssysteminstallation verwenden, um potenziellen Problemen vorzubeugen.
- SSH-Zugriff auf den Server (oder öffnen Sie einfach das Terminal, wenn Sie sich auf einem Desktop befinden).
- Ein
non-root sudo user
oder Zugriff auf denroot user
. Wir empfehlen, alsnon-root sudo user
zu agieren , da Sie Ihr System beschädigen können, wenn Sie als Root nicht aufpassen.
Firewall auf CentOS 7 konfigurieren
Schritt 1. Beginnen wir zunächst damit, sicherzustellen, dass Ihr System auf dem neuesten Stand ist.
yum clean all yum -y update
Schritt 2. FirewallD unter CentOS 7 installieren.
Firewalld wird standardmäßig auf CentOS 7 installiert, aber wenn es nicht auf Ihrem System installiert ist, können Sie den folgenden Befehl für seine Installation ausführen:
sudo yum install firewalld
Nachdem Sie FirewallD installiert haben, können Sie den Dienst aktivieren und Ihren Server neu starten. Denken Sie daran, dass die Aktivierung von FirewallD dazu führt, dass der Dienst beim Booten gestartet wird:
sudo systemctl start firewalld sudo systemctl enable firewal sudo reboot
Wir können überprüfen, ob der Dienst ausgeführt wird und erreichbar ist, indem wir Folgendes eingeben:
sudo firewall-cmd --state
Schritt 3. Einrichtung und Konfiguration von FirewallD auf CentOS 7.
FirewallD verwendet Dienste und Zonen anstelle von iptables-Regeln und -Ketten. Standardmäßig sind die folgenden Zonen verfügbar:
- ablegen – Alle eingehenden Netzwerkpakete ohne Antwort verwerfen, nur ausgehende Netzwerkverbindungen sind verfügbar.
- blockieren – Alle eingehenden Netzwerkpakete mit einer ICMP-Host-Prohibited-Meldung ablehnen, Nur ausgehende Netzwerkverbindungen sind verfügbar.
- öffentlich – Nur ausgewählte eingehende Verbindungen werden akzeptiert, für die Verwendung in öffentlichen Bereichen
- extern Für externe Netzwerke mit aktiviertem Masquerading werden nur ausgewählte eingehende Verbindungen akzeptiert.
- DMZ – Demilitarisierte DMZ-Zone, öffentlich zugänglich mit eingeschränktem Zugriff auf das interne Netzwerk, nur ausgewählte eingehende Verbindungen werden akzeptiert.
- funktioniert – Für Computer in Ihrem Heimbereich werden nur ausgewählte eingehende Verbindungen akzeptiert.
- Startseite – Für Computer in Ihrem Heimbereich werden nur ausgewählte eingehende Verbindungen akzeptiert.
- intern -Für Computer in Ihrem internen Netzwerk werden nur ausgewählte eingehende Verbindungen akzeptiert.
- vertrauenswürdig – Alle Netzwerkverbindungen werden akzeptiert.
Um alle verfügbaren Zonen aufzulisten, führen Sie Folgendes aus:
firewall-cmd --get-zones work drop internal external trusted home dmz public block
So listen Sie die Standardzone auf:
firewall-cmd --get-default-zone public
So ändern Sie die Standardzone:
firewall-cmd --set-default-zone=dmz firewall-cmd --get-default-zone dmz
So können Sie beispielsweise Ihre VPS-Firewall mit FirewallD konfigurieren, wenn Sie einen Webserver, SSH auf Port 8888 oder einen Mailserver ausführen.
Zuerst stellen wir die Standardzone auf DMZ ein.
firewall-cmd --set-default-zone=dmz
Um permanente Dienstregeln für HTTP und HTTPS zur DMZ-Zone hinzuzufügen, führen Sie Folgendes aus:
firewall-cmd --zone=dmz --add-service=http --permanent firewall-cmd --zone=dmz --add-service=https --permanent
Da der SSH-Port auf 7022 geändert wurde, werden wir den SSH-Dienst (Port 22) entfernen und Port 8888 öffnen
firewall-cmd --remove-service=ssh --permanent firewall-cmd --add-port=8888/tcp --permanent
Um die Änderungen zu implementieren, müssen wir die Firewall neu laden mit:
firewall-cmd --reload
Schließlich können Sie die Regeln auflisten mit:
### firewall-cmd --list-all dmz target: default icmp-block-inversion: no interfaces: sources: services: http https imap imaps pop3 pop3s smtp smtps ports: 7022/tcp protocols: masquerade: no forward-ports: sourceports: icmp-blocks: rich rules:
Schritt 4. Deaktivieren Sie die Firewall auf CentOS 7.
Sie können den FirewallD-Dienst mit dem folgenden Befehl vorübergehend stoppen:
sudo systemctl stop firewalld
Um die Firewall auf Ihrem CentOS 7-System dauerhaft zu deaktivieren, führen Sie die folgenden Schritte aus:
sudo systemctl disable firewalld
Ausgabe:
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Herzlichen Glückwunsch! Sie haben die Firewall erfolgreich konfiguriert. Vielen Dank, dass Sie dieses Tutorial zur Installation von FirewallD auf einem CentOS 7-System verwendet haben. Für zusätzliche Hilfe oder nützliche Informationen empfehlen wir Ihnen, die offizielle FirewallD-Website zu besuchen.