Härtung mit iptables: Docker absichern wie Fort Knox

In einer Welt, in der offene Ports und unsichere Konfigurationen eine Einladung für Angreifer sind, braucht es eine stateful Firewall, die Docker nicht im Weg steht, aber dennoch kompromisslos Sicherheit bietet. Hier zeige ich, wie ich mein System mit iptables abgeriegelt habe, sodass sich Hacker die Zähne ausbeißen. Gleichzeitig bleibt Docker mit Traefik und dem File Provider voll funktionsfähig.

Warum eine stateful Firewall für Docker?

Docker setzt standardmäßig eigene iptables-Regeln, die manchmal zu vielen offenen Ports führen. Eine stateful Firewall stellt sicher, dass:

* Nur explizit erlaubte Verbindungen durchkommen.
* Docker-Container nach außen kommunizieren können, aber nicht von außen erreichbar sind.
* Nur Traefik als Reverse Proxy Ports freigibt, aber keine anderen Container direkt exponiert werden.
* SSH nur über einen individuellen Port erreichbar ist (hier: 6XXXX, nur per Private Key).

iptables: Stateful Firewall mit Default-Drop-Policy
Alles, was nicht explizit erlaubt wird, wird verworfen:

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

Erlaubte Verbindungen definieren

iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --dport 6XXXX -j ACCEPT  # SSH
iptables -A INPUT -p tcp --dport 80 -j ACCEPT     # HTTP
iptables -A INPUT -p tcp --dport 443 -j ACCEPT    # HTTPS

Docker-spezifische Regeln

iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -o docker0 -m conntrack --ctstate NEW -j ACCEPT

Damit nur Traefik mit externem Netzwerk kommunizieren darf, ohne dass Container direkt erreichbar sind:

iptables -A INPUT -i docker0 -j DROP
iptables -A INPUT -i br-+ -j DROP

Fazit: Docker sicher betreiben

🔥 Stateful Firewall mit iptables → Nur erlaubter Traffic kommt durch
🔐 SSH nur über individuellen Port mit Key-Auth
🌍 Traefik mit File Provider → Keine unkontrollierten offenen Ports
🛡️ Externe Scanner sehen nur das, was sie sollen!

Das ist Docker Security auf Fort-Knox-Niveau. Wer das nachmacht, kann sich entspannt zurücklehnen – Hacker müssen draußen bleiben! 😎

Posted in Server