9 mai 2021
...et servez-vous en partout !
Je ne sais pas combien de fois j’ai essayé d’installer un serveur XMPP chez moi. Aujourd’hui, j’ai une solution qui marche, alors j’en profite pour la documenter.
Tout d’abord quel est l’intérêt ? Imaginez, vous avez deux ou trois ordinateurs chez vous. Vous souhaitez partager un fichier ou un lien URL d’un ordinateur à l’autre. Vous avez installé un serveur samba et vous découvrez les joies du :
"Je t’ai mis un fichier sur le NAS !
Ah bon ? Où ça ?"
Bref, rien de très pratique. Et pour un lien URL, vous pouvez toujours la copier dans un fichier, mais vous voyez qu’on en revient au même problème, sans compter que ce n’est pas très convivial.
Vous avez rippé un Blu-ray sur votre PC et vous souhaitez le transférer sur une tablette ? Vous souhaitez vraiment attendre la fin de la copie sur le NAS pour pouvoir relancer le téléchargement sur la tablette ? Pire, vous voulez faire ça alors que vous êtes partis en vacances...
Avec le XMPP, vous avez le transfert en pair à pair, la notification qu’un message est arrivé et bien plus encore.
Alors commençons !
Nous allons configurer un serveur XMPP étape par étape. Le nom de domaine sera xmpp.poivron-robotique.fr.
Ce dont vous avez besoin
– 1 serveur : nous utiliserons un RaspberryPi 1 (mais les instructions marcheraient avec les version 2, 3 et 4)
– 1 routeur avec l’accès à la configuration : nous utiliserons la box fournie par notre opérateur
– 1 nom de domaine : ici, xmpp.poivron-robotique.fr
Ce que nous utilisons
– Le serveur XMPP ejabberd
– Les services de Let’s Encrypt
Une petite note sur l’investissement nécessaire :
Vous allez passer du temps à configurer le serveur. Vous pourriez vouloir faire l’économie d’un nom de domaine. Ne la faîte pas ! Un nom de domaine n’est pas très onéreux (certains sont gratuits, le .fr est à 10€/an) et ce serait vraiment dommage de passer tout ce temps et le voir gâché par ça. C’est une erreur que j’avais faite précédemment.
Nous mettons à jour la distribution Linux (Raspbian), installons le serveur ejabberd et le configurons de manière à pouvoir se connecter en étant sur le réseau local.
XMPP - Votre serveur sur internet
Connectons le serveur à internet : redirection de port et mise à jour de la configuration du serveur.
Dotons le serveur d’un nom de domaine.
Utilisons ce nom de domaine pour obtenir des certificats de chez Let’s Encrypt avec Certbot.
XMPP - Partager des fichiers efficacement
Améliorons le partage de fichiers avec le module mod_http_upload.
XMPP - Interface d’administration
Dotons le serveur d’une interface d’administration web.
Activons les appels audio et vidéo.