Différences entre versions de « OpenLDAP »

De Cliss XXI
Sauter à la navigation Sauter à la recherche
imported>SylvainBeucler
m (Nouvelle page : Pour limiter l'accumulation des logs (log.0000000001, log.0000000002, etc.), ajouter dans <code>/var/lib/ldap/DB_CONFIG</code>: set_flags DB_LOG_AUTOREMOVE)
 
imported>SylvainBeucler
 
(9 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
Pour limiter l'accumulation des logs (log.0000000001, log.0000000002, etc.), ajouter dans <code>/var/lib/ldap/DB_CONFIG</code>:
+
== Lister les bases disponibles ==
 +
 
 +
ldapsearch -x -s base namingContexts
 +
 
 +
== Suppression des vieux logs ==
 +
 
 +
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:
 +
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 <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 ==
 +
 +
* [http://www.intevation.de/roundup/kolab/issue1374 kolab/issue1374 (OpenLDAP BDB: too many log files)]: purge saine et manuelle des logs
 +
* [http://deliver.pigeonair.net/doc/recipes/postfix/postfix/x98.html Configuring OpenLDAP]: syntaxe pour DB_LOG_AUTOREMOVE dans DB_CONFIG

Version actuelle datée du 19 août 2010 à 09: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