Tomcat: StartSSL Zertifikat importieren

Im Normalfall erstellt man bei einem Tomcat Application Server ein Certificate Signing Request (CSR) und lässt mit Hilfe von diesem dann sein Zertifikat signieren.

Oft kommt es aber vor, dass man ein vorhandenes Zertifikat migrieren muss oder ein Zertifikat direkt bereitgestellt kriegt und keine Möglichkeit hat einen CSR zu erstellen.

Als Voraussetzung benötigen wir den unverschlüsselten privaten Schlüssel (ssl.key), den öffentlichen Schlüssel (ssl.crt), das CA Zertifikat (ca.crt) und das Chain Zertifikat (sub.class2.ca.crt).

Mit Hilfe der Webseite von StartSSL erstellen wir aus dem privaten Schlüssel (ssl.key) und dem öffentlichen Schlüssel (ssl.crt) einen PKCS12 Store (ssl.p12).

Als erstes erstellen wir einen neuen Keystore aus dem generierten PKCS12 Store:

# keytool -v -importkeystore -srckeystore ssl.p12 -srcstoretype PKCS12 -destkeystore .keystore -deststoretype JKS

Anschließend prüfen wir ob das Zertifikat erfolgreich hinzugefügt wurde:

# keytool -list -keystore .keystore

Wie man hier sieht hat der Schlüssel automatisch den Namen “startcom pfx certificate” bekommen. Diesen benennen wir nun in tomcat um (dies ist der Alias in der server.xml):

# keytool -changealias -v -alias “startcom pfx certificate” -destalias tomcat -keystore .keystore

Als nächstes müssen wir das CA Zertifikat importieren:

# keytool -import -alias startcom.ca -file ca.crt -trustcacerts -keystore .keystore

Und auch das Chain Zertifikat:

# keytool -import -alias startcom.ca.sub -file sub.class2.ca.crt -trustcacerts -keystore .keystore

Nun nur noch den Inhaber des Keystores auf den Nutzer setzen, mit dem der Tomcat ausgeführt wird:

# chown tomcatuser.tomcatgroup .keystore

Und die Rechte korrigieren

# chmod 750 .keystore

Und fertig!

05 Aug

by 

Leave a reply

Created with Snap