Jag_cz - Fotolia

Uncomplicated Firewall: Linux mit UFW und Gufw absichern

Uncomplicated Firewall (UFW) hilft dabei, iptables unter Linux im Terminal zu steuern. Mit Gufw gibt es für UFW auch eine grafische Oberfläche, mit der das noch einfacher geht.

Wer die Linux-Firewall konfiguriert, findet mit Uncomplicated Firewall (UFW) eine gute Erweiterung, die dabei hilft Regeln im Terminal einfach zu steuern. Zusätzlich lässt sich noch Gufw unter Ubuntu installieren. Dabei handelt es sich um eine grafische Oberfläche für UFW, um wiederum iptables zu steuern.

Für die Konfiguration der Linux-Firewall mit UFW und Gufw sind Root-Rechte notwendig. Damit Sie Änderungen durchführen können, müssen Sie also mit Sudo arbeiteten. Beim Öffnen von Gufw ist das Kennwort eines Admin-Benutzers einzugeben.

UFW und Gufw installieren sowie aktivieren

Bei Ubuntu ist UFW automatisch auf dem System installiert. Ist das nicht der Fall, können Sie UFW und Gufw auf einmal installier:

sudo apt-get install ufw gufw

Wird für die Verwaltung der Firewall auch Gufw installiert, ist das Programm Firewall-Konfiguration bei den installierten Tools zu finden. Wird das Programm gestartet, dann ist auch gleich zu sehen ob die Firewall auf dem System aktiv ist oder nicht.

Abbildung 1: Überprüfen und aktivieren der Linux-Firewall mit UFW und Gufw.
Abbildung 1: Überprüfen und aktivieren der Linux-Firewall mit UFW und Gufw.

Im Terminal können Sie den Status der lokalen Linux-Firewall nach der Installation von UFW mit dem folgenden Befehl überprüfen:

sudo ufw status

Wenn die Firewall nicht aktiv ist, lässt sie sich mit dem folgenden Befehl schnell und einfach starten:

sudo ufw enable

Deaktivieren lässt sich die Firewall mit

sudo ufw disable

Regeln für iptables erstellen

Mit UFW und Gufw können Anwender und Administratoren einfacher Regeln für iptables erstellen. Dabei gibt es mehrere Möglichkeiten, die einfachste davon sind sicherlich Gufw und der Menüpunkt Regeln. Standardmäßig sind keine Regeln definiert. Um in Gufw eine neue Regel zu erstellen, stehen im unteren Bereich die Icons für das Erstellen, Löschen und Bearbeiten von Regeln zur Verfügung.

Für das Erstellen von Regeln gibt es drei verschiedene Menüs: Vorkonfiguriert hilft dabei, Standardregeln schnell und einfach zu erstellen. Mit Einfach lassen sich benutzerdefinierte Regeln konfigurieren. Mit Erweitert können Sie umfassende Regeln erstellen, ohne sich mit den Optionen aus dem Terminal auseinandersetzen zu müssen.

Abbildung 2: Erstellen von Firewall-Regeln in Gufw.
Abbildung 2: Erstellen von Firewall-Regeln in Gufw.

Um Linux-Firewallregeln mit UFW im Terminal zu erstellen, stehen ebenfalls einfache Möglichkeiten zur Verfügung, da die Syntax von UFW genutzt werden kann. Soll zum Beispiel SSH erlaubt sein, können Sie das mit folgender Syntax konfigurieren:

ufw allow ssh/tcp

Durch den Befehl werden die entsprechenden Ports automatisch ausgewählt.

Firewall-Regeln im Terminal und der grafischen Oberfläche verwalten

UFW erkennt die Dienste in Linux, die in etc/service aufgelistet sind und kann Firewall-Regeln auf deren Basis erstellen. Dazu ist auch Gufw in der Lage. UFW unterstützt dazu Anwendungsprofile und kann für bekannte Anwendungen automatisch entsprechende Ports und Konfigurationen freischalten. Alle bekannten Anwendungen können Sie mit dem folgenden Befehl anzeigen:

