Einführung / Konfiguration des FirstSpirit-Servers / Konfiguration des HTTPS-Servers / Vertrauenswürdiges Sicherheitszertifikat

Vertrauenswürdiges Sicherheitszertifikat installieren

Damit ein Sicherheitszertifikat als vertrauenswürdig angesehen wird, muss es von einer offiziellen Zertifizierungsstelle (CA), z. B. http://thawte.com, digital unterschrieben (signiert) werden. Um ein solches Sicherheitszertifikat zu erstellen, sind für FirstSpirit 2 Verfahren möglich: entweder über openssl (siehe http://www.openssl.org/) oder über das bei Java mitgelieferte keytool. Über openssl erstellte Zertifikate haben den Vorteil, von beliebigen anderen Webservern wie Apache, IIS, Tomcat und anderen verwendet werden zu können. Ein über keytool erstelltes Zertifikat kann ausschließlich für Java-basierte Webserver verwendet werden.

Erstellen eines Sicherheitszertifikats über keytool

Zunächst wird ein privater Schlüssel erstellt. Dazu ist folgender Befehl einzugeben, nachdem in das Installationsverzeichnis des FirstSpirit-Servers gewechselt wurde:

keytool –genkey –keystore conf/fs-keystore.jks –storepass=mypass –
alias fs5.yourdomain.net –keyalg RSA –keysize 2048 –validity 3650

Mit „keysize“ wird die Schlüssellänge und mit „validity“ die Gültigkeit in Tagen angegeben. Bei der Abfrage nach dem Key-Password sollte das gleiche wie bei „–storepass“ angegeben werden. Bei der Abfrage nach „Vor- und Nachname“ bzw. "first and last name" muß der vollqualifizierte Hostname angegeben werden, wie er vom Client aus sichtbar ist, z. B. fs5.yourdomain.net.

Im nächsten Schritt muss eine Zertifizierungsanforderung erzeugt werden:

keytool –certreq –keystore conf/fs-keystore.jks –storepass 
changeit –alias fs5.yourdomain.net –file request.csr

Die Datei „request.csr“ wird anschließend der Zertifizierungsstelle zugesendet. Das erhaltene Antwortzertifikat (public.pem) muss in den Zertifikatsspeicher importiert werden:

keytool –import –trustcacerts –keystore conf/fs-keystore.jks \–
storepass changeit –alias fs5.yourdomain.net –file public.pem

Falls die Zertifizierungsstelle Zertifikate über eine Hierarchie herausgibt (certificate chain), müssen alle Zertifikate der Hierarchie entweder schon im Zertifikatsspeicher der Java-VM vorliegen oder in den Zertifikatsspeicher importiert werden, ansonsten wird von keytool die Fehlermeldung „Failed to establish chain from reply“ ausgegeben. Zum Importieren der Zertifikate der Hierarchie muss der Befehl für jede Datei aufgerufen und dabei bei „-alias“ z. B. immer der Dateiname angeben werden:

keytool –import –trustcacerts –keystore conf/fs-keystore.jks –
storepass changeit –alias chain_CA_1 Zertifikat1 –file
chain_CA_1.pem

In einigen Fällen kann es vorkommen, dass die Zertifizierungsstellen Zertifikate versenden, die vom keytool nicht verstanden werden. Diese Zertifikate können mit OpenSSL umgewandelt werden, z. B.:

openssl x509 –in public.crt –out public.pem –outform PEM

Erstellen eines Sicherheitszertifikats über openssl

Zunächst den privaten Schlüssel erstellen:

openssl genrsa -out private.key 2048

Nun wird eine Zertifizierungsanforderung erstellt (request.csr), die anschließend an die Zertifizierungsstelle (CA) zum Signieren übergeben wird:

openssl req -new -key private.key -out request.csr

Die Zertifizierungsstelle liefert nun den öffentlichen signierten Schlüssel („Zertifikat“) zurück, meistens im PEM-Format als Textdatei (public.pem), die mit „-----BEGIN CERTIFICATE-----“ beginnt. Privater und signierter öffentlicher Schlüssel müssen nun in einem Zertifikatsspeicher im PKCS12-Format für den FirstSpirit-Webserver zusammengefaßt werden. Dazu zunächst in das Installationsverzeichnis des FirstSpirit-Servers wechseln und nachfolgendes Kommando zum Erstellen des Zertifikatsspeichers eingeben. Dabei wird nach einem zu wählenden Passwort für den Zertifikatsspeicher gefragt. Dieses Passwort wird gleich in die Webserver-Konfiguration eingetragen. Im Beispiel ist dort „changeit“ gewählt.

openssl pkcs12 -inkey private.key -in public.pem -export -out 
conf/fs-keystore.p12 -caname root

© 2005 - 2024 Crownpeak Technology GmbH | Alle Rechte vorbehalten. | FirstSpirit 2024.4 | Datenschutz