Zum Hauptinhalt springen

VPS: Firewall unter Linux verwalten

Die Anleitung wurde mit folgenden Produkten erstellt:

(Einzelheiten können sich bei Produkten anderer Anbieter unterscheiden, die Grundkonzepte bleiben in der Regel unverändert)

Einführung

Für viele Dienste und Programme musst du externe Verbindungen erlauben. Das ist durch das Einrichten einer Firewall möglich. In dieser Anleitung lernst du, wie du eine Firewall einrichtest und diese Verbindungen erlaubst.

Vorbereitung

Um die Firewall zu installieren, musst du dich per SSH mit deinem Server verbinden. Falls du nicht weißt wie, schau dir unsere Erstzugriff via SSH Anleitung an. Nachdem du verbunden bist, solltest du den Server mit apt update und apt upgrade aktualisieren.

Nutzung von UFW (Einfach)

Es gibt mehrere Firewall-Programme für Linux, aber in dieser Anleitung konzentrieren wir uns auf die zwei beliebtesten: UFW und IPTables. Wir starten mit UFW, da es einfacher einzurichten und zu verwalten ist.

UFW installieren

Du kannst UFW ganz einfach mit APT installieren: sudo apt install ufw. Damit du die SSH-Verbindung nicht verlierst, solltest du UFW noch nicht aktivieren, zuerst musst du es einrichten.

UFW einrichten

Wir empfehlen, die folgenden Standardrichtlinien zu setzen:

sudo ufw default deny incoming und sudo ufw default allow outgoing

Jetzt solltest du die SSH-Verbindung und alle anderen Ports, die du öffnen möchtest, erlauben:

sudo ufw allow 22 für SSH

sudo ufw allow 80 Beispiel für HTTP

sudo ufw allow 25565 Beispiel für einen Minecraft-Server

Um UFW zu aktivieren, führe sudo ufw enable aus.

Du kannst jederzeit weitere Ports öffnen mit sudo ufw allow PORT

Portweiterleitungen hinzufügen

Um einen Port weiterzuleiten, kannst du einfach diesen Befehl verwenden:

Für TCP-Ports:

sudo ufw allow PORT/tcp wobei PORT durch den gewünschten Port ersetzt wird.

Beispiel: sudo ufw allow 25565/tcp für einen Minecraft-Server

Für UDP-Ports:

sudo ufw allow PORT/udp wobei PORT durch den gewünschten Port ersetzt wird.

Beispiel: sudo ufw allow 9987/udp für einen TeamSpeak-3-Server

Portweiterleitungen auflisten und entfernen

Um alle Port-Regeln anzuzeigen, kannst du sudo ufw status numbered ausführen. Wenn du eine Regel entfernen willst, nutze sudo ufw delete NUMBER – wobei NUMBER der Regelnummer in der Liste entspricht.

IPTables installieren (Fortgeschritten)

Die meisten Systeme beinhalten IPTables bereits standardmäßig, aber zur Sicherheit kannst du sudo apt install iptables ausführen.

IPTables einrichten

Zuerst setzt du die Standardrichtlinien:

sudo iptables -P INPUT DROP um alle eingehenden Verbindungen zu blockieren

sudo iptables -P FORWARD DROP um alle Weiterleitungen zu blockieren

sudo iptables -P OUTPUT ACCEPT um alle ausgehenden Verbindungen zu erlauben

sudo iptables -A INPUT -i lo -j ACCEPT um die Loopback-Schnittstelle zu erlauben

sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT um bestehende Verbindungen zu erlauben

Jetzt solltest du die SSH-Verbindung und alle weiteren benötigten Ports erlauben:

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT für SSH

sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT Beispiel für HTTP

sudo iptables -A INPUT -p tcp --dport 25565 -j ACCEPT Beispiel für einen Minecraft-Server

Dann musst du die Regeln persistent machen, damit sie auch nach einem Neustart aktiv bleiben. Installiere das IPTables-Persistent-Paket mit sudo apt install iptables-persistent.

Anschließend speichere die Regeln mit sudo netfilter-persistent save. Und aktiviere den Autostart mit sudo systemctl enable netfilter-persistent.

Portweiterleitungen hinzufügen

Um einen Port weiterzuleiten, kannst du einfach diesen Befehl verwenden:

Für TCP-Ports:

sudo iptables -A INPUT -p tcp --dport PORT -j ACCEPT wobei PORT durch den gewünschten Port ersetzt wird.

Beispiel: sudo iptables -A INPUT -p tcp --dport 25565 -j ACCEPT für einen Minecraft-Server

Für UDP-Ports:

sudo iptables -A INPUT -p udp --dport PORT -j ACCEPT wobei PORT durch den gewünschten Port ersetzt wird.

Beispiel: sudo iptables -A INPUT -p udp --dport 9987 -j ACCEPT für einen TeamSpeak-3-Server

Portweiterleitungen auflisten und entfernen

Du kannst alle Regeln mit folgendem Befehl anzeigen: sudo iptables -L --line-numbers. Wenn du eine Regel entfernen willst, nutze sudo iptables -D INPUT NUMBER wobei NUMBER der Nummer aus der Liste entspricht, die du entfernen willst.

Abschluss

Du hast erfolgreich eine Firewall auf deinem Linux-Server installiert und deine eigenen Port-Regeln erstellt. Du kannst diese Anleitung auch nutzen, um weitere Ports weiterzuleiten. Für weitere Fragen oder Unterstützung steht dir unser Support-Team jederzeit zur Verfügung! 🙂