Security-Checks¶
Systematische Überprüfung aller implementierten Sicherheitsmaßnahmen.
1. SSH-Konfiguration testen¶
Root-Login (muss fehlschlagen)¶
Erwartetes Ergebnis:
Check bestanden
Wenn du Permission denied siehst, ist Root-Login korrekt
deaktiviert.
Passwort-Login (muss fehlschlagen)¶
ssh -o PreferredAuthentications=password \
-o PubkeyAuthentication=no \
DEIN_USERNAME@DEINE_SERVER_IP
Erwartetes Ergebnis:
Key-Login (muss funktionieren)¶
Erwartetes Ergebnis: Erfolgreicher Login ohne Passwortabfrage.
SSH-Konfiguration anzeigen¶
# Auf dem Server
sudo sshd -T | grep -E "(permitrootlogin|passwordauthentication|pubkeyauthentication)"
Erwartete Ausgabe:
2. Firewall-Status prüfen¶
UFW-Status¶
Erwartete Ausgabe:
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
To Action From
-- ------ ----
22/tcp LIMIT IN Anywhere
80/tcp ALLOW IN Anywhere
443/tcp ALLOW IN Anywhere
Port-Scan durchführen¶
Nur eigene Server scannen!
Port-Scans auf fremde Server sind illegal.
Von einem anderen System aus:
Erwartete Ausgabe (nur offene Ports):
Alle anderen Ports sollten filtered oder nicht aufgelistet sein.
Von innen offene Ports prüfen¶
Vergleiche mit der Firewall-Konfiguration. Interne Ports (z.B. Datenbanken) sollten nur auf
127.0.0.1 oder Docker-Netzwerken lauschen.
3. Fail2Ban prüfen¶
Status¶
Funktion testen¶
Nicht von deiner eigenen IP testen!
Du könntest dich aussperren.
Von einer Test-IP (z.B. VPN):
# Mehrere fehlgeschlagene Login-Versuche
for i in {1..5}; do
ssh invalid_user@DEINE_SERVER_IP 2>/dev/null
done
Auf dem Server prüfen:
Whitelist prüfen¶
Deine IP sollte in der Liste sein.
4. SSL/TLS prüfen¶
Zertifikat-Details¶
echo | openssl s_client -connect coolify.fcl-tech.de:443 2>/dev/null | \
openssl x509 -noout -text | \
grep -E "(Issuer|Subject|Not Before|Not After)"
Zertifikat-Ablaufdatum¶
SSL Labs Test¶
Besuche: https://www.ssllabs.com/ssltest/
Ziel: A oder A+
Ein Rating unter B deutet auf Konfigurationsprobleme hin.
TLS-Version prüfen¶
# TLS 1.2 testen
openssl s_client -connect coolify.fcl-tech.de:443 -tls1_2 </dev/null 2>/dev/null | \
grep "Protocol"
# TLS 1.1 testen (sollte fehlschlagen)
openssl s_client -connect coolify.fcl-tech.de:443 -tls1_1 </dev/null 2>/dev/null | \
grep "Protocol"
HSTS-Header prüfen¶
Erwartete Ausgabe:
5. Docker-Sicherheit prüfen¶
Docker-Daemon-Konfiguration¶
Prüfe ob no-new-privileges und icc: false gesetzt sind.
Docker-Socket-Berechtigungen¶
Sollte zeigen: srw-rw---- 1 root docker
6. System-Sicherheit prüfen¶
Laufende Dienste¶
Prüfe auf unbekannte oder nicht benötigte Dienste.
Offene Ports von innen¶
Installierte Pakete mit Security-Updates¶
Kernel-Updates¶
7. Coolify-spezifische Checks¶
Coolify-Container¶
Alle Container sollten Up sein.
Coolify-Version¶
Public Registration deaktiviert?¶
- Öffne
https://coolify.fcl-tech.dein einem Inkognito-Fenster - Prüfe ob eine Registrierungsoption angezeigt wird
- Sollte NICHT möglich sein
Security-Check-Checkliste¶
SSH¶
- Root-Login deaktiviert
- Passwort-Auth deaktiviert
- Nur Key-Auth funktioniert
- Nur erlaubte Benutzer können sich anmelden
Firewall¶
- UFW aktiv
- Default deny incoming
- Nur Ports 22, 80, 443 offen
- SSH Rate-Limiting aktiv
Fail2Ban¶
- Dienst läuft
- SSH-Jail aktiv
- Eigene IP in Whitelist
SSL/TLS¶
- Gültiges Zertifikat
- SSL Labs Rating A oder besser
- HSTS aktiviert
- HTTP→HTTPS Redirect funktioniert
Docker¶
- daemon.json konfiguriert
- no-new-privileges aktiviert
- Docker Bench keine kritischen Warnungen
Coolify¶
- Alle Container laufen
- Public Registration deaktiviert
- Admin-Passwort stark