iptables-Generator
iptables-Generator: iptables-Regeln für eine Linux-Firewall zusammenklicken, mit SSH-Schutz, Diensten, ip6tables, NAT und Portweiterleitung.
Freigaben (Regeltabelle)
NAT und Portweiterleitung
Alles läuft in Ihrem Browser. Eingaben verlassen Ihr Gerät nicht.
So entsteht das Firewall-Skript
Der iptables-Generator erstellt aus wenigen Angaben ein Skript für eine einfache Linux-Firewall: eingehend alles sperren, was nicht ausdrücklich erlaubt ist, bestehende Verbindungen und Loopback zulassen, SSH optional mit Ratenbegrenzung über das Modul recent, dazu Ihre Dienste aus der Regeltabelle. Mehrere Ports pro Zeile wie 80,443 werden mit -m multiport zusammengefasst, Bereiche wie 6000:6010 direkt übernommen. Wer iptables-Regeln erstellen will, ohne jede Option nachzuschlagen, bekommt so einen lesbaren Ausgangspunkt.
Für IPv6 gibt es ein eigenes Regelwerk mit ip6tables. Wichtig: ICMPv6 darf dort nicht pauschal gesperrt werden, weil Nachbarerkennung und Path-MTU-Discovery davon abhängen; der Generator erlaubt die nötigen Typen. Unter „NAT und Portweiterleitung“ entsteht bei Bedarf iptables NAT mit MASQUERADE für ein internes Netz sowie eine Portweiterleitung mit iptables per DNAT samt passender FORWARD-Regel. Dafür muss IP-Forwarding mit sysctl -w net.ipv4.ip_forward=1 aktiv sein.
Testen Sie neue Regeln nie ohne Rückweg: Halten Sie eine zweite SSH-Sitzung offen oder planen Sie mit at now + 5 minutes ein Zurücksetzen ein. Viele aktuelle Distributionen nutzen intern nftables; dort ist iptables oft ein Kompatibilitätsbefehl. Eine native Konfiguration erzeugt der nftables-Generator, für Ubuntu ist der UFW-Regeln-Generator oft bequemer.
Anleitung: iptables-Generator in 4 Schritten
- Wählen Sie die Standardrichtlinie für eingehende Verbindungen und ob Loopback, bestehende Verbindungen und Ping erlaubt sind.
- Tragen Sie in der Regeltabelle die Dienste ein: Aktion, Port, Protokoll, Quelle und Kommentar; mit „Regel hinzufügen“ kommen weitere Zeilen dazu.
- Aktivieren Sie bei Bedarf NAT (Masquerade) mit dem Ausgangs-Interface und eine Portweiterleitung (DNAT).
- Kopieren Sie das Skript oder laden Sie es herunter und testen Sie es zuerst mit einer offenen zweiten SSH-Sitzung.
Typische Anwendungsfälle
- Ein frischer VPS soll nur SSH, HTTP und HTTPS annehmen und alles andere verwerfen.
- Ein Linux-Router teilt die Internetverbindung per Masquerade mit einem internen Netz.
- Ein Port des Routers wird per DNAT an einen Webserver im internen Netz weitergeleitet.
- Eine bestehende iptables-Konfiguration wird als Vorlage für die Übertragung nach nftables dokumentiert.
Häufige Fragen
Sperre ich mich mit DROP als Standardrichtlinie aus?
Nur wenn die SSH-Regel fehlt oder falsch ist. Das Skript setzt die Erlauben-Regeln vor die Richtlinie. Testen Sie trotzdem mit offener zweiter Sitzung oder über eine Konsole des Hosters.
Wie funktioniert die SSH-Ratenbegrenzung?
Das Modul recent merkt sich die Quell-IP neuer SSH-Verbindungen. Wer innerhalb von 60 Sekunden mehr als die eingestellte Zahl neuer Verbindungen aufbaut, wird verworfen. Für ausgefeilteren Schutz eignet sich zusätzlich fail2ban.
Warum braucht DNAT auch eine FORWARD-Regel?
DNAT ändert nur die Zieladresse in der Kette PREROUTING. Das Paket durchläuft danach die FORWARD-Kette, und wenn dort die Richtlinie DROP gilt, muss die Weiterleitung ausdrücklich erlaubt werden.
Was bedeutet ESTABLISHED,RELATED?
Die Regel erlaubt Pakete, die zu einer bereits erlaubten Verbindung gehören, etwa Antworten auf Ihre ausgehenden Anfragen. Ohne sie funktionieren auch DNS und Updates nach einer DROP-Richtlinie nicht mehr.
Wie mache ich iptables-Regeln nach einem Neustart dauerhaft?
Auf Debian und Ubuntu mit dem Paket iptables-persistent: iptables-save > /etc/iptables/rules.v4 und ip6tables-save > /etc/iptables/rules.v6. Auf RHEL-Systemen speichert der Dienst iptables-services nach /etc/sysconfig/iptables.
Was ist der Unterschied zwischen DROP und REJECT?
DROP verwirft Pakete still, der Absender wartet bis zum Timeout. REJECT antwortet mit einer Fehlermeldung, etwa ICMP port-unreachable oder einem TCP-Reset, und der Absender erfährt sofort, dass der Port gesperrt ist.
Das könnte auch helfen
Subnetz-Rechner
IPv4-Netz mit CIDR oder Maske: Netzadresse, Broadcast, Hostbereich, Wildcard und Aufteilung in Teilnetze.
ÖffnenIP in Binär umrechnen
IPv4-Adresse in Binär, Hex, Oktal und Ganzzahl umrechnen und zurück, mit markierten Netzbits.
ÖffnenIPv6 kürzen und erweitern
IPv6-Adressen nach RFC 5952 kürzen oder voll ausschreiben, Adresstyp und ip6.arpa-Name anzeigen.
ÖffnenCIDR-Rechner
IP-Bereiche in CIDR-Blöcke umrechnen und mehrere Netze zu möglichst wenigen Präfixen zusammenfassen.
ÖffnenMAC-Adresse prüfen
MAC-Adressen prüfen und umformatieren: Unicast oder Multicast, global oder lokal verwaltet, OUI, EUI-64.
ÖffnenURL-Parser
URL in Protokoll, Host, Port, Pfad, Query und Fragment zerlegen, Parameter dekodiert als Tabelle und JSON.
Öffnen