Vous êtes ici : Accueil / Debian GNU/Linux / Serveurs / Autres / Installer OpenFire sur Debian

Installer OpenFire sur Debian

Par Pierre-Yves Landuré Dernière modification 04/10/2017 08:33

OpenFire est un serveur XMPP (cad. Jabber) écrit en Java. Il a l'avantage d'être particulièrement simple à mettre en place et à administrer. Son inconvénient majeur : il ne peut gérer qu'un seul domaine par instance (pas de support des hôtes virtuels). Cet article vous aide à configurer OpenFire sur Debian GNU/Linux.

Ce guide est testé sur:

  • Debian 5.0 Lenny
  • Debian 6.0 Squeeze

Pré-requis

Ce guide nécessite un serveur MySQL disposant du script mysql-tools disponible dans le guide Installer et configurer MySQL sur Debian.

Paramètres

Renseignez le nom de domaine ou sera disponible l'application :

DOMAIN="jabberd.domaine-exemple.fr"

Renseignez le nom d'hôte de votre serveur MySQL (si vous ne savez pas de quoi il s'agit, ne modifiez pas cette valeur) :

MYSQL_HOST="localhost"

Si votre serveur MySQL n'est pas local, ce guide effectuera une connexion SSH pour y créer la base de données.

Installation

Installez la machine virtuelle Java de Sun :

if [ -n "$(command apt-cache search sun-java6-jdk \
    | command grep sun-java6-jdk)" ]; then
  command apt-get install sun-java6-jdk
  command update-java-alternatives --set java-6-sun
else
  command apt-get install sun-java5-jdk
  command update-java-alternatives --set java-1.5.0-sun
fi

Récupérez l'URL de la dernière version d'Openfire :

SOURCE_URL="$(command wget --quiet --output-document=- \
    'http://www.igniterealtime.org/downloads/index.jsp' \
    | command grep 'openfire_.*_all.deb' \
    | command sed 's|^.*href=".*file=\([^"]*\)".*$|http://www.igniterealtime.org/downloadServlet?filename=\1|g')"

Téléchargez le paquet Debian de OpenFire :

command wget "${SOURCE_URL}" --output-document='/tmp/openfire.deb'

Installez OpenFire:

command dpkg -i '/tmp/openfire.deb'

Démarrez OpenFire si nécessaire:

/etc/init.d/openfire start

Mise en place de la base de données MySQL

Créez la base de données :

if [ "${MYSQL_HOST}" = "localhost" ]; then
  MYSQL_PARAMS=$(command mysql-tools create-domain-db "${DOMAIN}")
else
  command echo "Saisissez le mot de passe de l'utilisateur root MySQL :"
  command read PASSWORD
  MYSQL_PARAMS=$(command ssh "root@${MYSQL_HOST}" "command mysql-tools create-domain-db '${DOMAIN}' '$(command cat /etc/mailname)' '${PASSWORD}'")
fi

Récupérez les paramètres de la nouvelle base de données. Notez précieusement les paramètres d'identification pour utilisation ultérieure :

MYSQL_DB="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_DB" \
    | cut --delimiter="=" --fields="2-")"
MYSQL_USER="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_USER" \
    | cut --delimiter="=" --fields="2-")"
MYSQL_PASSWORD="$(echo "${MYSQL_PARAMS}" | command grep -e "^MYSQL_PASSWORD" \
    | cut --delimiter="=" --fields="2-")"
echo "${MYSQL_PARAMS}"

Calculez l'adresse de la base de données MySQL pour utilisation lors de la configuration d'Openfire :

echo "\$jdbc:mysql://${MYSQL_HOST}:3306/${MYSQL_DB}"

Configuration

Connectez vous en HTTP à votre serveur sur le port 9090. Vous pouvez obtenir l'URL de connexion à l'aide de la commande :

echo "http://${DOMAIN}:9090"

Procédez à la configuration du serveur

Remarque : La même URL vous permet d'accéder à votre interface d'administration.

Paramètres du serveur

  • Domaine : Saisissez le domaine Jabber que vous comptez associer à votre serveur. Vos utilisateurs Jabber seront de la forme name@domaine.

Sauvegardes

Pour sauvegarder votre installation, je vous propose d'utiliser Backup Manager. Pour l'installer, vous pouvez suivre le guide:

Installer et configurer Backup Manager sur Debian

Une fois Backup Manager installé, configurez la sauvegarde des fichiers de l'application :

command backup-manager-tools add "/var/lib/openfire"

Important: Sauvegarder les fichiers ne suffit pas ! Il faut aussi sauvegarder la base de données. La procédure pour ce faire est disponible dans l'article MySQL sur Debian.

Mise à jour

Récupérez l'URL de la dernière version d'Openfire :

SOURCE_URL="$(command wget --quiet --output-document=- \
    'http://www.igniterealtime.org/downloads/index.jsp' \
    | command grep 'openfire_.*_all.deb' \
    | command sed 's|^.*href=".*file=\([^"]*\)".*$|http://www.igniterealtime.org/downloadServlet?filename=\1|g')"

Téléchargez le paquet Debian de OpenFire :

command wget "${SOURCE_URL}" --output-document='/tmp/openfire.deb'

Installez la nouvelle version d'OpenFire:

command dpkg -i '/tmp/openfire.deb'

Redémarrez OpenFire:

/etc/init.d/openfire restart

Remerciements