OpenLDAP
Sauter à la navigation
Sauter à la recherche
Lister les bases disponibles
ldapsearch -x -s base namingContexts
Suppression des vieux logs
Pour limiter l'accumulation des logs (log.0000000001
, log.0000000002
, etc.), ajouter dans /var/lib/ldap/DB_CONFIG
:
set_flags DB_LOG_AUTOREMOVE
Pour le faire manuellement:
apt-get install db4.2-util cd /var/lib/ldap/ db4.2_archive # lister les logs inutilisés db4.2_archive -d # les supprimer
Pour maximiser l'effet:
db4.2_checkpoint -1
Sauvegardes historisées
Petite astuce avec logrotate pour gérer la rotation des sauvegardes, créer un fichier /etc/logrotate.d/ldap-dumps
:
/dumps/ldap/ldap.ldif.gz { rotate 60 daily nocopytruncate sharedscripts postrotate slapcat | gzip > /dumps/ldap/ldap.ldif.gz endscript }
Pour restaurer:
/etc/init.d/slapd stop rm -rf /var/lib/ldap/* zcat /dumps/ldap/ldap.ldif.gz | slapadd /etc/init.d/slapd start
qg
Interface de visualisation/édition.
Pas dispo sous Lenny (mainteneur pas actif depuis 2 ans), on peut le compiler à la main:
wget http://freefr.dl.sourceforge.net/sourceforge/gqclient/gq-1.2.3.tar.gz tar xzf gq-1.2.3.tar.gz cd gq-1.2.3 # Required apt-get install build-essential apt-get install libgtk2.0-dev libglib2.0-dev libxml2-dev libgnome-keyring-dev libglade2-dev libxml-parser-perl libldap2-dev # Optional apt-get install libkrb5-dev libsasl2-dev libssl-dev ./configure make sudo make install
phpldapadmin
Interface de visualisation/édition par le web
apt-get install apache2 libapache2-mod-php5 apt-get install phpldapadmin
Configuration minimale
/etc/ldap/slapd.conf
:
pidfile /var/run/slapd/slapd.pid modulepath /usr/lib/ldap moduleload back_bdb include /etc/ldap/schema/core.schema sizelimit unlimited # DB n1 database bdb directory /var/lib/ldap suffix "dc=example,dc=com" #suffix "dc=com" #suffix "" rootdn "cn=Manager,dc=example,dc=com" rootpw secret
Initialisation de la base
Normalement debconf le fait pour vous, mais en cas de besoin:
init.ldif
:
dn: dc=example,dc=com objectclass: dcObject objectclass: organization o: Example Company dc: example dn: cn=Manager,dc=example,dc=com objectclass: organizationalRole cn: Manager
Pour l'importer:
slapadd < init.ldif
Mot de passe pré-crypté pour récupération d'accès:
{crypt}aPvwX2n83KsTA = 'test'
Liens
- kolab/issue1374 (OpenLDAP BDB: too many log files): purge saine et manuelle des logs
- Configuring OpenLDAP: syntaxe pour DB_LOG_AUTOREMOVE dans DB_CONFIG