bg-tutorials

So installiert man ein SSL-Zertifikat auf macOS-Servern

Dieses Tutorial erklärt wie man ein SSL-Zertifikat auf macOS installiert. Es behandelt den Import Ihres Zertifikats und CA-Bundles mit dem Schlüsselbundverwaltung (Keychain Access), den älteren macOS Server (Server.app)-Workflow, den viele bestehende Setups noch verwenden, sowie den realistischen Weg für aktuelle macOS-Versionen, bei denen Server.app nicht mehr existiert.

Wichtig: Apple hat das Produkt macOS Server (Server.app) eingestellt. Web-, Mail- und die meisten Hosting-Dienste wurden 2018 entfernt, und die App selbst wurde im April 2022 eingestellt. Die letzte Version, 5.12.2, läuft nur bis macOS Monterey. Die folgenden Schritte behandeln sowohl die veraltete Server.app-Methode als auch den aktuellen Ansatz.

CSR-Code generieren

Um Ihr SSL-Zertifikat zu aktivieren, senden Sie Details über Ihre Domain und Organisation an die Zertifizierungsstelle (CA). Dieser Standardschritt wird Certificate Signing Request oder CSR genannt. Sie haben zwei Möglichkeiten:

Reichen Sie den CSR während Ihrer Bestellung ein. Die CA wird Ihre Anfrage validieren und, sobald genehmigt, das Zertifikat signieren und ausstellen. Sie erhalten die Zertifikatsdateien per E-Mail. Danach fahren Sie mit der Installation unten fort.

SSL-Zertifikat auf macOS installieren

Die folgenden Schritte folgen dem ursprünglichen macOS Server (Server.app) Workflow: Importieren Sie das CA-Bundle und das Zertifikat mit der Schlüsselbundverwaltung, weisen Sie dann das Zertifikat den Diensten in der Server-App zu. Wenn Ihr Mac die Server-App nicht mehr hat, springen Sie nach Schritt 2 zu Aktuelles macOS: kein Server.app, da der Schlüsselbund-Import weiterhin gilt.

Schritt 1: Zertifikatsdateien vorbereiten

Laden Sie das ZIP-Archiv herunter, das die CA Ihnen gesendet hat, und entpacken Sie es. Sie sollten eine Datei mit der Erweiterung .crt (Ihr primäres Zertifikat) und eine Datei mit der Erweiterung .ca-bundle (die Root- und Zwischenzertifikate, auch CA-Bundle genannt) haben. Sie benötigen außerdem den privaten Schlüssel, den Sie mit dem CSR erstellt haben.

Schritt 2: Die .ca-bundle-Datei zur Schlüsselbundverwaltung hinzufügen

Beginnen Sie mit dem CA-Bundle. Es enthält die Root- und Zwischenzertifikate, die Browser und Clients verwenden, um eine Vertrauenskette zu einem vertrauenswürdigen Root aufzubauen. Ohne sie sehen Besucher möglicherweise eine Warnung „nicht sicher“ oder ein nicht vertrauenswürdiges Zertifikat.

  1. Suchen Sie die Datei mit der Erweiterung .ca-bundle.
  2. Öffnen Sie Schlüsselbundverwaltung (suchen Sie danach mit Spotlight, oder finden Sie sie unter Programme > Dienstprogramme).
  3. Ziehen Sie die .ca-bundle-Datei per Drag & Drop in das Fenster der Schlüsselbundverwaltung. Fügen Sie sie dem System-Schlüsselbund hinzu, damit sie für alle Benutzer und Dienste gilt.
  4. Um den Import zu bestätigen, geben Sie den Namen Ihrer CA in die Suchleiste ein. Sie sollten die Zwischenzertifikate und das Root-Zertifikat aufgelistet sehen.

Sie können dasselbe auch über das Terminal tun, was bei einem Headless- oder Remote-Server nützlich ist. Dies importiert das Bundle in den System-Schlüsselbund:

sudo security import yourdomain.ca-bundle -k /Library/Keychains/System.keychain

Schritt 3: Ihr primäres Zertifikat hinzufügen (veraltete Server.app)

Dieser Schritt verwendet die eingestellte Server.app. Wenn Ihr Mac diese nicht mehr hat, lesen Sie stattdessen den nächsten Abschnitt.

  1. Öffnen Sie die Server-App und gehen Sie zu Server > Zertifikate.
  2. Doppelklicken Sie auf der Hauptseite auf das ausstehende Zertifikat (das bei der Erstellung des CSR erstellt wurde).
  3. Ziehen Sie im geöffneten Fenster Ihre .crt-Datei per Drag & Drop hinein und klicken Sie auf OK.
  4. Ein gültiges Zertifikat zeigt nun den Namen des Ausstellers und das Ablaufdatum an.

Schritt 4: Das Zertifikat Ihren Diensten zuweisen (veraltete Server.app)

Suchen Sie in der Server-App die Einstellung Sichere Dienste unter Verwendung von. Verwenden Sie das Dropdown-Menü, um Ihr SSL-Zertifikat auszuwählen. Um es bestimmten Diensten wie Dateifreigabe oder Mail zuzuweisen, klicken Sie auf Benutzerdefiniert und wählen Sie die Dienste aus, die Sie sichern möchten. Wenn Sie fertig sind, klicken Sie auf OK.

Ihr SSL-Zertifikat ist nun installiert. Um das Ergebnis zu bestätigen und auf häufige Probleme zu prüfen, verwenden Sie unseren SSL Checker.

Aktuelles macOS: kein Server.app (Schlüsselbund plus Apache oder nginx verwenden)

Da Apple die Server.app eingestellt hat, verfügen aktuelle macOS-Versionen über keinen Server > Zertifikate-Bildschirm und keine dienstespezifische Zertifikatszuweisung mehr. Der Zertifikatsimport in die Schlüsselbundverwaltung (Schritt 2) gilt weiterhin für das Systemvertrauen, aber Sie stellen HTTPS bereit, indem Sie einen Webserver direkt konfigurieren. macOS wird mit integriertem Apache (httpd) geliefert, und nginx ist über Homebrew verfügbar. Platzieren Sie Ihr Zertifikat und Ihren Schlüssel an einem Ort, an dem der Server sie lesen kann, zum Beispiel unter /etc/ssl/, und stellen Sie sicher, dass der private Schlüssel nur für root lesbar ist.

Option A: Integriertes Apache (httpd)

Bearbeiten Sie /etc/apache2/httpd.conf und entfernen Sie das führende # aus diesen Zeilen, damit die SSL-Module und die SSL-Konfiguration geladen werden:

LoadModule socache_shmcb_module libexec/apache2/mod_socache_shmcb.so
LoadModule ssl_module libexec/apache2/mod_ssl.so
Include /private/etc/apache2/extra/httpd-ssl.conf

Erstellen Sie zunächst eine Full-Chain-Datei (Ihr Zertifikat gefolgt vom CA-Bundle), die SSLCertificateFile bei Apache 2.4.8 und neuer erwartet:

cat yourdomain.crt yourdomain.ca-bundle > yourdomain_fullchain.crt

Bearbeiten Sie dann /etc/apache2/extra/httpd-ssl.conf und stellen Sie sicher, dass sie auf Port 443 lauscht. Diese Datei liefert bereits standardmäßig einen <VirtualHost _default_:443>-Block mit einem selbstsignierten Zertifikat, also bearbeiten Sie entweder diesen Block oder fügen Sie den folgenden virtuellen Host hinzu und kommentieren Sie den Standard aus, um zwei Hosts auf Port 443 zu vermeiden:

<VirtualHost *:443>
    ServerName www.yourdomain.com
    DocumentRoot "/Library/WebServer/Documents"

    SSLEngine on
    SSLCertificateFile    /etc/ssl/yourdomain_fullchain.crt
    SSLCertificateKeyFile /etc/ssl/private/yourdomain.key

    SSLProtocol         -all +TLSv1.2 +TLSv1.3
    SSLHonorCipherOrder off
</VirtualHost>

Die obigen Pfade gehen davon aus, dass sich der private Schlüssel in /etc/ssl/private/ befindet, was auf macOS standardmäßig möglicherweise nicht existiert. Erstellen Sie ihn zuerst und stellen Sie sicher, dass der Schlüssel nur für root lesbar ist:

sudo mkdir -p /etc/ssl/private
sudo chmod 600 /etc/ssl/private/yourdomain.key

Testen Sie die Konfiguration vor dem Neustart und starten Sie dann Apache neu:

sudo apachectl configtest
sudo apachectl restart

Sie sollten Syntax OK vom Test sehen. Falls Sie einen Fehler erhalten, beheben Sie ihn vor dem Neustart, damit der Server nicht fehlschlägt zu starten.

