Verwendung von SSL-Zertifikaten von Drittanbietern in ServBay
Um lokale Entwicklungs- oder Testumgebungen möglichst realitätsnah zu simulieren, ist es essenziell, ein von einer vertrauenswürdigen Zertifizierungsstelle (CA) ausgestelltes SSL-Zertifikat zu verwenden. So gewährleisten Sie sicheren HTTPS-Zugriff auf Ihre Website – etwa für Tests von HTTPS-abhängigen Features oder um Produktions- und Entwicklungsumgebung angleichen zu können. Dieser Artikel erläutert im Detail, wie Sie SSL-Zertifikate von Drittanbietern in Ihrer lokalen Webentwicklungsumgebung mit ServBay einrichten.
WARNING
Bitte beachten Sie: Von Drittanbieter-CAs ausgestellte SSL-Zertifikate unterstützen in der Regel nur Standard-Domainendungen (wie .com
, .org
, .net
, .cn
etc.) und keine benutzerdefinierten, nicht-standardisierten Endungen (z. B. .local
, .test
, .demo
). Nicht-standardisierte Domains können öffentlich meist nicht validiert werden. Falls Ihre lokale Entwicklungsdomain eine solche Endung verwendet, empfiehlt ServBay, ein vertrauenswürdiges, lokales SSL-Zertifikat mithilfe der ServBay-internen "ServBay User CA" oder "ServBay Public CA" zu generieren.
Anwendungsfälle
- Simulation der Produktionsumgebung: Reproduction der HTTPS-Konfiguration der Produktivumgebung, um das Verhalten der Website unter HTTPS zu testen.
- Testen von HTTPS-abhängigen Features: Test von Browser-APIs oder Funktionen, die einen Secure Context benötigen (z. B. Service Workers, Web Crypto API, Geolocation).
- Lokale API-Entwicklung: Bereitstellung von HTTPS für lokal betriebene Backend-APIs, um Frontends den Zugriff über HTTPS zu ermöglichen.
Voraussetzungen
Vor Beginn stellen Sie sicher, dass:
- ServBay ist auf Ihrem macOS installiert und ausgeführt.
- Sie verfügen über Grundkenntnisse im Umgang mit Terminal und Kommandozeile.
- Das OpenSSL-Tool ist (in der Regel standardmäßig unter macOS) installiert.
Schritt 1: SSL-Zertifikat von einer Drittanbieter-CA beantragen
Sie benötigen ein SSL-Zertifikat von einer vertrauenswürdigen CA wie Let's Encrypt, DigiCert, GlobalSign, Sectigo und anderen. Zentrale Voraussetzung zur Beantragung ist die Erstellung eines Certificate Signing Request (CSR).
Privaten Schlüssel (Private Key) generieren
Der Private Key ist essenziell für die Entschlüsselung des SSL-Datenverkehrs durch Ihren Server und muss sicher aufbewahrt werden. Führen Sie im Terminal folgenden OpenSSL-Befehl aus, um einen RSA-Schlüssel zu erzeugen:
shopenssl genpkey -algorithm RSA -out servbay.demo.key -pkeyopt rsa_keygen_bits:2048
1openssl genpkey
: OpenSSL-Befehl zur Erzeugung eines privaten Schlüssels.-algorithm RSA
: Gibt RSA als Algorithmus an.-out servbay.demo.key
: Ausgabe-Dateiname für den privaten Schlüssel.-pkeyopt rsa_keygen_bits:2048
: Legt die Schlüssellänge auf 2048 Bit fest – für die meisten Anwendungsfälle ein sicherer Standardwert.
CSR (Certificate Signing Request) erzeugen
Ein CSR enthält Ihren öffentlichen Schlüssel und relevante Zertifikatsinformationen. Er wird bei der CA eingereicht. Nutzen Sie den zuvor erzeugten Schlüssel:
shopenssl req -new -key servbay.demo.key -out servbay.demo.csr
1openssl req
: OpenSSL-Befehl zur CSR-Erstellung.-new
: Fordert die Generierung eines neuen CSRs an.-key servbay.demo.key
: Verwendet den erzeugten privaten Schlüssel.-out servbay.demo.csr
: Ausgabedatei für den CSR.
Während des Vorgangs werden Sie zur Eingabe verschiedener Angaben gebeten. Füllen Sie die Felder nach Ihren tatsächlichen Gegebenheiten oder laut Vorgabe Ihrer CA aus. Beispiel:
Country Name (2 letter code) [AU]:CN # Ländercode, z. B. CN (China), US (USA) State or Province Name (full name) [Some-State]:Hong Kong # Bundesland/Kanton/Bundesstaat Locality Name (eg, city) []:Kowloon # Stadt Organization Name (eg, company) [Internet Widgits Pty Ltd]:ServBay # Unternehmen/Organisation Organizational Unit Name (eg, section) []:Development # Organisationseinheit (optional) Common Name (e.g. server FQDN or YOUR name) []:servbay.demo # **Wichtig: Vollständige Domain, für die das Zertifikat gilt (FQDN).** Email Address []:[email protected] # Kontakt-E-Mail (optional) Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: # Challenge-Passwort (meist leer lassen) An optional company name []: # optionale Firmenangabe (meist leer lassen)
1
2
3
4
5
6
7
8
9
10
11
12Achten Sie beim Feld
Common Name
darauf, exakt die Domain (z. B.servbay.demo
) einzutragen, die Sie in ServBay verwenden möchten. Für Multi-Domain- (SAN-) Zertifikate erlauben viele CAs Alternativen oder Onlinetools zur Besonderung der Domains – der grundlegende CSR-Prozess bleibt ähnlich.CSR einreichen & Zertifikat erhalten
Reichen Sie die Datei
servbay.demo.csr
bei der CA Ihrer Wahl ein und durchlaufen Sie das entsprechende Domain-Inhaberverfahren (z. B. über DNS, HTTP-Datei oder E-Mail-Bestätigung). Nach erfolgreicher Überprüfung stellt die CA die benötigten Dateien bereit:- Ihr Hauptzertifikat (z. B.
servbay.demo.crt
oderservbay.demo.pem
) - Ein oder mehrere Zwischenzertifikate (z. B.
intermediate.crt
,ca-bundle.crt
) - Root-Zertifikat (wird meist nicht benötigt, ist im Betriebssystem/Browser enthalten)
- Ihr Hauptzertifikat (z. B.
Schritt 2: Import und Konfiguration des SSL-Zertifikats in ServBay
Nachdem Sie die Zertifikate von Ihrer CA erhalten haben, müssen Sie diese in ServBay hinterlegen und zuordnen, damit Ihre Website via HTTPS erreichbar ist.
ServBay empfiehlt, alle benutzerdefinierten Zertifikate und privaten Schlüssel gesammelt im Verzeichnis /Applications/ServBay/ssl/import/tls-certs/
zu speichern.
Zertifikate & Schlüssel in das Zielverzeichnis verschieben
Verschieben Sie die folgenden Dateien in das Import-Verzeichnis von ServBay:
- Ihren privaten Schlüssel (
servbay.demo.key
) - Das Hauptzertifikat (
servbay.demo.crt
) - Sämtliche Zwischenzertifikate wie
intermediate.crt
Beispielbefehle:
shmv servbay.demo.key /Applications/ServBay/ssl/import/tls-certs/ mv servbay.demo.crt /Applications/ServBay/ssl/import/tls-certs/ # Bei Kettenzertifikaten: mv intermediate.crt /Applications/ServBay/ssl/import/tls-certs/ # Zusätzliche weitere Zwischenzertifikate (falls vorhanden) # mv another_intermediate.crt /Applications/ServBay/ssl/import/tls-certs/
1
2
3
4
5
6- Ihren privaten Schlüssel (
Zwischenzertifikate ins Hauptzertifikat einfügen
Damit Ihr Browser der gesamten Zertifikatskette vertraut, müssen alle Zwischenzertifikate an das Hauptzertifikat angehängt werden. Die Reihenfolge richtet sich nach den Hinweisen Ihrer CA (erst das Hauptzertifikat, dann Zwischenzertifikate – das Root-Zertifikat muss in der Regel nicht eingebunden werden).
Beispiel mit nur einem Zwischenzertifikat:
shcat intermediate.crt >> /Applications/ServBay/ssl/import/tls-certs/servbay.demo.crt
1Gibt es mehrere Zwischenzertifikate, fügen Sie diese in der von der CA vorgegebenen Reihenfolge hinzu:
shcat intermediate1.crt >> /Applications/ServBay/ssl/import/tls-certs/servbay.demo.crt cat intermediate2.crt >> /Applications/ServBay/ssl/import/tls-certs/servbay.demo.crt
1
2Nach Abschluss enthält die Datei
servbay.demo.crt
Ihr Serverzertifikat einschließlich der gesamten Zertifikatskette.ServBay-Administrationsbereich öffnen
Starten Sie ServBay. Klicken Sie im Dock oder in der Menüleiste auf das ServBay-Symbol, um das Admin-Panel aufzurufen.
Website hinzufügen oder bearbeiten
Im Navigationsbereich auf der linken Seite wählen Sie "Websites":
- Für eine neue Website: Klicken Sie auf das
+
Symbol oben rechts. - Für eine bestehende Website: Wählen Sie den Eintrag und klicken Sie das Bearbeiten-Symbol (Stift).
- Für eine neue Website: Klicken Sie auf das
SSL-Zertifikat konfigurieren
Im Bereich "SSL" wählen Sie die Signierungsart
Custom
(benutzerdefiniert).- Zertifikatschlüsseldatei (Certificate Key File): Über die Durchsuchen-Funktion wählen Sie im Verzeichnis
/Applications/ServBay/ssl/import/tls-certs/
den privaten Schlüssel (servbay.demo.key
). - Zertifikatsdatei (Certificate File): Ebenfalls per Durchsuchen wählen Sie das zusammengeführte Hauptzertifikat (
servbay.demo.crt
).
(Hinweis: Bildpfad ist ein Beispiel und muss ggf. an die tatsächlichen Dokumentationspfade von ServBay angepasst werden)
- Zertifikatschlüsseldatei (Certificate Key File): Über die Durchsuchen-Funktion wählen Sie im Verzeichnis
Domain und Web-Root setzen
Stellen Sie sicher, dass das Feld
Domain
genau mit der bei der Zertifikatsbeantragung verwendeten Domain (z. B.servbay.demo
) ausgefüllt ist. Tragen Sie zudem das zutreffende Document Root für Ihre Website ein, z. B./Applications/ServBay/www/servbay.demo
.Konfiguration speichern und anwenden
Speichern Sie die Änderungen. ServBay wird Sie auffordern, die Konfiguration zu übernehmen und den entsprechenden Webserver (z. B. Caddy, Nginx, Apache) neu zu starten. Bestätigen Sie dies.
Konfiguration überprüfen
Rufen Sie nun Ihre Website im Browser über HTTPS (z. B. https://servbay.demo
) auf. Bei korrekter Einrichtung erscheint ein Schlosssymbol in der Adresszeile. Per Klick darauf lassen sich Details zum Zertifikat einsehen. Sie sollten die von Ihnen importierten Informationen und eine vollständige Zertifikatskette erkennen.
Im Fehlerfall überprüfen Sie folgende Punkte:
- Stimmt die Domain mit dem Common Name oder SAN des Zertifikats überein?
- Sind die Pfade zu privatem Schlüssel und Zertifikat korrekt?
- Enthält Ihre Zertifikatsdatei die komplette, korrekt sortierte Zertifikatskette?
- Wurde die Konfiguration in ServBay gespeichert und übernommen?
- Ist das Root-Zertifikat Ihrer CA auf dem System/Betriebssystem als vertrauenswürdig installiert (bei Standard-Root-Zertifikaten von CAs meist automatisch)?
Hinweise
- Domain-Matching: Das importierte Zertifikat muss exakt die konfigurierte Domain in ServBay (inkl. Subdomains bei Wildcard-Zertifikaten) abdecken.
- Zertifikatsgültigkeit: Drittanbieter-Zertifikate haben ein Ablaufdatum. Denken Sie an rechtzeitige Verlängerung und Aktualisierung Ihrer Zertifikatsdateien in ServBay.
- Private Key-Sicherheit: Bewahren Sie
.key
-Dateien sicher und geheim auf. - Weitere SSL-Optionen in ServBay: ServBay bietet zudem folgende bequeme SSL-Konfigurationsoptionen:
- ServBay User CA / Public CA: Erstellt vertrauenswürdige lokale Entwicklungszertifikate für beliebige Domains.
- ACME (Let's Encrypt): Für Standarddomains kann ServBay automatisch Let's Encrypt-Zertifikate beantragen & verlängern. Die hier beschriebene Importmethode ist vor allem für Fälle, in denen Zertifikate außerhalb von ServBay erworben wurden, relevant.
FAQ – Häufig gestellte Fragen
F: Ich habe ein Zertifikat im .pfx
oder .p12
Format erhalten. Wie nutze ich dieses in ServBay?
A: .pfx
- und .p12
-Dateien enthalten Private Key und Zertifikatskette. Mit OpenSSL lassen sich Dateien für ServBay extrahieren:
openssl pkcs12 -in your_certificate.pfx -nocerts -out your_private_key.key -nodes
openssl pkcs12 -in your_certificate.pfx -clcerts -nokeys -out your_certificate.crt
2
Anschließend ggf. die Zwischenzertifikate (von Ihrer CA bereitgestellt) wie unter Schritt 2 beschrieben an die .crt
-Datei anhängen.
F: Ich habe alles nach Anleitung konfiguriert, aber der Browser zeigt weiterhin eine Warnung „Nicht sichere Verbindung“?
A: Bitte prüfen Sie:
- Domain-Matching: Entspricht die aufgerufene Domain exakt der im Zertifikat eingetragenen?
- Komplette Zertifikatskette: Enthält Ihre
.crt
-Datei alle Zwischenzertifikate und ist die Reihenfolge korrekt? Nutzen Sie ggf. Online-SSL-Checker zur Kontrolle. - Neustart von ServBay: Haben Sie die Konfiguration gespeichert und den Webserver neustarten lassen?
- Browser-Cache: Löschen Sie ggf. den Cache oder versuchen Sie es im Inkognitomodus.
- Systemvertrauen: Ist das Root-CA-Zertifikat auf Ihrem Betriebssystem als vertrauenswürdig gelistet?
Zusammenfassung
Wenn Sie die obigen Schritte befolgen, können Sie erfolgreich SSL-Zertifikate von Drittanbietern in Ihrer lokalen ServBay-Entwicklungsumgebung einsetzen. Dies erlaubt realistische Tests und eine möglichst produktionsnahe HTTPS-Konfiguration. Zwar bietet ServBay komfortablere Optionen wie ACME oder hauseigene CAs – das Importieren benutzerdefinierter Zertifikate bleibt jedoch für anspruchsvolle oder migrationsbezogene Szenarien unerlässlich.