Gerade ein wenig mit Funambol herum gespielt. Da mein Nokia E71 ein wenig empfindlich im Bezug auf Zertifikate ist, sollte der Funambol auch das Zertifikat meines Servers haben, welches eh schon im Telefon als vertrauenswürdig hinterlegt ist (CAcert.org signed).
Natürlich ist so was bei Java immer alles nicht so einfach. Zertifikat kein Problem, aber Private Key importieren ist nicht. Aber wie ich dann raus gefunden habe, gibt es mit keytool in Java 1.6 endlich die Möglichkeit einen Private Key + Zertifikat zu importieren, wenn ein PKCS#12 File vorliegt.
Der ist ja dank Openssl recht schnell erstellt:
openssl pkcs12 -export -in /etc/apache2/server.crt -inkey /etc/apache2/server.key -out /root/server.p12
Und dann kann der Import losgehen:
keytool -importkeystore -deststorepass changeit -destkeypass changeit -srckeystore /root/server.p12 -srcstoretype PKCS12 -srcstorepass 1234 -srcalias 1 -destalias tomcat
Wichtig ist “-srcalias 1”, damit keytool auch weiß, dass es den ersten Datensatz aus dem P12 File lesen soll. Außerdem ist in meinem Fall (Funambol) noch wichtig, dass “-destalias tomcat” angegeben wird.
Nach einem Neustart des Funambol Dienstes liefert er das neu importierte Zertifikat aus.