So beschränken Sie den Netzwerkzugriff mithilfe von FirewallD
Als Linux-Benutzer können Sie den Netzwerkzugriff auf einige Dienste oder IP-Adressen mithilfe der in CentOS/RHEL 8 und den meisten RHEL nativen Firewalld-Firewall entweder zulassen oder einschränken basierte Distributionen wie Fedora.
Die Firewall firewalld verwendet das Befehlszeilendienstprogramm firewall-cmd, um Firewallregeln zu konfigurieren.
Bevor wir Konfigurationen vornehmen können, aktivieren wir zunächst den Dienst firewalld mithilfe des Dienstprogramms systemctl wie gezeigt:
sudo systemctl enable firewalld
Nach der Aktivierung können Sie nun den firewalld-Dienst starten, indem Sie Folgendes ausführen:
sudo systemctl start firewalld
Sie können den Status von firewalld überprüfen, indem Sie den folgenden Befehl ausführen:
sudo systemctl status firewalld
Die folgende Ausgabe bestätigt, dass der firewalld-Dienst aktiv ist und ausgeführt wird.
Konfigurieren von Regeln mit Firewalld
Nachdem wir nun firewalld ausgeführt haben, können wir direkt mit der Vornahme einiger Konfigurationen beginnen. Firewalld ermöglicht Ihnen das Hinzufügen und Blockieren von Ports, Blacklist- und Whitelist-IP-Adressen, um den Zugriff auf den Server zu ermöglichen. Stellen Sie nach Abschluss der Konfigurationen immer sicher, dass Sie die Firewall neu laden, damit die neuen Regeln wirksam werden.
Hinzufügen eines TCP/UDP-Ports
Um einen Port hinzuzufügen, beispielsweise Port 443 für HTTPS, verwenden Sie die folgende Syntax. Beachten Sie, dass Sie nach der Portnummer angeben müssen, ob es sich bei dem Port um einen TCP- oder UDP-Port handelt:
sudo firewall-cmd --add-port=22/tcp --permanent
Um einen UDP-Port hinzuzufügen, geben Sie auf ähnliche Weise die UDP-Option wie gezeigt an:
sudo firewall-cmd --add-port=53/udp --permanent
Das Flag --permanent
stellt sicher, dass die Regeln auch nach einem Neustart bestehen bleiben.
Blockieren eines TCP/UDP-Ports
Um einen TCP-Port wie Port 22 zu blockieren, führen Sie den Befehl aus.
sudo firewall-cmd --remove-port=22/tcp --permanent
Ebenso folgt das Blockieren eines UDP-Ports derselben Syntax:
sudo firewall-cmd --remove-port=53/udp --permanent
Einen Dienst zulassen
Netzwerkdienste werden in der Datei /etc/services definiert. Um einen Dienst wie https zuzulassen, führen Sie den folgenden Befehl aus:
sudo firewall-cmd --add-service=https
Blockieren eines Dienstes
Um einen Dienst, zum Beispiel FTP, zu blockieren, führen Sie Folgendes aus:
sudo firewall-cmd --remove-service=https
Eine IP-Adresse auf die Whitelist setzen
Um eine einzelne IP-Adresse über die Firewall hinweg zuzulassen, führen Sie den folgenden Befehl aus:
sudo firewall-cmd --permanent --add-source=192.168.2.50
Sie können auch eine Reihe von IPs oder ein ganzes Subnetz zulassen, indem Sie eine CIDR-Notation (Classless Inter-Domain Routing) verwenden. Um beispielsweise ein gesamtes Subnetz im Subnetz 255.255.255.0 zuzulassen, führen Sie Folgendes aus.
sudo firewall-cmd --permanent --add-source=192.168.2.0/24
Entfernen einer IP-Adresse auf der Whitelist
Wenn Sie eine IP auf der Whitelist in der Firewall entfernen möchten, verwenden Sie das Flag --remove-source
wie gezeigt:
sudo firewall-cmd --permanent --remove-source=192.168.2.50
Führen Sie für das gesamte Subnetz Folgendes aus:
sudo firewall-cmd --permanent --remove-source=192.168.2.50/24
Blockieren einer IP-Adresse
Bisher haben wir gesehen, wie Sie Ports und Dienste hinzufügen und entfernen sowie IPs auf die Whitelist setzen und entfernen können. Um eine IP-Adresse zu blockieren, werden zu diesem Zweck „Rich Rules“ verwendet.
Um beispielsweise die IP 192.168.2.50 zu blockieren, führen Sie den folgenden Befehl aus:
sudo firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='192.168.2.50' reject"
Um das gesamte Subnetz zu blockieren, führen Sie Folgendes aus:
sudo firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='192.168.2.0/24' reject"
Firewall-Regeln speichern
Wenn Sie Änderungen an den Firewall-Regeln vorgenommen haben, müssen Sie den folgenden Befehl ausführen, damit die Änderungen sofort übernommen werden:
sudo firewall-cmd --reload
Anzeigen der Firewall-Regeln
Um einen Blick auf alle Regeln in der Firewall zu werfen, führen Sie den folgenden Befehl aus:
sudo firewall-cmd --list-all
Damit ist diese Anleitung zum Zulassen oder Einschränken des Netzwerkzugriffs mithilfe von FirewallD unter CentOS/RHEL 8 abgeschlossen. Wir hoffen, dass Sie diesen Leitfaden hilfreich fanden.