Ufw app list

Um sich genauere Informationen zu sehen, können Sie sich auch die Details eines Profils anzeigen lassen:

ufw app info Postfix

Natürlich können Sie für das Erstellen von Regeln auch direkt die Ports verwenden, zum Beispiel mit:

ufw allow 22/tcp

Soll in diesem Beispiel in UFW der Zugriff per SSH nur von einer einzelnen IP-Adresse erlaubt sein, können Sie das auch im Terminal steuern:

ufw allow from 192.168.178.15 port 22

Umgekehrt lassen sich auch einzelne IP-Adresse komplett blockieren:

ufw deny from 10.0.0.0

Neben TCP-Regeln können Sie welche für UDP anlegen. Dazu ist beim Erstellen die Option <Port>/udp zu verwenden. Erfolgt keine Angabe, legt UFW die Regeln für TCP und UDP an.

Die erstellten Regeln erscheinen natürlich auch in der grafischen Oberfläche. Diese muss allerdings in den meisten Fällen neu gestartet werden, damit sie die Regeln aus Linux einlesen kann. Regeln lassen sich also in UFW und Gufw erstellen und auf beiden Seiten auch bearbeiten.

Abbildung 3: Firewall-Regeln in UFW und Gufw erstellen und verwalten.
Abbildung 3: Firewall-Regeln in UFW und Gufw erstellen und verwalten.

Regeln überprüfen und löschen

Um sich die aktuellen Regeln im Terminal anzuzeigen, verwenden Sie den folgende Befehl:

Ufw status

Die Regeln werden im System nummeriert. Um sich die Nummern anzeigen zu lassen, verwebnden Sie diesen Befehl:

Ufw status numbered

Über die ID einer Regel kann diese auch wieder gelöscht werden. Dazu verwenden Sie diesen Befehl:

Ufw delete <Nummer>

Abbildung 4: Verwalten der Firewall-Regeln.
Abbildung 4: Verwalten der Firewall-Regeln.

Um Regeln ohne Nummer zu löschen, wird die Syntax ufw delete allow <Port> oder ufw delete deny <Port> verwendet.

UFW hilft auch bei der Abwehr von Angriffen, zum Beispiel von Brute-Force-Attacken. Dazu lassen sich die Verbindungen limitieren. Im folgenden Befehl werden beispielsweise zu viele Verbindungsversuche blockiert, die mit SSH aufgebaut werden sollen:

ufw limit ssh/tcp

Der Befehl blockiert Verbindungen, wenn mehr als sechs Verbindungsversuche innerhalb von 30 Sekunden aufgebaut werden sollen. Auch hier lässt sich der Status wieder mit ufw status anzeigen.

Abbildung 5: Anzeigen und Löschen von Firewall-Regeln.
Abbildung 5: Anzeigen und Löschen von Firewall-Regeln.

Für das Zurücksetzen der gesamten Firewall ist dieser Befehl vorhanden:

ufw reset

Um dabei auch alle iptables-Chains zu löschen, ist noch das folgende Kommando notwendig:

/lib/ufw/ufw-init flush-all

Dabei wird die Firewall auch deaktiviert. Um sie wieder zu aktivieren, verwenden Sie diesen Befehl:

sudo ufw enable

Firewall-Protokolle auslesen

Um das Protokoll der Firewall anzuzeigen, nutzen Sie entweder den Menüpunkt Protokoll in Gufw oder die Datei /var/log/ufw.log. Die Protokollierung wird mit ufw logging on aktiviert und mit ufw logging off deaktiviert. Damit die Protokollierung eingestellt werden kann, muss die Firewall deaktiviert sein. Das lässt sich zum Beispiel mit ufw disable durchführen. Aktiviert wird die Firewall wieder mit ufw enable.

Nächste Schritte

Mehr als Servermanagement: Weitergehende Linux-Funktionen

Linux-Server-Distributionen für das Data Center

Linux-Desktops im Unternehmen

Erfahren Sie mehr über Netzwerksicherheit