Diese Anleitung erklärt, wie Sie eine sichere "Default-Deny" Firewall-Strategie mithilfe von iptables auf Ihrem Linux-Server implementieren. Diese Methode blockiert jeglichen Datenverkehr, sofern er nicht explizit erlaubt wird.
Warnung: Die Reihenfolge dieser Befehle ist kritisch. Das Ausführen der finalen DROP-Richtlinie vor dem Erlauben des SSH-Zugriffs führt sofort zu einem Ausschluss (Lockout) von Ihrem Server. Testen Sie Regeln stets sorgfältig.
Wir konfigurieren zuerst die notwendigen Zugriffe, bevor die globale Blockierungsregel angewandt wird.
Beginnen Sie mit einer sauberen Konfiguration, indem Sie alle bestehenden iptables-Regeln löschen.
Fügen Sie Regeln für alle Dienste hinzu, die von außen erreichbar sein müssen. Für eine bessere Wartbarkeit empfiehlt sich die Nutzung von benutzerdefinierten Chains.
Um die INPUT-Kette übersichtlich zu halten, erstellen Sie eine eigene Kette für offene Ports und leiten den Verkehr dorthin um.
Integrieren Sie einen Basisschutz gegen Floods und stellen Sie das Logging fehlerhafter Pakete sicher.
Begrenzt die Rate neuer Verbindungen pro Quell-IP, um einfache Floods auf einen bestimmten Port zu mitigieren.
Iptables-Regeln sind nach der Eingabe temporär und gehen nach einem Neustart verloren. Sie müssen permanent gespeichert werden.
Überprüfen Sie vor dem Speichern, ob alle Regeln korrekt in der Kette eingefügt wurden.
Alternative nftables: Auf modernen Distributionen wird iptables durch nftables abgelöst. Sollten Sie ein sehr komplexes Regelwerk benötigen, ist ein Umstieg auf nftables für die Zukunftssicherheit empfehlenswert.