SSL-Zertifikate¶
enconf verwaltet SSL-Zertifikate automatisch über Let's Encrypt und unterstützt zusätzlich den Upload eigener Zertifikate.
Übersicht¶
Die SSL-Verwaltung zeigt alle konfigurierten SSL-Zertifikate mit ihrem Status.
| Spalte | Beschreibung |
|---|---|
| Domain | Domain des Zertifikats |
| Typ | Let's Encrypt oder Custom |
| Gültig bis | Ablaufdatum |
| Status | Gültig, Bald ablaufend, Abgelaufen |
Let's Encrypt (Automatisch)¶
Zertifikat anfordern¶
Let's Encrypt-Zertifikate werden in den meisten Fällen automatisch beim Erstellen einer Website oder Domain ausgestellt.
Manuelle Anforderung:
- Navigieren Sie zur Domain-Verwaltung
- Wählen Sie die gewünschte Domain
- Klicken Sie auf SSL aktivieren
Voraussetzungen:
- Die Domain muss per A- oder AAAA-Record auf den Server zeigen
- Port 80 muss für die ACME-HTTP-Challenge erreichbar sein
- Die Domain muss öffentlich auflösbar sein
Automatische DNS-Prüfung
Vor der SSL-Aktivierung prüft das Panel automatisch über einen externen DNS-Resolver (Cloudflare 1.1.1.1), ob der A-Record der Domain auf die IP des Servers zeigt. Stimmt die IP nicht überein, wird die Aktivierung mit einer klaren Fehlermeldung abgelehnt. Dies verhindert fehlgeschlagene Let's Encrypt Challenges.
Automatische Verlängerung¶
- Der Certbot-Timer prüft regelmäßig alle Zertifikate
- Zertifikate werden automatisch 30 Tage vor Ablauf erneuert
- Nach der Erneuerung wird Nginx automatisch neu geladen
Let's Encrypt Limits
Let's Encrypt erlaubt maximal 50 Zertifikate pro registrierter Domain pro Woche. Bei vielen Subdomains empfiehlt sich ein Wildcard-Zertifikat.
Fehlerbehebung¶
| Problem | Lösung |
|---|---|
| DNS zeigt nicht auf Server | A/AAAA-Record korrigieren |
| Port 80 blockiert | Firewall-Regel prüfen |
| Rate-Limit erreicht | 1 Stunde warten, dann erneut versuchen |
| Domain nicht auflösbar | DNS-Konfiguration prüfen |
| DNS zeigt auf falsche IP | A-Record auf die Server-IP korrigieren (wird über externen DNS 1.1.1.1 geprüft) |
Domain-Aliase und Subdomains¶
Wenn ein Domain-Alias oder eine Subdomain angelegt wird, geschieht automatisch:
- DNS-Zone wird erstellt mit A-Records auf die Server-IP
- Domain-Eintrag wird im Panel angelegt (sichtbar in der Domain- und SSL-Verwaltung)
- Nginx-Vhost wird aktualisiert — der Alias erscheint im
server_name
SSL für Aliase aktivieren¶
Beim Aktivieren von SSL für eine Domain werden automatisch alle Domain-Aliase der zugehörigen Site als SANs (Subject Alternative Names) in das Zertifikat aufgenommen. Das bedeutet:
- Ein Zertifikat deckt die Hauptdomain + alle Aliase ab
- Alle Domains teilen denselben Nginx
server-Block und dasselbe Zertifikat - Bei neuen Aliase wird das Zertifikat automatisch erweitert (
certbot --expand)
Sie müssen SSL also nur für die Hauptdomain aktivieren — die Aliase werden automatisch abgedeckt.
DNS muss korrekt sein
Für alle Domains im Zertifikat (Hauptdomain + Aliase) muss der A-Record auf die Server-IP zeigen. Andernfalls schlägt die Let's Encrypt Challenge fehl.
Wildcard-Zertifikate (*.domain.de)¶
Wildcard-Zertifikate decken alle Subdomains einer Domain ab (z. B. *.beispiel.de). Sie werden über die DNS-01-Challenge von Let's Encrypt ausgestellt.
Voraussetzungen¶
- Die Domain muss die Nameserver des Panels verwenden, damit der
_acme-challengeTXT-Record automatisch gesetzt werden kann - Kunden mit externem DNS können stattdessen Let's Encrypt (HTTP-01) oder ein eigenes Zertifikat nutzen
Wildcard-Zertifikat anfordern¶
- Navigieren Sie zu SSL-Zertifikate
- Klicken Sie auf SSL aktivieren bei der gewünschten Domain
- Wählen Sie Wildcard (*.domain)
- Klicken Sie auf Aktivieren
Der Vorgang dauert 1–3 Minuten, da DNS-Propagation abgewartet werden muss.
ACME-DNS Konfiguration¶
| Modus | Beschreibung |
|---|---|
| Automatisch | Verwendet den PowerDNS-Server, der die DNS-Zone im Panel verwaltet |
| Externer PowerDNS | Verwendet eine externe PowerDNS-Instanz (API-URL + API-Key erforderlich) |
Konfiguration unter Einstellungen → Panel-Einstellungen → ACME-DNS:
| Einstellung | Beschreibung |
|---|---|
| DNS-Modus | Automatisch oder Externer PowerDNS |
| PowerDNS API-URL | URL der externen PowerDNS-API (z. B. http://ns1.example.com:8081) |
| PowerDNS API-Key | API-Schlüssel für die Authentifizierung |
Automatische Erneuerung¶
Wildcard-Zertifikate werden wie reguläre Zertifikate automatisch 30 Tage vor Ablauf erneuert — ebenfalls über DNS-01-Challenge.
Externe PowerDNS-Instanzen
Wenn Sie einen externen PowerDNS-Server verwenden, stellen Sie sicher, dass die API-URL vom Panel-Server aus erreichbar ist und der API-Key die Berechtigung hat, TXT-Records in der Zone zu erstellen und zu löschen.
Eigene Zertifikate (Custom SSL)¶
Für Domains, die kein Let's Encrypt verwenden können oder sollen:
Zertifikat hochladen¶
- Navigieren Sie zu SSL > Zertifikat hochladen
- Laden Sie folgende Dateien hoch:
| Datei | Pflicht | Beschreibung |
|---|---|---|
| Zertifikat (.crt/.pem) | Ja | Das SSL-Zertifikat |
| Privater Schlüssel (.key) | Ja | Der zugehörige private Schlüssel |
| CA-Bundle (.ca-bundle) | Nein | Intermediäre Zertifikate (Chain) |
- Klicken Sie auf Hochladen
Privater Schlüssel
Der private Schlüssel wird verschlüsselt gespeichert. Stellen Sie sicher, dass der Schlüssel nicht passwortgeschützt ist.
Zertifikat ersetzen¶
- Wählen Sie das vorhandene Zertifikat
- Klicken Sie auf Ersetzen
- Laden Sie das neue Zertifikat und den Schlüssel hoch
Panel-SSL¶
Das SSL-Zertifikat für das Panel selbst wird über Einstellungen > Server konfiguriert:
Optionen¶
| Modus | Beschreibung |
|---|---|
| Let's Encrypt | Automatisches Zertifikat für die Panel-URL |
| Custom | Eigenes Zertifikat hochladen |
| Self-Signed | Selbstsigniertes Zertifikat (nur für Tests) |
Panel-SSL konfigurieren¶
- Navigieren Sie zu Einstellungen > Server
- Wählen Sie den Panel SSL-Modus
- Bei Custom: Laden Sie Zertifikat und Schlüssel hoch
- Klicken Sie auf Speichern
Mail-SSL¶
Für die verschlüsselte E-Mail-Kommunikation (IMAP/SMTP):
- Navigieren Sie zu Einstellungen > Server
- Konfigurieren Sie den Mail SSL-Modus
- Optionen wie bei Panel-SSL
Separate Zertifikate
Es wird empfohlen, separate Zertifikate für Panel und Mail-Server zu verwenden, damit der Mail-Hostname (z. B. mail.beispiel.de) korrekt im Zertifikat enthalten ist.
Mail-SNI (Server Name Indication)¶
enconf unterstützt Mail-SNI — individuelle TLS-Zertifikate pro Domain für Postfix (SMTP) und Dovecot (IMAP/POP3). Damit können Kunden ihre eigene Domain (z. B. mail.kunde.de) anstelle des zentralen Mail-Hostnamens verwenden, ohne Zertifikatswarnungen zu erhalten.
Funktionsweise¶
Wenn SSL für eine Domain aktiviert wird, werden die Zertifikate automatisch auch für die Mail-Dienste konfiguriert:
- SSL aktivieren — Beim Aktivieren von SSL für eine Domain wird das Zertifikat automatisch an Postfix und Dovecot übergeben
- SNI-Mapping — Postfix und Dovecot wählen das passende Zertifikat anhand des vom Client angeforderten Hostnamens
- Automatische Aktualisierung — Bei Zertifikatserneuerung (Let's Encrypt) werden die Mail-Dienste automatisch aktualisiert
Kompatibilität¶
Mail-SNI funktioniert mit beiden Mail-Architekturen:
| Architektur | Beschreibung |
|---|---|
| Zentral | Mail-Gateway-Server verwaltet alle Zertifikate |
| Dezentral | Jeder Server verwaltet seine eigenen Mail-Zertifikate |
Kein manueller Eingriff nötig
Die SNI-Konfiguration erfolgt vollautomatisch beim Aktivieren von SSL für eine Domain. Es sind keine zusätzlichen Schritte erforderlich.
Zertifikat-Überwachung¶
Das System überwacht automatisch alle SSL-Zertifikate:
- 30 Tage vor Ablauf: Automatische Erneuerung bei Let's Encrypt
- 14 Tage vor Ablauf: Warnung im Dashboard bei Custom-Zertifikaten
- Abgelaufen: Warnung im Dashboard und auf der Systemseite