tuto:ipasserelle:authentification:installer_lemonldap_sur_sme

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
tuto:ipasserelle:authentification:installer_lemonldap_sur_sme [02/12/2010 15:37]
dani créée
tuto:ipasserelle:authentification:installer_lemonldap_sur_sme [12/07/2012 23:12] (Version actuelle)
dani Page moved from installer_lemonldap_sur_sme to tuto:ipasserelle:authentification:installer_lemonldap_sur_sme
Ligne 1: Ligne 1:
 ====== Installation de LemonLDAP ====== ====== Installation de LemonLDAP ======
-FIXMECe how-to est en cours de rédaction, à ne surtout pas suivre sans comprendre les différentes étapes indiquées+Prérequis: 
 +  * Configuration des dépôts fws et epel (voir [[tuto:ipasserelle:divers:extras_repo]])
  
 ====== Installation des RPMS ====== ====== Installation des RPMS ======
-La première étape est l'installation des différents RPM. Il faut actriver le dépôt epel pour les dépendances (perl principalement)+La première étape est l'installation des différents RPM. Il faut activer le dépôt epel pour les dépendances 
 +<code bash> 
 +yum --enablerepo=epel --enablerepo=fws install smeserver-lemonldap-ng 
 +</code>
  
 +Une fois les RPMS installés, il suffit de re-configurer apache:
 +<code bash>
 +signal-event webapps-update
 +</code>
  
-====== Templates ======+Les domaines virtuels nécessaire à la gestion de LemonLDAP sont créés automatiquement: 
 +  * https://sso-manager.domain.tld permet d'accéder à la console de gestion de LemonLDAP. Par défaut, cette partie est protégée par une authentification basique HTTP, et demande le login admin du serveur 
 +  * https://auth.domain.tld est le portail utilisateur 
 +  * https://soapsso.domain.tls est le domaine utilisé pour les requêtes SOAP (utilisé par les handlers distants)
  
 +====== Protection d'une appli web ======
 +La protection d'une application Web se passe en plusieurs étapes
 +  - Déclaration du virtualhost dans la console de gestion de LemonLDAP, et configuration des règles souhaitées (ou simplement ajout des règles si le virtualhost est déjà déclaré)
 +  - Ajout de la ligne "PerlHeaderParserHandler My::Package" dans la configuration apache (soit au niveau du vhost, soit dans une section <Directory>)
 +  - Configuration de l'application (si nécessaire)
  
 +====== VirtualHost et protection via LemonLDAP ======
 +Pour protéger un domaine virtuel par LemonLDAP sur un serveur SME (ou une iPasserelle), il faut utiliser les templates fournit par le paquet smeserver-webapps-common:
 <code bash> <code bash>
-mkdir -p /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf+db domains setprop myapp.domain.tld TemplatePath WebAppVirtualHost DocumentRoot /opt/myapp LemonLDAP enabled 
 +signal-event domain-modify
 </code> </code>
 +
 +====== Particularités shared-folders ======
 +Si vous utilisez un dossier partagé (contrib [[http://wiki.contribs.org/SharedFolders|SharedFolders]]) pour y stocker votre application web, il faut aussi penser à désactiver les alias sur le domaine primaire (qui lui n'est pas protégé par LemonLDAP en général):
 +
 +<code bash>
 +db accounts setprop myapp AliasOnPrimary disabled
 +signal-event share-modify-server myapp
 +</code>
 +
 +====== Authentification SSL ======
 +Il est possible de configurer une authentification SSL (les clients présentent un certificat utilisateur pour s'authentifié auprès du portail). Pour activer cette fonctionnalité:
 +
 +  * Il faut tout d'abord disposer d'une PKI (on peut utiliser PHPKi par exemple). La CA de cette PKI signera les certificat des utilisateurs
 +  * Pour chaque utilisateur, il faudra créer un certificat qui porte son login comme CN (Nom Commun)
 +  * Il faut copier la partie public de la CA dans /etc/pki/tls/certs/cacert.pem et rendre ce fichier lisible par tous (chmod 644 /etc/pki/tls/certs/cacert.pem). Si vous utilisez PHPki sur le même serveur que LemonLDAP, il suffit de faire:
 +<code bash>
 +cp /opt/phpki/phpki-store/CA/certs/cacert.pem /etc/pki/tls/certs/cacert.pem
 +chmod 644 /etc/pki/tls/certs/cacert.pem
 +chown root:root /etc/pki/tls/certs/cacert.pem
 +</code>
 +  * Il faut activer la fonction avec les commandes suivantes:
 +<code bash>
 +db configuration setprop lemonldap SSLAuth optional
 +signal-event webapps-update
 +</code>
 +  * Pour activer la vérification de la validité des certificats clients par une CRL, il faut configurer l'URL de mise à jour. Si on utilise PHPki sur le même serveur:
 +<code bash>
 +db configuration setprop httpd-e-smith CrlUrl http://localhost:940/phpki/index.php?stage=dl_crl_pem
 +signal-event webapps-update
 +</code>
 +  * Il ne reste plus qu'à configurer le reste dans le gestionnaire de configuration de LemonLDAP (https://sso-manager.domain.tld). Voici la liste des paramètres à modifier:
 +
 +  * Paramètres généraux
 +    * Modules d'authentification
 +      * Module d'authentification: **Multiple** (mettre SSL;LDAP dans le champ de saisie
 +      * Paramètres SSL
 +        * Champ extrait du certificat: **SSL_CLIENT_S_DN_CN**
 +        * Attribut LDAP pour le filtre: **uid**
 +        * SSL Requis: **Activé**
 +    * Sessions
 +      * Condition d'ouverture: **$groups =~ /\bshared\b/**
 +    * Journalisation
 +      * REMOTE_USER: $uid
  • tuto/ipasserelle/authentification/installer_lemonldap_sur_sme.1291300665.txt.gz
  • Dernière modification: 02/12/2010 15:37
  • de dani