ITEG pflegt derzeit 3 verschiedene Hierarchien von SSL-Zertifikaten (1 intern, 2 Projekt-spezifisch). Um die damit immer häufiger nötige manuelle Installation von CAs (den Zertifikaten der Zertifizierungs-Stellen) und Client-Zertifikaten zu vereinfachen haben wir die folgenden Kurz-Anleitungen geschrieben.
Vorbemerkungen
Für Ungeduldige: Detaillierte Anleitungen je Betriebssystem bzw. Browser finden sich weiter unten.
Genereller Tip: Importier-Reihenfolge
Weg 1: Einzeln
Im allgemeinen funktioniert Weg 1 gut, und alle unseren Anleitungen beschreiten diesen Weg:
- Zuerst die RootCA (Beim Herunterladen eher
.crt
als.pem
nennen) - Dann eine SubCA (analog RootCA, bei mehreren Zwischen-Zertifikats-Stufen "von oben nach unten" abarbeiten)
- Dann in einem Schritt Zertifikat und Key als Paket (bzw. falls der CSR lokal erstellt wurde nur das Zertifikat)
Weg 2: PKCS12-Paket in einem Rutsch
Mit Ausnahme von Windows (das CA-Zertifikate gerne in die falsche Kategorie legt) funktioniert auch Weg 2 meist gut, ggfs. sogar besser:
- Ganzes Zertifikats-Bundle (alle CAs, Zertifikat, und ggfs. private Key) auf einmal importieren, im PKCS12-Format als
.p12
-Datei importieren
Kurzinfo Datei-Formate für X.509-Zertifikatei
Eine Ausführlichere Übersicht bietet die Wikipedia-Seite zu X.509 (Überschrift "Dateinamenserweiterungen für Zertifikate").
Format | übliche Dateiendung(en) | Kurzbeschreibung |
---|---|---|
PEM | .crt, .cert, .cer (nur Zertifikate oder -Ketten) | PEM ist das Text-basiertes de-fakto-Standard-Format bei OpenSSL, Apache, u.v.a Open-Source-Projekten. Es ist auch das üblichste Format für CSRs (Certificate Signing Requests). Meist ist nur 1 Komponente in einer Datei. Viele Daemons erlauben oder benötigen aber mehr oder alles (Root-CA und Sub-CAs, Zertifikat und Key, oder alles) in einer Datei. |
PKCS#7 | .p7b, .p7c | Binäres Bundle-Format, gerne für CA-Chains (CA-Ketten, also Root- und Zwischen-Zeritifkate der Zertifizierungsstellen) verwendet. |
PKCS#12 | .p12, .pfx | Binäres Bundle-Format, gerne für Zertifikat samt Key (und evtl. CA-Chain) verwendet. Von vielen GUIs, Windows, und Java-Daemons oft bevorzugt. |
Anleitungen je Betriebssystem bzw. Browser
Die folgende Liste ist im Sinne der Neutralität alphabtisch sortiert ;-)
- Android
- Chrome standalone (z.B. unter Linux)
- Linux: Unter Linux gibt es aufgrund des Desktop-Wildwuchses keinen gemeinsamen Zertifikatsstore für Client-Applikationen, daher für jeden Browser extra, z.B. Chrome standalone, Firefox.
- Firefox (Firefox ignoriert den Schlüsselbund des Betriebssystems bzw. Linux-Desktops, daher muss man hier alle Schritte direkt im Firefox erledigen)
- MacOS (gemeinsamer Schlüsselbund, ausgenommen Firefox)
- Windows (am Beispiel Windows 7)