Option B: nginx

Wenn Sie nginx verwenden, verweisen Sie in Ihrem Serverblock auf die Full-Chain-Datei und den Schlüssel und laden Sie anschließend neu:

server {
    listen 443 ssl;
    server_name www.yourdomain.com;

    ssl_certificate     /etc/ssl/yourdomain_fullchain.crt;
    ssl_certificate_key /etc/ssl/private/yourdomain.key;

    ssl_protocols TLSv1.2 TLSv1.3;
}
sudo nginx -t
sudo nginx -s reload

Für die Konfigurationsverwaltung über eine ganze Flotte von Macs (die Rolle, die früher der Profile Manager erfüllte), verwenden Sie stattdessen eine aktuelle MDM-Lösung. Um das installierte Zertifikat von jedem beliebigen Rechner aus zu überprüfen, verwenden Sie unseren SSL Checker.

Häufig gestellte Fragen

Ist macOS Server noch verfügbar?

Nein. Apple hat 2018 die meisten Hosting-Dienste von macOS Server entfernt und die App selbst im April 2022 eingestellt. Die letzte Version, 5.12.2, läuft nur bis macOS Monterey und wird auf neueren macOS-Versionen nicht unterstützt. Auf aktuellem macOS importieren Sie Zertifikate in die Schlüsselbundverwaltung und konfigurieren Apache oder nginx direkt, anstatt die Server-App zu verwenden.

Wie installiere ich ein SSL-Zertifikat auf macOS ohne die Server-App?

Importieren Sie das CA-Bundle und Ihr Zertifikat in die Schlüsselbundverwaltung, damit das System der Kette vertraut, und richten Sie dann Ihren Webserver auf das Zertifikat und den privaten Schlüssel aus. macOS enthält Apache (konfiguriert in /etc/apache2/), und Sie können nginx über Homebrew installieren. Legen Sie SSLCertificateFile und SSLCertificateKeyFile in Apache fest, oder ssl_certificate und ssl_certificate_key in nginx, testen Sie dann die Konfiguration und starten Sie den Server neu.

Wo speichert macOS SSL-Zertifikate?

Vertrauenswürdige Zertifikate befinden sich in Schlüsselbunden, die von der Schlüsselbundverwaltung verwaltet werden. Systemweite Zertifikate landen im System-Schlüsselbund, gespeichert unter /Library/Keychains/System.keychain. Die Zertifikats- und Privatschlüsseldateien, die Ihr Webserver liest, können an anderer Stelle abgelegt werden, zum Beispiel unter /etc/ssl/, solange die Serverkonfiguration darauf verweist und der Schlüssel nur für root lesbar bleibt.

Muss ich das CA-Bundle auf macOS installieren?

Ja. Das CA-Bundle enthält die Zwischen- und Root-Zertifikate, die Browsern und Clients ermöglichen, eine vollständige Vertrauenskette aufzubauen. Wenn Sie es überspringen, sehen manche Besucher eine Warnung über eine nicht vertrauenswürdige oder unvollständige Zertifikatskette. Importieren Sie die .ca-bundle-Datei in die Schlüsselbundverwaltung, oder fügen Sie sie nach Ihrem Zertifikat zu einer einzigen Full-Chain-Datei für Apache oder nginx zusammen.

Wie überprüfe ich, ob das Zertifikat korrekt installiert ist?

Öffnen Sie Ihre Website in einem Browser und prüfen Sie das Schlosssymbol, oder befragen Sie den Server über das Terminal mit OpenSSL, um das ausgelieferte Zertifikat zu lesen:
echo | openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | openssl x509 -noout -issuer -dates
Dies zeigt den Aussteller und die Gültigkeitsdaten an. Sie können auch eine vollständige externe Prüfung mit unserem SSL Checker durchführen.

Sparen Sie 10% auf SSL-Zertifikate, wenn Sie noch heute bestellen!

Schnelle Ausstellung, starke Verschlüsselung, 99,99% Browser-Vertrauen, engagierter Support und 25-tägige Geld-zurück-Garantie. Gutscheincode: SAVE10

A detailed image of a dragon in flight
Geschrieben von

Erfahrener Content-Autor, spezialisiert auf SSL-Zertifikate. Verwandeln Sie komplexe Cybersicherheitsthemen in klare, ansprechende Inhalte. Tragen Sie durch wirkungsvolle Narrative zur Verbesserung der digitalen Sicherheit bei.