(Je rappel/signal juste que openfire est un très bon serveur jabber tournant sous java)
Ceci est un mémo écrit comme à 00h45, non relu, qui ne sera pas utile à grand monde je penses, mais sait on jamais.
Je considères que vous tournez sous debian lenny et avez openfire installé, sinon il faudra adapter
Il faut tout d’abords vérifier que vous utiliser la bonne version de java qui va bien:
root@serveur:~# update-alternatives --config java Il y a 3 alternatives fournissant « java ». Sélection Alternative ----------------------------------------------- 1 /usr/bin/gij-4.3 + 2 /usr/lib/jvm/java-gcj/jre/bin/java * 3 /usr/lib/jvm/java-6-sun/jre/bin/java
Afin d’utiliser java-6-sun, s’il le faut aptitude install sun-java6-jre.
Ensuite il vous faut générer un certificat via votre fournisseur de certificats, pour moi startssl.com. Un certificat class2 sera utilisé dans cette exemple.
Le problème que j’ai rencontré à été la non utilisation du keytool fourni par java-6-jre.
Je vous donne les commande a effectué pour importer dans le cas d’un startssl:
/etc/init.d/openfire stop cd /etc/openfire/security wget http://www.startssl.com/certs/ca.crt wget http://www.startssl.com/certs/sub.class2.server.ca.crt /usr/lib/jvm/java-6-sun-1.6.0.12/jre/bin/keytool -import -keystore truststore -trustcacerts -alias startcom.ca -file ca.crt
Un mot de passe vous est demandé: changeit
Puis on valide par: oui
/usr/lib/jvm/java-6-sun-1.6.0.12/jre/bin/keytool -import -keystore truststore -alias startcom.ca.sub -file sub.class2.server.ca.crt On rentre le mot de passe: changeit
Ensuite afin de pouvoir configurer un certificat class2, il faut contourner la loi française:
On se rend sur cette page: http://java.sun.com/javase/downloads/index_jdk5.jsp pour y télécharger : Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 5.0
Le fichier jce_policy-1_5_0.zip récupéré sur le serveur, on l’unzip, puis on remplace ceux d’origine:
cp local_policy.jar /usr/lib/jvm/java-6-sun-1.6.0.12/jre/lib/security/local_policy.jar cp US_export_policy.jar /usr/lib/jvm/java-6-sun-1.6.0.12/jre/lib/security/US_export_policy.jar
Ensuite afin de ne pas voir ceci pété par une mise à jour, on « divert » les fichiers:
dpkg-divert --divert /usr/share/doc/sun-java6-jre/local_policy.jar.ori --rename /usr/lib/jvm/java-6-sun-1.6.0.12/jre/lib/security/local_policy.jar dpkg-divert --divert /usr/share/doc/sun-java6-jre/US_export_policy.jar.ori --rename /usr/lib/jvm/java-6-sun-1.6.0.12/jre/lib/security/US_export_policy.jar
A nôter qu’avec ceci, si une mise à jour est disponible, il faudra la mettre à la mimine.
On redémarre ensuite openfire :
/etc/init.d/openfire start
On se rend sur la page web d’admin (port 9090) puis dans l’onglet « Paramètre du serveur », puis « Server Certificates » (en gros la page ssl-certificates.jsp)
Là, vous y supprimez les certificats présent autogénérés en cliquant sur la croix rouge.
On clique ensuite le bouton « import » en haut.
On touche au but, vous copier/coller votre mot de passe de votre certificat, vous coller la key et le certificat, on clique import, et Hop!
Vous aurez le message suivant, ignorer le:
One or more certificates are missing. Click here to generate self-signed certificates or here to import a signed certificate and its private key.
That’s done, vous pourrez relancer votre client préféré, apprécier la non demande de validation du certificat, et t’chatter en toute discretion.
ps: Je relirais à l’occaz
J’ai mis 3 jours à m’en sortir (pas a plein temps je vous rassure)
[ad]