LemonLDAP-NG/fr
Mainteneur
Daniel B.
Firewall Services
mailto:daniel@firewall-services.com
Description
LemonLDAP::NG offre une protection AAA (Authentification Autorisation Historique - « Accounting ») complète :
- Authentification : les informations d'identification sont nécessaires pour ouvrir la session SSO (cf. ci-dessous) ;
- Autorisation : les règles d'accès sont vérifiées pour chaque requête HTTP ;
- Historique : chaque connexion est enregistrée.
Le principal avantage de l'utilisation de LemonLDAP::NG est que les utilisateurs n'ont besoin de se connecter qu'une seule fois sur le portail LemonLDP::NG. Ensuite, toutes les applications configurées pour être protégées par LemonLDAP::NG reconnaîtront l'utilisateur. Cela s'appelle SSO (Single Sign On). LemonLDAP::NG est très flexible, vous pouvez utiliser différents arrière-plans pour la base de données des informations utilisateur, la vérification des mots de passe, etc.
Cette contribution utilise le serveur LDAP interne pour tout. Par défaut, tout sera pré-configuré, donc tous les utilisateurs pourront avoir un accès, avec leur mot de passe normal. L'appartenance à un groupe est également utilisable pour écrire des règles d'accès.
Cette page décrit uniquement le processus d'installation sur un serveur SME KOOZALI. Pour un guide complet sur la façon d'utiliser et de configurer LemonLDAP::NG, veuillez vous référer à la documentation officielle (en anglais).
Spécifications requises
LemonLDAP-NG a été développé et testé uniquement sur les versions 8 et 9 de KOOZALI SMEServeur, et ne sera pas adapté pour fonctionner sur SME 7.
Vous avez également besoin des dernières mises à jour du dépôt « smeupdates-testing ».
yum --enablerepo=smeupdates-testing update signal-event post-upgrade signal-event reboot
Installation sur les versions 8.x et 9.x
Configurer le dépôt « Firewall-Services » :
db yum_repositories set fws repository \ BaseURL http://repo.firewall-services.com/centos/\$releasever \ EnableGroups no GPGCheck yes \ Name "Firewall Services" \ GPGKey http://repo.firewall-services.com/RPM-GPG-KEY \ Visible yes status disabled signal-event yum-modify
Configurer les dépôts Epel et Dag (choisir le dépôt convenable en fonction de la version de votre serveur SME - 8 ou 9).
- Installer les paquets rpm
yum --enablerepo=fws --enablerepo=epel --enablerepo=dag install smeserver-lemonldap-ng
- Maintenant, appliquer la configuration requise :
signal-event webapps-update db configuration set UnsavedChanges no
Configuration
Cette contribution créera automatiquement deux nouveaux domaines :
- sso-manager.domain.tld : ce domaine est utilisé pour accéder à l'interface de gestion LemonLDAP (configuration et explorateur de session) ;
- auth.domain.tld : ce domaine est le portail d'authentification.
Ces domaines fonctionneront dès le départ à partir du réseau interne si vous utilisez votre serveur SME comme DNS, sinon, vous devrez ajouter ces deux noms d'hôte dans votre serveur DNS. Vous devez également ajouter ces noms d'hôte dans votre serveur DNS externe si vous souhaitez que le portail fonctionne depuis l'extérieur.
La plupart de la configuration de LemonLDAP::NG est disponible sur https://sso-manager.domain.tld/. Vous devrez vous connecter en utilisant les informations d'identification d'administrateur de votre serveur pour accéder à cette page (identifiant : admin). Ne pas s'affoler si sso-manager.domain.tld devient auth.domain.tld à la saisie ; une fois la connexion réussie, le nom de domaine sso-manager.domain.tld revient...
Options additionelles
Certains paramètres sont disponibles dans la base de données :
- ManagerAuth : si vous souhaitez que l'interface du gestionnaire (https://sso-manager.domain.tld) soit auto-protégée (LemonLDAP protège sa propre interface de gestion), vous pouvez configurer la propriété sur self. Vous devez d'abord vous assurer que l'authentification au portail fonctionne.
- Reload : une liste de gestionnaires supplémentaires pour appeler les rechargements de configuration. Ce paramètre n'est utile que si vous connectez un autre gestionnaire sur différentes machines physiques (en utilisant l'arrière-plan Soap, par exemple, pour accéder à la base de données de configuration et de session). Cela doit se présenter sous la forme d'une liste séparée par des virgules :
db configuration setprop lemonldap Reload server1=https://server1.domain.tld/reload,server2=https://reload.domain.tld
- SoapAllowFrom : une liste séparée par des virgules des adresses IP et/ou réseaux qui auront accès aux ressources SOAP (/sessions, /config, etc.). Cela n'est nécessaire que si vous configurez le gestionnaire distant pour utiliser l'arrière-plan Soap pour accéder aux sessions et aux bases de données de configuration.
- SoapPassword : toutes les ressources de Soap sont protégées par une restriction IP (voir SoapAllowFrom), et un nom d'utilisateur/mot de passe (authentification de base). Le nom d'utilisateur est lemonsaop, et le mot de passe est la valeur de cet propriété (le mot de passe par défaut est généré aléatoirement).
Exemple :
db configuration setprop lemonldap Reload lamp.firewall-services.com=https://lamp.firewall-services.com/lm-reload SoapAllowFrom 10.11.12.13 signal-event webapps-update
Changement du nom de domaine
Lorsque vous installez cette contribution pour la première fois, le nom de domaine principal est utilisé dans la configuration par défaut de LemonLDAP. Si vous modifiez ultérieurement le nom de domaine principal, vous devrez adapter la configuration de LemonLDAP manuellement (à l'aide de https://sso-manager.domain.tld/).
Guide de protection des applications
Voici un guide rapide sur la façon de protéger une application Web avec LemonLDAP::NG sur SME Serveur :
- Tout d'abord, vous pouvez installer votre application (par exemple dans /opt/MonApp)
- Maintenant, vous devez créer un modèle personnalisé pour rendre cette application disponible sur le Web. LemonLDAP::NG utilise VirtualHosts pour protéger différentes applications, il est donc recommandé de ne pas créer d'alias sur le domaine principal dans votre modèle personnalisé. Un hôte virtuel dédié sera créé ultérieurement pour accéder à l'application. Voici un exemple de modèle personnalisé :
# Configuration de MonApp
<Directory /opt/MonApp> AllowOverride None SSLRequireSSL on AddType application/x-httpd-php .php php_admin_value open_basedir /opt/MonApp:/tmp order deny,allow deny from all allow from {"$localAccess $externalSSLAccess";} Satisfy all </Directory>
Bien, maintenant l'application est prête à être utilisée, mais n'est pas encore accessible (car il n'y a pas d'alias pour rendre cette application accessible).
- Créez un domaine pour cette application
db domains set MonApp.domain.tld domain Content Primary \ Description 'Mon App' DocumentRoot /opt/MonApp Authentication LemonLDAP \ Nameservers internet TemplatePath WebAppVirtualHost signal-event domain-create MonApp.domain.tld
Il est important de définir TemplatePath sur WebAppVirtualHost. Ces modèles sont fournis par le paquet smeserver-webapps-common (installé automatiquement, car il est nécessaire par LemonLDAP). Ces modèles facilitent la protection de tout hôte virtuel par LemonLDAP::NG.
- Bien, maintenant votre application est disponible à partir de cette adresse https://MonApp.domain.tld/ mais l'accès vous sera refusé si vous essayez d'y accéder maintenant. La dernière étape consiste à déclarer MonApp.domain.tld dans LemonLDAP::NG. Cela se fait à l'aide du gestionnaire de configuration (https: //sso-manager.domain.tld). Vous pouvez ensuite définir les règles d'accès que vous souhaitez. Vous pouvez lire la documentation du projet pour cette partie, en particulier cette page [1] (en anglais).
Problèmes
Les journaux LemonLDAP sont envoyés dans des journaux d'erreurs Apache (/var/log/httpd/error_log).
Sauvegarde et restauration
Vous devez sauvegarder le répertoire /var/lib/lemonldap/conf et /var/lib/lemonldap-ng/notifications où se trouvent la configuration et les notifications.
Désinstallation
Si vous voulez retirer la contribution, il suffit d'exécuter :
yum remove lemonldap-ng
Source
The source for this contrib can be found in Firewall-Services's repository.