Lorsqu'on installe LL::NG, le manager n'est accessible que via le compte de démonstration dwho
. Ce document explique comment changer ce comportement par défaut pour protéger le manager avec d'autres règles.
Cette configuration peut être changée dans etc/manager-apache2.conf
, par exemple pour restreindre les adresses IP autorisées à accéder au manager :
<Directory /usr/local/lemonldap-ng/htdocs/manager/> Order deny,allow Deny from all Allow from 127.0.0.0/8 192.168.100.0/32 Options +ExecCGI </Directory>
Il est souvent souhaitable d'utiliser un module d'authentification Apache, tel par exemple le module d'authentification LDAP :
<Directory /usr/local/lemonldap-ng/htdocs/manager/> AuthzLDAPAuthoritative On AuthName "LL::NG Manager" AuthType Basic AuthBasicProvider ldap AuthLDAPBindDN "ou=websso,ou=applications,dc=example,dc=com" AuthLDAPBindPassword "secret" AuthLDAPURL ldap://localhost:389/ou=users,dc=example,dc=com???(objectClass=inetOrgPerson) TLS Require ldap-user coudot xguimard tchemineau Options +ExecCGI </Directory>
[manager] ;protection = manager
Par défaut, il existe un hôte virtuel défini dans la configuration. Si non, aller dans le manager et déclarer le manager comme un nouvel hôte virtuel, par exemple manager.example.com
. Définir ensuite les règles d'accès. Aucun en-tête n'est nécessaire.
La règle par défaut est :
$uid eq "dwho"
Il faut la changer pour correspondre au nouvel administrateur (ou utiliser une autre conditions telle l'appartenance aux groupes ou tout autre règle basée sur des variables de session).
Sauver la configuration et quitter le manager.
Activer la protection du manager, en éditant lemonldap-ng.ini
:
[manager] protection = manager
On peut également adapter le contrôle d'accès d'Apache :
<Directory /usr/local/lemonldap-ng/htdocs/manager/> Order deny,allow Allow from all Options +ExecCGI </Directory>
Redémarrer Apache et tenter de se connecter au manager. On doit être redirigé vers le portail LL::NG.
On peut aussi ajouter le manager dans les applications du menu.
lemonldap-ng.ini
. Ajouter un contrôle d'accès Apache pour éviter les autres accès.