Zurück zu FSRdp
PFX-Zertifikat für FsRdpServer
Anleitung zur Beschaffung, Installation und Erneuerung eines TLS-Zertifikats
für Windows und Linux Server.
Hinweis: Diese Seite ergänzt die
Installationsanleitung.
Sie finden hier tiefere Informationen zum PFX-Zertifikat.
1. Was ist ein PFX-Zertifikat?
cert.pfx ist ein passwortgeschütztes PKCS#12-Paket. Es enthält:
- Das TLS-Serverzertifikat für Ihren Servernamen (z. B.
server.ihrefirma.de)
- Den privaten Schlüssel zum Zertifikat
- Optional: Zwischenzertifikate der Zertifizierungsstelle
FsRdpServer nutzt die PFX-Datei, um alle Verbindungen zu Clients zu verschlüsseln –
genau wie ein Webserver sein HTTPS-Zertifikat. Ohne gültiges Zertifikat
können Clients sich nicht verbinden.
2. Zertifikat beschaffen
Option A: Wildcard-Zertifikat (empfohlen für mehrere Server)
Beispiel: *.ihrefirma.de
- Deckt alle Subdomains ab:
server.ihrefirma.de, support.ihrefirma.de, usw.
- Bei der Domain-Registrierungsstelle beantragen (z. B. HostEurope).
- Meist kostenpflichtig (10–50 EUR/Jahr je nach Anbieter).
- Vorteil: Können Sie für mehrere FsRdpServer verwenden, solange diese unter Ihrer Domain liegen.
- Laufzeit: Typisch 1 Jahr; vor Ablauf erneuern.
Option B: Spezifisches Zertifikat (für einen einzelnen Server)
Beispiel: server.ihrefirma.de (nur diese Subdomain)
- Günstiger als Wildcard (5–30 EUR/Jahr).
- Bei der Domain-Registrierungsstelle beantragen.
- Vorteil: Kostet weniger, wenn Sie nur einen Server haben.
- Nachteil: Für jeden zusätzlichen Server ein eigenes Zertifikat nötig.
- Laufzeit: Typisch 1 Jahr; vor Ablauf erneuern.
Option C: Let's Encrypt (kostenlos, automatisierbar)
Beispiel: server.ihrefirma.de
- Kostenlose Zertifikate, Laufzeit 90 Tage (kurz, aber automatisch erneuerbar).
- Voraussetzung: Ihr Servername muss öffentlich per DNS auflösbar sein.
- Mit
certbot einrichten (Linux; Windows erfordert zusätzliche Tools).
- Vorteil: Kostenfrei, automatische Erneuerung möglich.
- Nachteil: Erfordert öffentliche Internetanbindung und DNS-Verwaltung.
Option D: Interne Firmen-CA (nur für private Netzwerke)
Wenn FsRdpServer nur intern erreichbar ist und Ihre Firma eine eigene
Zertifizierungsstelle betreibt, können Sie dort ein Zertifikat beantragen.
- Wichtig: Jeder Client muss der CA ausdrücklich vertrauen.
- Laufzeit: Je nach Policy Ihrer CA, oft 1–3 Jahre.
Kritisch: Der DNS Subject Alternative Name (SAN) im Zertifikat
muss exakt dem Servernamen entsprechen, für den die Lizenz
ausgestellt ist. Beispiel: Lizenz auf server.ihrefirma.de
→ Zertifikat muss SAN server.ihrefirma.de enthalten.
3. Zertifikat als PFX exportieren
Szenario A: Von HostEurope beziehen
- Melden Sie sich im HostEurope-Kundenportal an.
- Navigieren Sie zu Ihrer Domain und der Zertifikatsverwaltung.
- Laden Sie das Zertifikat herunter. HostEurope bietet meist mehrere Formate an.
- Wählen Sie das Format PKCS#12 (.pfx) mit Passwort.
- Speichern Sie die
cert.pfx sicher ab (nicht per E-Mail verschicken!).
Szenario B: Von Let's Encrypt mit certbot (Linux)
# Zertifikat mit certbot beschaffen und automatisch erneuern
sudo certbot certonly --standalone -d server.ihrefirma.de
# Dann zu PFX konvertieren:
sudo openssl pkcs12 -export -out /tmp/cert.pfx \
-inkey /etc/letsencrypt/live/server.ihrefirma.de/privkey.pem \
-in /etc/letsencrypt/live/server.ihrefirma.de/fullchain.pem \
-password pass:IhrPasswort
Szenario C: Von anderer CA (manuell mit OpenSSL)
Falls Sie separate PEM-Dateien haben (z. B. cert.pem, privkey.pem,
chain.pem):
openssl pkcs12 -export -out cert.pfx \
-inkey privkey.pem \
-in cert.pem \
-certfile chain.pem \
-password pass:IhrPasswort
Passwort: Wählen Sie ein starkes Passwort (mind. 12 Zeichen).
Sie benötigen es bei der Installation. Bewahren Sie es sicher auf,
verschicken Sie es nicht per E-Mail.
4. PFX zum ersten Mal installieren
Windows
1
Legen Sie cert.pfx bereit und notieren Sie sich das Passwort.
2
Führen Sie Setup_FSRdpServer.exe als Administrator aus.
Das Setup fragt nach der PFX-Datei und dem Passwort.
3
Das Setup speichert cert.pfx automatisch in
C:\ProgramData\FsRdpServer\ und das Passwort verschlüsselt
in appsettings.json.
Detaillierte Anleitung:
Installationsanleitung, Abschnitt 3
Linux
1
Kopieren Sie cert.pfx in das Datenverzeichnis:
sudo install -o fsrdp-server -g fsrdp-server -m 0640 \
cert.pfx /opt/fsrdp-server/data/cert.pfx
2
Speichern Sie das Passwort in der root-geschützten Umgebungsdatei:
sudoedit /etc/fsrdp-server/fsrdp-server.env
Tragen Sie ein:
FSRDP_CERT_PASSWORD=IhrPasswort
Speichern Sie die Datei mit Schutzrechten:
sudo chmod 0600 /etc/fsrdp-server/fsrdp-server.env
3
Starten Sie den Dienst oder nehmen Sie Änderungen vor:
sudo systemctl restart fsrdp-server.service
Detaillierte Anleitung:
Installationsanleitung, Abschnitt 4
5. Zertifikat erneuern
Wichtig: Wenn ein Zertifikat abläuft, können sich Clients
nicht mehr verbinden. Überprüfen Sie regelmäßig die Gültigkeitsdauer und
erneuern Sie rechtzeitig vor Ablauf.
Gültigkeitsdatum prüfen
Windows:
# Öffnen Sie die MMC (Microsoft Management Console):
mmc
# Und navigieren Sie zu:
# Datei > Snap-Ins hinzufügen/entfernen > Zertifikate > Eigene Zertifikate >
# Persönlich > Zertifikate
# Dort können Sie das Gültigkeitsdatum der installierten cert.pfx sehen.
Linux:
openssl pkcs12 -in /opt/fsrdp-server/data/cert.pfx -password pass:IhrPasswort \
| openssl x509 -noout -dates
Szenario A: HostEurope Zertifikat erneuern
- Etwa 4–6 Wochen vor Ablauf erhalten Sie von HostEurope eine Erinnerung.
- Beantragen Sie die Erneuerung im HostEurope-Portal.
- Laden Sie das erneuerte Zertifikat als PKCS#12 (.pfx) herunter.
- Folgen Sie „Zertifikat ersetzen (Windows/Linux)" unten.
Szenario B: Let's Encrypt mit certbot (Linux, automatisch)
Let's Encrypt-Zertifikate sind nur 90 Tage gültig, aber certbot
erneuert automatisch. Um das zu überprüfen:
# Manuelle Erneuerung testen (ohne echten Abruf):
sudo certbot renew --dry-run
# Automatische Erneuerung überprüfen (läuft als Systemd-Timer):
sudo systemctl list-timers | grep -i certbot
Wenn certbot automatisch erneuert hat, müssen Sie danach die PFX-Datei
neu exportieren und in FsRdpServer installieren:
# Neue PFX erzeugen:
sudo openssl pkcs12 -export -out /tmp/cert.pfx \
-inkey /etc/letsencrypt/live/server.ihrefirma.de/privkey.pem \
-in /etc/letsencrypt/live/server.ihrefirma.de/fullchain.pem \
-password pass:IhrPasswort
# Alte PFX durch neue ersetzen:
sudo install -o fsrdp-server -g fsrdp-server -m 0640 \
/tmp/cert.pfx /opt/fsrdp-server/data/cert.pfx
# Dienst neu starten:
sudo systemctl restart fsrdp-server.service
Zertifikat ersetzen (Windows)
-
Besorgen Sie das erneuerte Zertifikat als
cert.pfx
(siehe Abschnitte 2–3).
-
Stoppen Sie den FsRdpServer-Dienst:
Stop-Service -Name FsRdpServer
-
Ersetzen Sie die alte PFX-Datei:
Copy-Item "C:\Pfad\zu\cert.pfx" `
"C:\ProgramData\FsRdpServer\cert.pfx" -Force
-
Wenn sich das Passwort geändert hat, bearbeiten Sie die
appsettings.json:
notepad "C:\ProgramData\FsRdpServer\appsettings.json"
und ändern Sie:
"CertificatePassword": "AlterPasswort"
zu:
"CertificatePassword": "NeuesPasswort"
-
Starten Sie den Dienst neu und validieren Sie:
Start-Service -Name FsRdpServer
# Validierung:
& "$env:ProgramFiles\FsRdpServer\FsRdpServer.exe" `
--validate-installation `
--validation-data-dir "$env:ProgramData\FsRdpServer"
Zertifikat ersetzen (Linux)
-
Besorgen Sie das erneuerte Zertifikat als
cert.pfx.
-
Stoppen Sie den Dienst:
sudo systemctl stop fsrdp-server.service
-
Ersetzen Sie die alte PFX-Datei:
sudo install -o fsrdp-server -g fsrdp-server -m 0640 \
cert.pfx /opt/fsrdp-server/data/cert.pfx
-
Wenn sich das Passwort geändert hat, bearbeiten Sie die Umgebungsdatei:
sudoedit /etc/fsrdp-server/fsrdp-server.env
und aktualisieren Sie:
FSRDP_CERT_PASSWORD=NeuesPasswort
-
Validieren Sie die Installation:
sudo systemd-run \
--quiet --wait --pipe --collect \
--property=User=fsrdp-server \
--property=Group=fsrdp-server \
--property=EnvironmentFile=/etc/fsrdp-server/fsrdp-server.env \
--property=Environment=FSRDP_DATA_DIR=/opt/fsrdp-server/data \
/opt/fsrdp-server/FsRdpServer --validate-installation
-
Bei erfolgreicher Validierung Dienst starten:
sudo systemctl start fsrdp-server.service
Hinweis: Die Lizenz ist von der Zertifikatserneuerung
unabhängig. Sie können das Zertifikat erneuern, ohne dass die Lizenz
neu ausgestellt werden muss (sofern sich Ihr Servername nicht ändert).
6. Automatische Erneuerung einrichten (Linux + Let's Encrypt)
Wenn Sie Let's Encrypt mit certbot nutzen und möchten, dass die PFX-Datei
automatisch erneuert wird:
Schritt 1: Hook-Skript erstellen
sudo nano /etc/letsencrypt/renewal-hooks/post/fsrdp-renew.sh
Tragen Sie folgenden Inhalt ein:
#!/bin/bash
# Erneuertes Zertifikat zu PFX konvertieren
openssl pkcs12 -export -out /tmp/cert.pfx \
-inkey /etc/letsencrypt/live/server.ihrefirma.de/privkey.pem \
-in /etc/letsencrypt/live/server.ihrefirma.de/fullchain.pem \
-password pass:IhrPasswort
# PFX zu FsRdpServer kopieren
install -o fsrdp-server -g fsrdp-server -m 0640 \
/tmp/cert.pfx /opt/fsrdp-server/data/cert.pfx
# Dienst neu starten
systemctl restart fsrdp-server.service
# Temporary file löschen
rm /tmp/cert.pfx
Schritt 2: Skript ausführbar machen
sudo chmod +x /etc/letsencrypt/renewal-hooks/post/fsrdp-renew.sh
Schritt 3: Testen
sudo certbot renew --dry-run
Danach werden PFX-Datei und Dienst automatisch erneuert, wenn
certbot ein neues Zertifikat abruft (typisch nach 90 Tagen).
7. Häufige Probleme
„Certificate has expired" oder Clients können sich nicht verbinden
- Überprüfen Sie das Gültigkeitsdatum der PFX-Datei (siehe Abschnitt 5).
- Falls abgelaufen: erneuern Sie das Zertifikat sofort (Abschnitt 5).
„DNS name mismatch" oder ähnliche Fehler beim Setup
- Der DNS Subject Alternative Name (SAN) im Zertifikat stimmt nicht mit dem Servernamen überein.
- Überprüfen Sie, für welchen Namen das Zertifikat ausgestellt wurde.
- Besorgen Sie ein neues Zertifikat für den korrekten Namen.
„PFX password incorrect" oder „Falsche PFX-Datei"
- Windows: Überprüfen Sie in
appsettings.json, ob das Passwort korrekt ist.
- Linux: Überprüfen Sie in
/etc/fsrdp-server/fsrdp-server.env das Passwort.
- Beachten Sie Leerzeichen und Sonderzeichen im Passwort.
„Invalid certificate chain" oder Clients vertrauen nicht
- Stellen Sie sicher, dass die PFX-Datei alle erforderlichen Zwischenzertifikate enthält.
- Bei Let's Encrypt: nutzen Sie
fullchain.pem, nicht cert.pem.
- Clients müssen der Zertifizierungsstelle vertrauen (bei öffentlichen CAs normalerweise der Fall).