Wenn Sie eine Standard-Docker-basierte Discourse-Installation verwenden, schützen die folgenden Regeln der Uncomplicated Firewall alle Nicht-Docker-Dienste auf Ihrem Server:
ufw allow http
ufw allow https
ufw allow ssh
ufw enable
Das heißt, erlauben Sie HTTP (Port 80), HTTPS (Port 443) und SSH (Port 22) und nichts anderes.
Hinweis: Docker manipuliert
iptablesdirekt und umgeht ufw-Regeln. Das bedeutet, dass ufw den Zugriff auf Ports, die von Docker-Containern freigegeben werden (Port 80 und 443 bei einer Standard-Discourse-Installation), nicht blockieren oder einschränken kann. Die oben genannten ufw-Regeln schützen nur Nicht-Docker-Dienste, die auf Ihrem Host laufen.
Überprüfen Sie den aktuellen Status Ihrer Firewall mit
ufw status verbose
Beispielausgabe:
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
To Action From
-- ------ ----
80 ALLOW IN Anywhere
443 ALLOW IN Anywhere
22 ALLOW IN Anywhere
80 (v6) ALLOW IN Anywhere (v6)
443 (v6) ALLOW IN Anywhere (v6)
22 (v6) ALLOW IN Anywhere (v6)
Und wenn Sie sie jemals ausschalten möchten
ufw disable
Eine Standard-Docker-Installation von Discourse gibt nur die Ports 80 und 443 frei, daher ist eine Host-Firewall nicht unbedingt erforderlich. Wenn Sie jedoch andere Dienste auf dem Host ausführen, die auf zusätzlichen Ports lauschen, bietet eine Firewall eine zusätzliche Ebene der „Sicherheit mit doppelter Absicherung“ für diese Dienste.