Wie kann ich iptables im Discourse-Docker-Container konfigurieren?
Ich benötige speziell die Firewall-Steuerung innerhalb des Docker-Containers, da ich bedingte Regeln basierend auf der Benutzer-ID hinzufügen möchte.
Anfangs habe ich jeglichen Internetzugriff für den Docker-Container komplett blockiert (dies ist möglich, wenn Sie web.socketed.template.yml verwenden, da Nginx über Unix-Domain-Sockets anstelle des Netzwerks kommuniziert) mittels dockerd ... --iptables=false.
[root@osestaging1 templates]# grep ExecStart /usr/lib/systemd/system/docker.service
#ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --iptables=false
[root@osestaging1 templates]#
…aber mir ist aufgefallen, dass der Docker-Container zumindest Internetzugriff haben sollte, damit er sein Basis-Betriebssystem (derzeit Debian 10) mit kritischen Sicherheitsupdates über unattended-upgrades aktualisieren kann. Daher möchte ich lieber nur root und apt Internetzugriff gewähren und alles andere über iptables blockieren, das innerhalb des Discourse-Docker-Containers ausgeführt wird.