Prosody est un serveur XMPP (Jabber) extrêmement simple à mettre en place. En un tour de main, vous avez un serveur XMPP. Par contre, si on veut s'appuyer sur un annuaire LDAP pour l'authentification, c'est plus galère.
Voici ce que j'ai sur mon serveur :
- Debian 8 Jessie
- Prosody 0.9.8-1 provenant des dépôts de Prosody
Installation des paquets
apt-get install lua-cyrussasl sasl2-bin
Configuration de saslauthd
Dans /etc/default/saslauthd
:
START=yes
MECHANISMS="ldap"
Dans /etc/saslauthd.conf
:
ldap_servers: ldap://ldap.example.org
ldap_search_base: ou=users,dc=example,dc=org
Vous pouvez rajouter des éléments d'authentification dans ce fichier, comme ldap_bind_dn
et ldap_bind_pw
. Voir ce post de blog pour quelques détails en plus.
Dans /etc/sasl2/prosody.conf
:
pwcheck_method: saslauthd
mech_list: PLAIN
À partir de là, on peut lancer le dæmon et tester :
service saslauthd start
testsaslauthd -u user -p secret
Configuration de prosody
Dans /etc/prosody/prosody.cfg.lua
, ajouter :
authentication = "cyrus"
cyrus_service_name = "prosody"
Pour que l'utilisateur prosody
ait accès à la socket de saslauthd
, on prendra soin de l'ajouter au groupe sasl
:
gpasswd -a prosody sasl
Pour vous assurer que prosody
ait accès à saslauthd
, faites :
su prosody -s /bin/bash
/usr/sbin/testsaslauthd -u user -p secret
Et un petit coup de restart derrière :
service prosody restart
Enjoy 😉