Zum Inhalt

SSL/TLS Setup

HTTPS ist essentiell für sichere Kommunikation. Coolify nutzt Let's Encrypt für automatische Zertifikate.

1. DNS konfigurieren

DNS-Einträge erstellen

Erstelle diese DNS-Einträge bei deinem Domain-Anbieter Digitalocean:

# Verweis deiner Domain und aller Subdomains auf deine Server-IP
fcl-tech.de    A    DEINE_SERVER_IP
*.fcl-tech.de  A    DEINE_SERVER_IP

DNS-Propagierung

DNS-Änderungen können bis zu 24 Stunden dauern, meist aber nur wenige Minuten.

DNS verifizieren

# A-Record prüfen
dig coolify.fcl-tech.de A +short

# Sollte deine Server-IP zeigen
DEINE_SERVER_IP

2. Coolify für HTTPS konfigurieren

Instance URL setzen

  1. Gehe zu SettingsConfiguration
  2. Setze Instance URL auf: https://coolify.fcl-tech.de
  3. Klicke auf Save

Let's Encrypt aktivieren

  1. Gehe zu SettingsConfiguration
  2. Aktiviere Let's Encrypt
  3. Gib deine E-Mail-Adresse ein: admin@fcl-tech.de
  4. Klicke auf Save

E-Mail für Let's Encrypt

Let's Encrypt sendet Warnungen, wenn Zertifikate bald ablaufen. Verwende eine aktiv genutzte E-Mail-Adresse.

3. Traefik Proxy konfigurieren

Coolify verwendet Traefik als Reverse Proxy. Die Standardkonfiguration ist für die meisten Fälle ausreichend.

Traefik-Logs prüfen

docker logs coolify-proxy --tail 100

4. SSL für Coolify selbst

Zertifikat anfordern

Nach dem Speichern der Einstellungen:

  1. Traefik erkennt die neue Domain
  2. Fordert automatisch ein Zertifikat bei Let's Encrypt an
  3. Konfiguriert HTTPS-Redirect

Browser-Test

Öffne https://coolify.fcl-tech.de im Browser:

  • Schloss-Symbol in der Adressleiste
  • Zertifikat von "Let's Encrypt" ausgestellt

5. SSL für Anwendungen

Wildcard-Zertifikate

Für viele Subdomains ist ein Wildcard-Zertifikat effizienter:

DNS Challenge erforderlich

Wildcard-Zertifikate erfordern eine DNS-Challenge. Dies benötigt API-Zugang zu deinem DNS-Anbieter. DigitalOcean bietet dies kostenlos an. Daher wird die Domain über die Nameserver von DigitalOcean verwaltet.

Für den Zugriff auf die API von DigitalOcean wird ein API-Token benötigt. Dies kann über die Website von DigitalOcean erstellt werden.

Das erstellte API-Token muss nun auf dem Server sicher abgelegt werden:

sudo echo "DO_AUTH_TOKEN=<DigitalOcean-API-token" > /data/coolify/proxy/.env
sudo chmod 640 /data/coolify/proxy/.env

Abschließend muss noch die Konfiguration des Proxy im Coolify-Dashboard unter Server -> Proxy angepasst werden und die folgenden Zeilen eingefügt werden:

HTTP Challenge deaktivieren

HTTP Challenge muss deaktiviert werden.

# ...
services:
  traefik:
    # ...
    command:
      # ...
      # use dnschallenge instead of httpchallenge
      # - '--certificatesresolvers.letsencrypt.acme.httpchallenge=true'
      # - '--certificatesresolvers.letsencrypt.acme.httpchallenge.entrypoint=http'
      - "--certificatesresolvers.letsencrypt.acme.email=admin@fcl-tech.de"
      - "--certificatesresolvers.letsencrypt.acme.dnschallenge.provider=digitalocean"
      - "--certificatesresolvers.letsencrypt.acme.dnsChallenge.propagation.delayBeforeChecks=5"
      - "--certificatesresolvers.letsencrypt.acme.dnsChallenge.propagation.disableChecks=true"
      - "--certificatesresolvers.letsencrypt.acme.storage=/traefik/acme.json"
      # ...
    env_file: ".env"
    labels:
      # ...
      - traefik.http.routers.traefik.tls.certresolver=letsencrypt
      - traefik.http.routers.traefik.tls.domains[0].main=fcl-tech.de
      - traefik.http.routers.traefik.tls.domains[0].sans=*.fcl-tech.de
      # ...

6. HTTPS-Redirect erzwingen

Globaler Redirect

In Coolify ist der HTTP→HTTPS-Redirect standardmäßig aktiv.

Verifizieren:

curl -I http://coolify.fcl-tech.de

Erwartete Antwort:

HTTP/1.1 301 Moved Permanently
Location: https://coolify.fcl-tech.de/

7. SSL-Konfiguration härten

HSTS aktivieren

HTTP Strict Transport Security verhindert Downgrade-Angriffe:

Traefik setzt standardmäßig:

Strict-Transport-Security: max-age=31536000; includeSubDomains

TLS-Version beschränken

Für erhöhte Sicherheit nur TLS 1.2+:

In /data/coolify/proxy/traefik.yml:

tls:
  options:
    default:
      minVersion: VersionTLS12
      cipherSuites:
        - TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
        - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
        - TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305
        - TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305

8. SSL-Qualität testen

SSL Labs Test

Teste deine SSL-Konfiguration:

  1. Gehe zu SSL Labs Server Test
  2. Gib deine Domain ein
  3. Warte auf das Ergebnis

Ziel: A oder A+

Eine gute Konfiguration erreicht mindestens ein A Rating.

9. Zertifikat-Erneuerung

Automatische Erneuerung

Let's Encrypt Zertifikate sind 90 Tage gültig. Traefik erneuert sie automatisch 30 Tage vor Ablauf.

Manuelle Erneuerung (falls nötig)

# Traefik neustarten (erzwingt Zertifikatsprüfung)
docker restart coolify-proxy

Zusammenfassung

Nach Abschluss dieses Abschnitts:

  • DNS-Einträge konfiguriert
  • Let's Encrypt aktiviert
  • HTTPS für Coolify funktioniert
  • HTTP→HTTPS-Redirect aktiv
  • SSL-Qualität getestet

Coolify-Setup abgeschlossen!

Gratulation! Coolify ist nun sicher installiert und konfiguriert.