Linux:Serveur de messagerie instantanée jabber avec Ejabberd
Un article de Djjnet.
Ejabberd sera installé dans le dossier : /usr/local/ejabberd
Sommaire |
Télécharger ejabberd
http://www.process-one.net/en/ejabberd/downloads/ Prendre le Linux Installer.
Base de données pour les comptes utilisateurs
wget http://svn.process-one.net/ejabberd/trunk/src/odbc/mysql.sql mysql -p jabber_dj-j < mysql.sql
Configuration
fichier /usr/local/ejabberd/conf/ejabberd.cfg
Les paramètres importants à modifier sont :
Le ou les administrateurs :
{acl, admin, {user, "djj@jabber.dj-j.net"}}.
Ejabberd peut gérer plusieurs serveurs jabber virtuels :
{hosts, ["jabber.dj-j.net", "im.dj-j.org"]}.
Paramètres spécifiques à chaque serveur :
{host_config, "im.dj-j.org", [{auth_method, odbc},{odbc_server, {mysql, "localhost", "Base", "Login", "Motdepasse"}}]}.
{host_config, "jabber.dj-j.net", [{auth_method, odbc},{odbc_server, {mysql, "localhost", "Base2", "Login2", "Motdepasse2"}}]}.
Langue par défaut :
{language, "fr"}.
Script de démarrage
Créer un fichier /etc/init.d/ejabberd :
#!/bin/bash
#Repertoire d'installation de ejabberd
INSTALL_DIR=/usr/local/ejabberd
case "$1" in
start)
echo "Demarrage du serveur ejabberd"
$INSTALL_DIR/bin/ejabberdctl start
;;
stop)
echo "Arret du serveur ejabberd"
$INSTALL_DIR/bin/ejabberdctl stop
;;
restart)
echo "Arret du serveur ejabberd"
$INSTALL_DIR/bin/ejabberdctl stop
sleep 3
echo "Demarrage du serveur ejabberd"
$INSTALL_DIR/bin/ejabberdctl start
;;
*)
echo $0 "start|stop|restart"
exit 1
;;
esac
Sauvegarde des données du serveur
La sauvegarde de la base de données est à faire en plus, voir l'article d'administration de MySQL.
#!/bin/bash
save_dir=/var/dj-j.net/backup/ejabberd
madate=`date +%Y%m%d`
mkdir -p $save_dir
/usr/bin/find $save_dir -type f -mtime +10 -exec rm -f {} ';' > /dev/null
cp -p /usr/local/ejabberd/conf/ejabberd.cfg $save_dir/ejabberd-$madate.cfg
/usr/local/ejabberd/bin/ejabberdctl dump $save_dir/ejabberd-$madate.dump


