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