Différences entre versions de « OpenLDAP »
Sauter à la navigation
Sauter à la recherche
imported>SylvainBeucler m |
imported>SylvainBeucler m (→qg) |
||
(8 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
+ | == Lister les bases disponibles == | ||
+ | |||
+ | ldapsearch -x -s base namingContexts | ||
+ | |||
== Suppression des vieux logs == | == Suppression des vieux logs == | ||
− | Pour limiter l'accumulation des logs (log.0000000001, log.0000000002, etc.), ajouter dans <code>/var/lib/ldap/DB_CONFIG</code>: | + | Pour limiter l'accumulation des logs (<code>log.0000000001</code>, <code>log.0000000002</code>, etc.), ajouter dans <code>/var/lib/ldap/DB_CONFIG</code>: |
set_flags DB_LOG_AUTOREMOVE | set_flags DB_LOG_AUTOREMOVE | ||
Pour le faire manuellement: | Pour le faire manuellement: | ||
+ | apt-get install db4.2-util | ||
cd /var/lib/ldap/ | cd /var/lib/ldap/ | ||
db4.2_archive # lister les logs inutilisés | db4.2_archive # lister les logs inutilisés | ||
Ligne 11 : | Ligne 16 : | ||
Pour maximiser l'effet: | Pour maximiser l'effet: | ||
db4.2_checkpoint -1 | db4.2_checkpoint -1 | ||
+ | |||
+ | == Sauvegardes historisées == | ||
+ | |||
+ | Petite astuce avec logrotate pour gérer la rotation des sauvegardes, créer un fichier <code>/etc/logrotate.d/ldap-dumps</code>: | ||
+ | <pre> | ||
+ | /dumps/ldap/ldap.ldif.gz { | ||
+ | rotate 60 | ||
+ | daily | ||
+ | nocopytruncate | ||
+ | sharedscripts | ||
+ | postrotate | ||
+ | slapcat | gzip > /dumps/ldap/ldap.ldif.gz | ||
+ | endscript | ||
+ | } | ||
+ | </pre> | ||
+ | |||
+ | 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: | ||
+ | <pre> | ||
+ | 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 | ||
+ | </pre> | ||
+ | |||
+ | == phpldapadmin == | ||
+ | |||
+ | Interface de visualisation/édition par le web | ||
+ | |||
+ | apt-get install apache2 libapache2-mod-php5 | ||
+ | apt-get install phpldapadmin | ||
+ | |||
+ | == Configuration minimale == | ||
+ | |||
+ | <code>/etc/ldap/slapd.conf</code>: | ||
+ | <pre> | ||
+ | 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 | ||
+ | </pre> | ||
+ | |||
+ | == Initialisation de la base == | ||
+ | |||
+ | Normalement debconf le fait pour vous, mais en cas de besoin: | ||
+ | * <code>init.ldif</code>: | ||
+ | <pre> | ||
+ | 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 | ||
+ | </pre> | ||
+ | |||
+ | Pour l'importer: | ||
+ | slapadd < init.ldif | ||
+ | |||
+ | Mot de passe pré-crypté pour récupération d'accès: | ||
+ | {crypt}aPvwX2n83KsTA = 'test' | ||
== Liens == | == Liens == |
Version actuelle datée du 19 août 2010 à 08:50
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