Adrien's log

Yet Another Note Pad

Serveur eJabberd simplement

by adrien on 14 février 2011

Jabber

Jabber est un système de messagerie basé sur le protocole libre XMPP utilisé entre autre par Google (Gtalk) et Facebook. Il est décentralisé et ouvert : avec votre serveur, vous pourrez discuter avec des personnes présentes sur d’autres serveurs. Vous aurez une adresse du style VOTREPSEUDO@VOTREDOMAINE.TDL. Il est également possible de se connecter depuis plusieurs endroits, votre adresse deviendra donc : PSEUDO@DOMAINE.TLD/NOMDUCLIENT. Autre avantage : les passerelles. Elles permettent de se connecter, directement via le serveur, aux services propriétaires comme Windows Live Messenger, AIM, ou encore Yahoo! Messenger.

Nous utiliserons pour cette article le logiciel ejabberd et nous installerons également une passerelle vers Windows Live avec Pymsnt.

Installation

apt-get install ejabberd

Ca c’est fait !

Configuration

La configuration est très simple et centralisée dans le fichier /etc/ejabberd/ejabberd.cfg.

Le fichier est bien fourni en documentation, mais les lignes qui nous intéressent sont les suivantes:

Pour définir un administrateur :
%% Admin user
{acl, admin, {admin, "", "domaine.tld"}}.
Pour le nom du serveur :
%% Hostname
{hosts, ["hostname"]}.
Pour les ports :
{listen,
[
{5222, ejabberd_c2s, [
 {access, c2s},
 {shaper, c2s_shaper},
 {max_stanza_size, 65536},starttls, {certfile, "/etc/ejabberd/ejabberd.pem"}
 ]},
{5269, ejabberd_s2s_in, [
  {shaper, s2s_shaper},
  {max_stanza_size, 131072}
  ]},
 
%% MSN Transport
{5347, ejabberd_service, [
  {ip, {127, 0, 0, 1}},
  {access, all},
  {host, "msn.domaine.tld", [{password, "XXX"}]}]},
]}.
Je l’ai un peu épuré pour laisser ce dont nous nous servirons. Comme nous le voyons, vous devrez ouvrir les ports
  • 5222 : Pour la connexion du client vers le serveur;
  • 5269 : Si vous souhaitez que des contacts sur d’autres serveur puissent vous joindre.
Il n’est pas utile d’ouvrir le port 5347 pour la passerelle WLM puisqu’elle se trouvera en local, créez juste un mot de passe pour la passerelle et le serveur Jabber à la place des XXX.

Gestion des d’utilisateurs

Pour créer un utilisateur, cela sera la commande :

ejabberdctl register PSEUDO DOMAINE.TLD XXXX
Où PSEUDO est votre pseudo (ouais), DOMAINE.TLD le nom de domaine qui suivra votre pseudo dans l’adresse et enfin, XXXX qui représente votre mot de passe.
La suppression ce passe ainsi :
ejabberd unregister PSEUDO DOMAINE.TLD
Pour les variables, voir ci-dessus.
Voilà pour les principales commandes, si vous voulez en savoir plus, je vous invite à lire la page de manuel d’ejabberdctl.

Installation de la passerelle WLM

Update : Il semble que pymsnt ne fonctionne plus. Le protocole ayant évolué tandis que pymsnt n’est plus maintenu, la connexion via cette passerelle est devenu impossible.

apt-get install pymsnt

Notez qu’il vous installerons python si ce n’est déjà fait.

Pour la configuration, tout ce passe dans /etc/pymsnt.conf.xml

Nous remplirons les balises :
  • jid : qui sera notre msn.domaine.tld de tout à l’heure;
  • host : qui est l’adresse d’écoute, nous laisserons 0.0.0.0 dans un premier temps afin d’éliminer les erreurs de configuration;
  • discoName : qui sera le nom de la passerelle, « Passerelle MSN » sonne plutôt bien je trouve;
  • mainServer : qui est l’adresse du serveur Jabber, pour nous c’est 127.0.0.1;
  • port : qui correspond au port 5369 dans la configuration d’ejabberd;
  • et enfin secret qui est le mot de passe que nous avons renseigné dans la configuration précédente.
Et voila, votre serveur Jabber est prêt, vous pouvez dès à présent vous connecter et communiquer.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *