Contexte :
Pourquoi ?
La mise en place d’un tel serveur permet à une équipe de pouvoir échanger des informations de façon sécurisé a l’intérieur de l’entreprise. Rien ne sort sur internet tout passe seulement par le serveur Prosody. De plus le protocole XMPP est compatible avec toutes les plateformes (Windows, Mac, Linux, iOS, etc…) alors, pourquoi s’en priver ?
Objectifs :
- Préparer la machine
- Installer prosody
- Générer un certificat auto-signé
- Configurer prosody
- Ajouter des utilisateurs
- Configuration de Pidgin (Client XMPP sous Windows)
I – préparation de la machine :
Changer le nom de la machine :
nano /etc/hostname
Redémarrer pour mettre à jour le nom de la machine :
init 6
Après redémarrage le nouveau nom de la machine apparaît : « root@im_server:~# »
II – Installation de Prosody :
Avant toute installation il est fortement recommandé de mettre à jour la machine
apt-get -y update && apt-get -y upgrade
Installer le paquet Prosody :
apt-get install prosody
IV – Génération d’un certificat auto-signé :
Pour pouvoir s’échanger des messages de façon sécurisée il va falloir créer un certificat.
Création de la clé de cryptage : (exemple sur le domaine lan.local)
openssl genrsa -out /etc/prosody/certs/im.lan.local.key 2048 #Requête open ssl pour sortir un fichier « im.lan.local.key » contenant une clé de cryptage générée en 2048 bits.
Création du certificat :
openssl req -new -x509 -key /etc/prosody/certs/im.lan.local.key -out /etc/prosody/certs/im.lan.local.cert -days 1095 #Génération du certificat « im.lan.local.cert » à partir de la clé de cryptage.
Exemple de création de certificat :
root@im_server:~# openssl req -new -x509 -key /etc/prosody/certs/im.lan.local.key -out /etc/prosody/certs/im.lan.local.cert -days 1095 You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:FR State or Province Name (full name) [Some-State]:Deux-Sevres Locality Name (eg, city) []:NIORT Organization Name (eg, company) [Internet Widgits Pty Ltd]:Lan Industry Organizational Unit Name (eg, section) []:SECINFO Common Name (e.g. server FQDN or YOUR name) []:lan.local Email Address []:[email protected]
V – Configuration de Prosody :
Se rendre dans le fichier de configuration de Prosody :
nano /etc/prosody/prosody.cfg.lua
Ajouter un futur administrateur en modifiant la ligne « admins« :
admins = {"[email protected]"}
Mettre à jour l’emplacement de la clé et du certificat en modifiant la ligne « ssl« :
ssl = { key = "/etc/prosody/certs/im.lan.local.key"; certificate = "/etc/prosody/certs/im.lan.local.cert"; }
Changer la méthode d’identification en modifiant la ligne « authentication » :
authentication = "internal_hashed"
Ajouter à la fin du ficher le nom du serveur :
host "im.lan.local"
Sauvegarder et quitter :
CTRL+X, o, touche Entrée
Recharger & redémarrer le service Prosody :
root@im_server:~# /etc/init.d/prosody reload [ ok ] Reloading prosody configuration (via systemctl): prosody.service. root@im_server:~# /etc/init.d/prosody restart [ ok ] Restarting prosody (via systemctl): prosody.service.
VI – Ajout d’utilisateurs :
prosodyctl adduser [email protected] prosodyctl adduser [email protected]
VII – Installation et configuration de Pidgin (client XMPP) :
Le client est téléchargeable ici : https://www.pidgin.im/
A la première ouverture, cliquer sur « ajouter » :
Dans l’onglet « essentiel », Renseigner le protocole, l’utilisateur, le domaine, le mot de passe et l’alias local :
Dans L’onglet « avancé », renseigner le serveur de connexion :
Après avoir valider les paramètres, accepter le certificat auto-signé :
Ajouter le contact Rémi pour voir si tout fonctionne :
Sur le PC de Rémi apparait une demande d’ami, il faut l’accepter :
Rémi est amené suite à l’autorisation à ajouter le contact Alex :
Test de conversation… :
Cet article totalise 340 vues 👍 Merci pour votre visite! 🙂
0 commentaire