Un serveur Jabber couplé à Active Directory avec Openfire
Si votre entreprise a besoin d'un outil de discussion par messagerie instantanée, ne cherchez plus. Openfire est un serveur Jabber facile à administrer (en web) permettant d'utiliser des comptes Active Directory, le tout en quelques clics.
Il est facile à mettre en place et à administrer grâce à son interface web complète et intuitive. Les avantages d'une messagerie Jabber sont multiples : les salons, la multitude de clients, le serveur en interne de l'entreprise, etc.
Présentation
Openfire fonctionne en Java, de quoi grimacer à première vue, mais il fonctionne bien et son exploitation est aisée, on peut donc lui pardonner. Pour un serveur sans interface graphique, il faut disposer d'une version de java headless. C'est le cas sur Debian et Ubuntu, mais pas sur CentOS. Heureusement pour nous, l'équipe de Openfire met à disposition un rpm contenant cette version :)
Dans le tutoriel suivant c'est CentOS 6.2 x86_64 qui sera utilisé, mais seule l'étape d'installation change, la configuration et le couplage avec A.D est identique.
Active Directory
Dans l'exemple j'utilise un serveur Windows2008R2 pour l'Active Directory. J'ai créé une OU avec des comptes bidons :
Installation
Nous partons donc d'un système CentOS fraîchement installé et relié au réseau. Commencez par récupérer, sur le site officiel, la version RPM de Openfire. Vous pouvez la transférer sur le serveur en sftp (en utilisant le login root), ou alors la récupérer directement sur internet avec wget :
# yum install -y wget # wget http://www.igniterealtime.org/downloadServlet?filename=openfire/openfire-3.7.1-1.i386.rpm
Note : pensez bien à remplacer le lien dans cet article par celui pointant vers la toute dernière version distribuée sur le site.
# yum localinstall openfire-3.7.1-1.i386.rpm
Note : vous remarquerez que nous tournons sur CentOS 64 bits, mais que ce package Openfire est 32 bits. Il faut donc installer le paquet glibc 32 bits :
# yum install glibc.i686
Configuration
Attention, par défaut CentOS dispose du parefeu activé, il va falloir ouvrir les différents ports permettant non seulement à Jabber de fonctionner, mais aussi aux administrateurs de se connecter à la console web.
Pour faire la configuration du parefeu on peut utiliser system-config-firewall-tui, la procédure d'installation est décrite ici.
# system-config-firewall-tui
Il faut ouvrir les ports :
- 5222 : Jabber Serveur / Client
- 5269 : Jabber Serveur / Serveur
- 9090 : Port de la console web Openfire
Ensuite prenez garde à bien utiliser le DNS de votre organisation... qui est souvent l'Active Directory lui-même. Ajoutez son IP dans /etc/resolv.conf si ce n'est pas déjà bon.
Pour finir, lancez Openfire :
# /etc/init.d/openfire start
Mise en place
Ouvrez votre navigateur web favori et entrez l'adresse IP de votre serveur Openfire suivi de 9090. Par exemple : http://10.49.1.76:9090.
Language Selection
Langue de l'interface.
Paramètres du Serveur
Laisser par défaut.
Paramètres de base de données
A vous de voir si vous voulez utiliser une base externe ou non. En cas de doutes choisissez la "Base de Données Embarquée".
Paramètres de Profil
Etape 1
Il faut sélectionner "Serveur LDAP" pour pouvoir nous connecter à notre Active Directory.
Type : Active Directory Hôte : IP de l'Active Directory Port : 389 Base DN : OU=_XMPP,DC=freeman,DC=lan DN Administrateur : freeman\\administrateur
En bas, le bouton "Tester les paramètres" va vous permettre de savoir si tout est bon.
Etape 2
Tout laisser par défaut. Utilisez une fois de plus le bouton de test en bas, il va charger un utilisateur dans l'A.D et l'afficher.
Etape 3
A voir si vous voulez utiliser les groupes.
Compte Administrateur
Vous allez devoir sélectionner un utilisateur dans l'A.D qui sera administrateur... par exemple j'ai sélectionné adminfreeman.
Terminé !
Console Openfire
Allez dans l'onglet Utilisateurs/Groupes pour visualiser vos utilisateurs importés de l'A.D...
Note sur l'ajout d'utilisateurs : Lorsque vous ajoutez un utilisateur dans l'A.D (dans la bonne OU bien entendu) celui-ci apparait dans la liste des utilisateurs sur Openfire.
Connexion avec un client
Dans l'exemple j'utilise Pidgin. Voici les paramètres à utiliser :
Et voilà !