Nous avons retenu FreeIPA (Identity Manager Software) comme brique centrale de l’infrastructure chargée d’assurer la fonction d’annuaire et d’authentification centralisée. Notre choix s’est ensuite porté sur LemonLDAP-NG en tant que portail d’authentification unique sur lequel nous venons authentifier nos services, dont notre solution de messagerie BlueMind. En voici le détail…

PREREQUIS

Afin d’effectuer les manipulations que nous vous présentons, vous devez disposer d’une instance fonctionnelle de LemonLDAP et de Bluemind avec un backend d’utilisateurs LDAP commun.

  • Installation de LemonLDAP-NG.
  • Installation de Bluemind.

Nous verrons l’installation et la configuration de ces produits dans de futurs billets de blog.

STEP 1 : LEMONLDAP-NG

Dans LemonLDAP, il faut activer et configurer le module CAS ici : General Parameters -> Issuer modules -> CAS

Une fois dans le module CAS, vous devez configurer les options de la façon suivante :

  • Activation: On # Activation du module CAS
  • Path: ^/cas/ # URL d’appel au module CAS
  • Use rule: On # Utilisation sans restriction
  • Options
    • CAS login: # Champ de session utilisé pour le login CAS. Par défaut, l’uid.
    • CAS exported attributes: # Attributs que l’on souhaite transmettre à l’application externe
      • mail $mail
      • uid $uid
    • Politique de contrôle d'accès: None # Définit le type de contrôle d’accès fait par le service CAS
    • Nom du module des session CAS: Apache::Session::File # Méthode de stockage des sessions CAS
    • Options du module des sessions CAS: # Options relatives à la méthode de stockage
      • Directory /var/lib/lemonldap-ng/sessions # Emplacement des fichiers de session
      • LockDirectory /var/lib/lemonldap-ng/sessions/lock # Emplacement des fichiers de lock
      • generateModule Lemonldap::NG::Common::Apache::Session::Generate::SHA256 # Module de génération des sessions

Il faut maintenant ajouter un nouveau Virtual Host via Virtual Hosts -> Add virtualhost -> mail.company.tld en adaptant les options suivantes à votre propre environnement :

  • mail.company.tld # URL de votre webmail Bluemind
    • Access rule
      • Default rule:
        • default accept # Pas de filtrage d’utilisateurs sur ce VirtualHost
    • Exported headers: # Pas de headers HTTP spécifiques exportés
    • Form replay: # Pas de rejeu de formulaire
    • Options:
      • Port: # Port spécifique
        • Value -1
      • HTTPS: On # Activation du HTTPS
      • Maintenance mode: Off # Activation du mode maintenance
      • Aliases: # URL aliases

Si comme nous, vous souhaitez utiliser LemonLDAP-NG comme portail applicatif, vous pouvez ajouter des applications à l’interface via General Parameters -> Portal -> Menu -> Categories and applications Pour ajoutez Bluemind, choisissez une categorie, puis configurer l’application comme ci-dessous :

  • Name: Bluemind
  • Description: Email Web Client
  • URI: mail.company.tld
  • Logo: mailappt.png
  • Display application: Enabled

STEP 2 : BLUEMIND

Pour pouvoir utiliser l’authentification CAS de Bluemind, il faut installer le plugin adéquat : Sous Debian-like :

apt install bm-plugin-hps-cas

Sous RedHat-like :

yum install bm-plugin-hps-cas

Il faut redémarrer les services de Bluemind pour prendre en compte l’installation du plugin :

bmctl restart

Pour activer l’authentification CAS, vous avez deux options (au choix) :

  • via l’interface d’administration, en tant qu’admin0 :

 

  • ou en ligne de commande :
    root@mail:~# vim /etc/bm/bm.ini
    [global]
    ...
    casUrl = https://cas.domain.tld/cas/
    casDomain = domain.tld
    

     Attention. Bien que les deux solutions doivent fonctionner, seule la modification du fichier bm.ini semble être efficace. 

Après ces modifications, il faut relancer le service hps, en charge de l’authentification, de Bluemind :

service bm-hps restart

L’authentification est maintenant déléguée au LemonLDAP. Il n’est donc plus possible d’accéder à l’interface d’authentification de BlueMind. Pour utiliser l’authentification native de Bluemind (pour l’utilisateur admin0 par exemple), il faut utiliser l’URL suivante :

https://mail.domain.tld/native

Pour nous contacter : info@worteks.com


Sources :

Défiler vers le haut