vendredi 2 mai 2008

Configuration simple pour votre serveur jabber 1.4

L'essentiel de la configuration du serveur s'effectue en intervenant sur le fichier /usr/local/jabber/jabber.xml (ou /etc/jabber/jabber.xml si vous avez utilisé un paquet Mandrake). Avant toute modification, il est judicieux de faire une copie de secours du fichier original

NB : le fichier jabber.xml étant au format XML, la mise en commentaire est réalisée en utilisant des balises : (balise fermante), comme en HTML



-Ouvrir le fichier jabber.xml et modifier la ligne:

<host><jabberd:cmdline
flag="h">localhost</jabberd:cmdline></host>


-en remplaçant localhost par votre nom de domaine (jabber.masociete.com par exemple), ou par l'adresse IP de votre serveur Jabber (déconseillé). Si vous créer un serveur jabber interne, sans lien avec internet, vous pouvez commenter cette ligne:

<update><jabberd:cmdline
flag="h">localhost</jabberd:cmdline></update>


-C'est la commande permettant de contrôler automatiquement la présence de mise à jour sur le serveur jabber.org. Configurer alors le répertoire destiné à stocker les fichiers de profils des utilisateurs:

mkdir -p /usr/local/jabber/spool/jabber.masociete.com


-en remplaçant jabber.masociete.com par le nom que vous avez indiqué ci-dessus à la place de localhost dans la balise du fichier jabber.xml. Démarrez Jabber et tester son fonctionnement sans cryptage ssl (voir Démarrer/Arrêter le serveur]). Si tout fonctionne normalement, on peut passer à la suite.

Il faut maintenant créer la clé de cryptage SSL. Rester dans le répertoire /usr/local/jabber et repérer l'emplacement de l'éxécutable openssl :
which openssl

-Il réside normalement dans le répertoire /usr/bin/openssl. C'est ce chemin qui devra figurer dans la première ligne du fichier keygen.sh.
Créer un fichier keygen.sh:
$ vi keygen.sh

-et taper le code suivant:

#!/bin/sh
## régler le chemin ci desous sur le chemin de openssl
OPENSSL=/usr/bin/openssl
## Génération du certificat et de la clé
$OPENSSL req -new -x509 -newkey rsa:1024 -keyout privkey.pem -out key.pem
## effacement de la phrase servant de mot de passe
$OPENSSL rsa -in privkey.pem -out privkey.pem
## Assemblage
cat privkey.pem >> key.pem
## Effacement
rm privkey.pem


-Enregistrer et rendre exécutable ce fichier:
chmod u+x keygen.sh

-Exécuter ce fichier:
./keygen.sh

-Répondre aux questions posées. A la fin de l'éxécution, vous devez trouver dans le répertoire /usr/local/jabber un fichier key.pem. Tester alors le mode ssl :
openssl s_client -connect 192.168.0.1:5223

-en remplaçant 192.168.0.1 par l'adresse ip de votre serveur. Vous devez recevoir une réponse du type:

CONNECTED(00000003)
depth=0 /C=FR/ST=FRANCE/L=Departement/O=organization/OU=Jabber/CN=contact name/Email=email address
verify error:num=18:self signed certificate
verify return:1
depth=0 /C=FR/ST=FRANCE/L=Departement/O=organization/OU=Jabber/CN=contact name/Email=email address
verify return:1
---
Certificate chain
0 s:/C=FR/ST=FRANCE/L=Departement/O=organization/OU=Jabber/CN=contact name/Email=email address
i:/C=FR/ST=FRANCE/L=Departement/O=organization/OU=Jabber/CN=contact name/Email=email address
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIDdDCCAt2gAwIBAgIBADANBgkqhkiG9w0BAQQFADCBiTELMAkGA1UEBhMCVVMx EDAOBgNVBAgTB0FyaXpvbmExEDAOBgNVBAcTB1Bob2VuaXgxETAPBgNVBAoTCERJ TExJR0FGMQ8wDQYDVQQLEwZKYWJiZXIxFzAVBgNVBAMTDkNocmlzIE1jRG9uYWxk MRkwFwYJKoZIhvcNAQkBFgpwaHgtamFiYmVyMB4XDTAxMDYwNjAxNTMwNloXDTAx MDcwNjAxNTMwNlowgYkxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRAw DgYDVQQHEwdQaG9lbml4MREwDwYDVQQKEwhESUxMSUdBRjEPMA0GA1UECxMGSmFi YmVyMRcwFQYDVQQDEw5DaHJpcyBNY0RvbmFsZDEZMBcGCSqGSIb3DQEJARYKcGh4 LWphYmJlcjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEArbyosgcyf9VNpPZc +nU6yKdfAsOSpBu/n/MkChis5POuLkXo62WEoiYuDYF6bmd6XYaVC7ZwItcCwTIv OqdErh4u82E2qeArN0j9eq6EX+MMrYBSkv2nzwabNkkWPCS9VaOsVWx+kvRw598p ACyANf52liFhfDGISIoTlBOn+ysCAwEAAaOB6TCB5jAdBgNVHQ4EFgQUv9mxa1Yj o7Um9ZK0OSW0phiG23AwgbYGA1UdIwSBrjCBq4AUv9mxa1Yjo7Um9ZK0OSW0phiG 23ChgY+kgYwwgYkxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRAwDgYD VQQHEwdQaG9lbml4MREwDwYDVQQKEwhESUxMSUdBRjEPMA0GA1UECxMGSmFiYmVy MRcwFQYDVQQDEw5DaHJpcyBNY0RvbmFsZDEZMBcGCSqGSIb3DQEJARYKcGh4LWph YmJlcoIBADAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBAUAA4GBAGzAwYHlBY+P ioqT8O4t4o30MkIDR7Q9Wqc0Uv1dUXViOKDzkzHXV/gB89yOmFVf6qNg7GB4rexs 0/fMmlSOkvXJPRCvmX05J9c5JpvcprkTjp7ECHPNZgaGsdNT+lilJ2f83uTvpJgM KoQY9OKbV4NnkxDM8lxCjvIvGvrbvnkR
-----END CERTIFICATE-----
subject=/C=FR/ST=FRANCE/L=Departement/O=organization/OU=Jabber/CN=contact name/Email=email address
issuer=/C=FR/ST=FRANCE/L=Departement/O=organization/OU=Jabber/CN=contact name/Email=email address
---
No client certificate CA names sent
---
SSL handshake has read 1042 bytes and written 320 bytes
---
New, TLSv1/SSLv3, Cipher is DES-CBC3-SHA
Server public key is 1024 bit
SSL-Session:
Protocol : TLSv1
Cipher : DES-CBC3-SHA
Session-ID: A23C1FB04F635EC09F92CBD722DAB8BB1503B54D4A0E9C61B3708CB33D6ED372
Session-ID-ctx:
Master-Key: C8C25C17D5B4312E1440DBC956FF5738829C50E16E8E704010B84B1A8D33C405995D8B7FB02E06988890C7ED400ACF32
Key-Arg : None
Start Time: 991792771
Timeout : 300 (sec)
Verify return code: 0 (ok)
---


-Ouvrir le fichier /usr/local/jabber/jabber.xml et valider la prise en charge du mode SSL en repérant la ligne:
<ip port='5222'/>

-et en ajoutant la ligne suivante à la suite:

<ssl port='5223'>192.168.0.1< /ssl >

-De même, repérer la ligne:
<ssl> /usr/local/jabber/key.pem < /ssl >

-Redémarrez le serveur et tester avec cryptage ssl (voir [Démarrer/Arrêter le serveur]).

Aucun commentaire: