HOME

Wiki: Linux Programme: ufw(Universal Firewall)

ufw stellt eine Variation für die Konfiguration einer Firewall bereit.
Es ist in den allgemeinen Paketquellen vorhanden und kann leicht installiert werden:
# apt-get install ufw

WARNUNG

Falsche Konfiguration von ufw kann Störungen hevorrufen:
*Unerreichbarkeit des Servers(SSH nicht freigegeben in der Firewall)
*Updates können nicht mehr gefunden werden(apt ausgesperrt?!)
*Spielserver senden keine Statistik/werden nicht mehr auffindbar für andere sein

ufw zurücksetzen

Zuerst sicherstellen, das die Firewall deaktiviert wird, damit der Zugriff via SSH bestehen bleibt:
# ufw disable
->Firewall wird deaktiviert UND auch beim einem Serverneustart nicht mehr mitgestartet.

Die Firewall komplett resetten(auf Defaulteinstellungen stellen):
# ufw reset

In der Regel sollte eine Firewall AUSGEHENDE Daten immer zulassen, eingehende nach nur nach Bedarf freigeben.
# ufw default deny incoming
# ufw default allow outgoing

Der SSH-Server MUSS natürlich von außen zugreifbar bleiben:
# ufw allow OpenSSH
(# ufw allow 22 erlaubt auch Port22(SSH) schreibt aber eine eigene Regel in die Firewall, was etwas verwirren kann. Dann lieber OpenSSH bzw. SSH anstelle von der Portnummer nutzen)

Man kann die Regeln auch gezielt wieder löschen:
# ufw delete allow OpenSSH

Und die Firewall (mit Sicherheitsabfreag) aktivieren:
#ufw enable

Alternativ für Scripte: Die Firewall (OHNE Sicherheitsabfreag) aktivieren:
# ufw --force enable

->In beiden Fällen wird die Firewall aktiviert UND auch beim jedem Serverneustart mitgestartet.

ACHTUNG! Ab jetzt sind ALLE anderen Dienste gesperrt!!
Sicherheitshalber testen, ob man sich mit noch mit dem Server via SSH verbinden kann.

Ist was schiefgelaufen und kann sich nicht verbinden die Firewall(in einer noch bestehenden SSH Sitzung) abschalten:
# ufw disable
->Firewall wird deaktiviert UND auch beim einem Serverneustart nicht mehr mitgestartet.

Befehlsoptionen

Vordefinierte Regeln anzeigen:
# ufw app list

Beachten, das diese Regeln in der Grundeinstellung für BEIDE Internetprotkolle(IP4 UND IP6) gesetzt werden.


Anzeigen welche Ports in der Firewall geöffnet sind(nur wenn ufw enabled wurde!):
# ufw status

Anzeigen welche Ports in der Firewall geöffnet sind(zeigt ETWAS mehr)(nur wenn ufw enabled wurde!):
# ufw status verbose
Regeln:
# ufw deny from {ip-address-here} to any
Droppt alle Pakete von der angegebene IP-Adresse kommentarlos

ufw reject from {ip-address-here} to any Weist alle Pakete von der angegebene IP-Adresse(sendet reject)

Ganze Portbereiche(dann jeweils mit udp bzw. tcp):
# ufw allow 6000:6010/udp # ufw allow 6000:6010/tcp
Fehlerhafte Pakete etc. loggen:
# ufw logging low
# ufw logging medium
# ufw logging high
Geloggt wird nach /var/log/syslog, /var/log/messages und /var/log/kernel

Passt man die Datei /etc/rsyslog.d/xx-default.conf etwas an sollten die Meldungen NUR noch in /var/log/ufw.log landen:
:msg, contains, “UFW” -/var/log/ufw.log
& ~
Leider werden auch von geblockten IPs Verbindungsversuche weiterhin protokolliert.

Eigene Konfigurationen speichern:
Man kann unter /etc/ufw/applications.d eigene Konfigurationen ablegen:
/etc/ufw/applications.d/steam (Dateiname kleingeschrieben ohne Erweiterung).
Hier könnte nun folgendes stehen:
[Steam DGST]
title=Steam dedicated game server traffic
description=Steam dedicated game server traffic
ports=27015/udp

[Steam SRCDS]
title=Steam dedicated game server (Rcon)
description=Steam dedicated game server (Rcon)
ports=27015/tcp

Wobei Steam Query wegen des Leerzeichens mit Anführungszeichen eingegeben werden muss:
# ufw allow "Steam Query"

title ist ein kurzer Titel und description die längere Beschreibung, wenn nötig. Sind aber meist identisch.

Bei ports können auch mehrere Ports angegeben werden:
ports=2049,111/tcp|2049,111/udp
ports=137,138/udp|139,445/tcp

oder ganze Bereiche:
ports=1863|6891:6900/tcp|6901

Diese Seite wurde zuletzt am 20.07.2020 um 19:52 geändert.

(c) 2024 DHLF ☮🇺🇦