Différences entre versions de « OpenLDAP »

De Cliss XXI
Sauter à la navigation Sauter à la recherche
imported>SylvainBeucler
imported>SylvainBeucler
Ligne 64 : Ligne 64 :
 
  apt-get install apache2 libapache2-mod-php5
 
  apt-get install apache2 libapache2-mod-php5
 
  apt-get install phpldapadmin
 
  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
 +
 +
# 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 du 1 août 2009 à 18:30

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 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

# 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