UFW installieren: So richten Sie eine grundlegende Firewall unter Linux ein
UFW (Uncomplicated Firewall) vereinfacht die Verwaltung der Linux-Firewall, indem es eine benutzerfreundliche Oberfläche für iptables bereitstellt. Dieser Leitfaden behandelt die Installation und Konfiguration von UFW auf Debian-basierten Distributionen, von der grundlegenden Einrichtung bis hin zu praktischen Firewall-Konfigurationen für Desktops und Webserver.
In diesem Tutorial lernen Sie:
- Wie man UFW auf Debian-basierten Distributionen installiert
- So konfigurieren Sie Standard-Firewall-Richtlinien
- So erlauben und blockieren Sie den Datenverkehr nach Dienst, Port und IP
- Wie man UFW-Anwendungsprofile verwendet
- Wie man Firewall-Regeln für Desktops und Server einrichtet
Zusammenfassung des Artikels: Installieren Sie UFW mit sudo apt install ufw, konfigurieren Sie dann die Standardrichtlinien und aktivieren Sie die Firewall.
| Schritt | Befehl/Aktion |
|---|---|
| 1. UFW installieren | |
| 2. Standardrichtlinien festlegen | sudo ufw standardmäßig eingehend verweigernsudo ufw standardmäßig ausgehend zulassen |
| 3. SSH-Zugriff erlauben | |
| 4. Firewall aktivieren | |
UFW installieren
UFW ist in den Standard-Repositories von Debian-basierten Distributionen verfügbar. Installieren Sie es mit dem Paketmanager apt:
$ sudo apt install ufw
Nach der Installation ist UFW standardmäßig inaktiv. Dies ermöglicht es Ihnen, Ihre Regeln zu konfigurieren, bevor Sie die Firewall aktivieren, und verhindert versehentliche Aussperrungen von entfernten Systemen.
Ihre Standardeinstellungen festlegen
Wie bei iptables ist es am besten, zunächst Ihr Standardverhalten festzulegen. Auf Desktops möchten Sie normalerweise eingehenden Verkehr blockieren, während ausgehende Verbindungen erlaubt werden.
$ sudo ufw default deny incomingDie Syntax zum Zulassen von Datenverkehr ist ähnlich:
$ sudo ufw default allow outgoingDiese Standardeinstellungen stellen sicher, dass unerwünschte eingehende Verbindungen blockiert werden, während Ihr System weiterhin auf das Internet und externe Dienste zugreifen kann.
Grundlegende Verwendung
Jetzt sind Sie bereit, Regeln einzurichten und Ihre Firewall zu verwalten. UFW-Befehle sind so gestaltet, dass sie lesbar und intuitiv sind.
Starten und Stoppen
Während Sie systemd zur Steuerung von UFW verwenden können, hat es eigene Steuerungen, die einfacher sind. Beginnen Sie damit, UFW zu aktivieren:
$ sudo ufw enableWARNUNG
Wenn Sie über SSH verbunden sind, stellen Sie sicher, dass Sie den SSH-Verkehr zulassen, bevor Sie UFW aktivieren, oder Sie könnten den Zugriff auf Ihr System verlieren.
Um UFW beim Start anzuhalten und zu deaktivieren:
$ sudo ufw disableÜberprüfen Sie, ob UFW läuft, und sehen Sie sich die aktiven Regeln an:
$ sudo ufw statusFür detailliertere Ausgaben einschließlich Regelnummern:
$ sudo ufw status numberedBefehle
Erlaube eingehenden HTTP-Verkehr unter Verwendung des Servicenamens:
$ sudo ufw allow http
SSH-Verbindungen zulassen:
$ sudo ufw allow sshSie können dasselbe Ergebnis mithilfe von Portnummern erzielen. Dieser Befehl erlaubt eingehenden HTTPS-Verkehr auf Port 443:
$ sudo ufw allow 443Erlauben Sie den Datenverkehr von einer bestimmten IP-Adresse oder einem bestimmten Netzwerkbereich. Dieses Beispiel erlaubt den gesamten Datenverkehr aus dem lokalen Netzwerk:
$ sudo ufw allow from 192.168.1.0/24Für eine Reihe von Ports geben Sie das Protokoll an (TCP oder UDP):
$ sudo ufw allow 56881:56889/tcpVerwenden Sie deny statt allow, um den Datenverkehr zu blockieren:
$ sudo ufw deny from 192.168.1.110Um speziell ausgehende Verbindungen anzusprechen, fügen Sie out hinzu:
$ sudo ufw allow out sshUm eine Regel zu löschen, verwenden Sie die Regelnummer aus ufw status numbered:
$ sudo ufw delete 3UFW-Anwendungsprofile
UFW enthält Anwendungsprofile, die Firewall-Regeln für gängige Dienste definieren. Diese Profile vereinfachen die Konfiguration, indem sie Port- und Protokolleinstellungen unter verständlichen Anwendungsnamen zusammenfassen.
Verfügbare Anwendungsprofile auflisten:
$ sudo ufw app listDetails zu einem bestimmten Anwendungsprofil anzeigen:
$ sudo ufw app info OpenSSH
Dies zeigt die Ports und Protokolle an, die die Anwendung verwendet. Um einer Anwendung den Zugriff durch die Firewall zu erlauben:
$ sudo ufw allow OpenSSHÜbliche Anwendungsprofile umfassen OpenSSH, Apache, Apache Full, Nginx Full und andere, abhängig von der installierten Software. Anwendungsprofile werden in /etc/ufw/applications.d/ gespeichert und Sie können benutzerdefinierte Profile für Ihre eigenen Anwendungen erstellen.
Einrichten eines Desktops
Dieses Beispiel bietet einen Ausgangspunkt für eine grundlegende Desktop-Firewall-Konfiguration. Passen Sie die Regeln an Ihre spezifischen Bedürfnisse an.
Beginnen Sie damit, die Standardeinstellungen festzulegen:
$ sudo ufw default deny incoming
$ sudo ufw default allow outgoingErlaube HTTP- und HTTPS-Verkehr für das Surfen im Web:
$ sudo ufw allow http
$ sudo ufw allow httpsSSH-Zugang aktivieren:
$ sudo ufw allow sshNTP für die Systemzeitsynchronisation zulassen:
$ sudo ufw allow ntpEs sei denn, Sie verwenden eine statische IP, erlauben Sie DHCP auf den Ports 67 und 68:
$ sudo ufw allow 67:68/udpDNS-Verkehr für die Domainnamenauflösung zulassen:
$ sudo ufw allow 53Für Torrent-Clients wie Deluge:
$ sudo ufw allow 56881:56889/tcpSteam benötigt mehrere Ports:
$ sudo ufw allow 27000:27036/udp
$ sudo ufw allow 27036:27037/tcp
$ sudo ufw allow 4380/udpEinrichten eines Webservers
Webserver erfordern eine restriktivere Konfiguration, um die Angriffsfläche zu minimieren und gleichzeitig den legitimen Datenverkehr ungehindert fließen zu lassen.
Für Server standardmäßig den gesamten Datenverkehr blockieren. Deaktivieren Sie die Firewall, bevor Sie diese Änderungen vornehmen, um den Verlust des SSH-Zugriffs zu vermeiden:
$ sudo ufw default deny incoming
$ sudo ufw default deny outgoing
$ sudo ufw default deny forwardAktivieren Sie sowohl eingehenden als auch ausgehenden Webverkehr:
$ sudo ufw allow http
$ sudo ufw allow out http
$ sudo ufw allow https
$ sudo ufw allow out httpsSSH für die Fernverwaltung erlauben:
$ sudo ufw allow ssh
$ sudo ufw allow out sshNTP zur Zeitsynchronisation aktivieren:
$ sudo ufw allow ntp
$ sudo ufw allow out ntpDNS für Paketaktualisierungen und Domänenauflösung erlauben:
$ sudo ufw allow 53
$ sudo ufw allow out 53Fazit
UFW bietet einen einfachen Ansatz zur Verwaltung von Firewalls auf Linux-Systemen. Trotz seiner Einfachheit ist UFW produktionsbereit, da es als Frontend für iptables fungiert und dieselbe robuste Sicherheit bietet. Die Beispiele in diesem Handbuch decken gängige Desktop- und Serverkonfigurationen ab, aber Sie sollten die Regeln basierend auf Ihren spezifischen Anforderungen und Ihrer Netzwerkkonfiguration anpassen. Für umfassende Dokumentation konsultieren Sie bitte das offizielle UFW-Handbuch (manpage).
Häufig gestellte Fragen
- Wie überprüfe ich, ob UFW eine bestimmte Verbindung blockiert? Verwenden Sie
sudo ufw status verbose, um alle aktiven Regeln und deren Richtlinien zu sehen. Sie können auch die UFW-Protokolle unter/var/log/ufw.logauf blockierte Verbindungsversuche überprüfen. Aktivieren Sie die Protokollierung mitsudo ufw logging on, falls sie nicht bereits aktiv ist. - Kann ich UFW auf den Standardzustand zurücksetzen? Ja, führen Sie
sudo ufw resetaus, um alle Regeln zu entfernen und die Firewall zu deaktivieren. Dies setzt UFW auf den ursprünglichen Zustand nach der Installation zurück, was nützlich ist, wenn Sie Konfigurationsfehler gemacht haben und neu beginnen möchten. - Was ist der Unterschied zwischen ufw allow und ufw limit? Der
allow-Befehl erlaubt allen passenden Datenverkehr, währendlimiteine Ratenbegrenzung hinzufügt, um Brute-Force-Angriffe zu verhindern. Zum Beispiel erlaubtsudo ufw limit sshSSH-Verbindungen, blockiert jedoch eine IP-Adresse, die mehr als 6 Verbindungen innerhalb von 30 Sekunden versucht. - Bleibt UFW nach einem Neustart bestehen? Ja, sobald es mit
sudo ufw enableaktiviert wurde, startet UFW automatisch beim Booten und lädt Ihre gespeicherten Regeln. Die Regeln werden in/etc/ufw/gespeichert und bleiben ohne zusätzliche Konfiguration über Neustarts hinweg bestehen.
