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:

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:

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)
.key (nur Keys)
.csr (nur CSRs) 
.pem (Alles, einzeln oder als Paket)

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, .p7cBinäres Bundle-Format, gerne für CA-Chains (CA-Ketten, also Root- und Zwischen-Zeritifkate der Zertifizierungsstellen) verwendet.
PKCS#12.p12, .pfxBinä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 ;-)

Umwandlung von PKCS#12 Dateien mit neuen Passwörtern und Kompatibilität mit MacOS oder anderen Altsystemen

Es ist möglich, dass neuere  PKCS#12 Dateien trotz des richtigen Passworts mit einem "MAC Error" oder "MAC Algorithm not supported" Fehler abgelehnt werden.

Dies gilt z.B. für den Import in MacOS. Manche Systeme verlangen auch komplexere Passwörter.

In all diesen Fällen muss eine PKCS#12 Datei umgeschrieben werden, was mit dem Java keytool funktioniert:


keytool -importkeystore -srcstorepass "<oldpw>" -srckeystore original.p12 -srcstoretype PKCS12 -destkeystore compatible.p12 -deststoretype PKCS12 -deststorepass "<newpw>" -J-Dkeystore.pkcs12.legacy

 Hier wir die Datei original.p12 mit dem Passwort <oldpw> auf compatible.p12 mit Passwort <newpw> umgeschrieben.