HOWTO: Running an LDAP Server on Linux


Install the OpenLDAP server slapd. If you want SSL support, you might have to compile slapd from source.


slapd.conf


/usr/sbin/slapd -h 'ldap:/// ldaps:///'


/usr/lib/ssl/misc/CA.pl -newca
cp ./demoCA/private/cacert.pem /etc/ssl/certs

/usr/lib/ssl/misc/CA.pl -newreq
openssl req -text -noout < newreq.pem
/usr/lib/ssl/misc/CA.pl -sign
openssl rsa < newreq.pem > newkey.pem
chmod 400 newkey.pem
mv newreq.pem ldapreq.pem; mv newcert.pem ldapcert.pem; mv newkey.pem ldapkey.pem

mv ldap*.pem /etc/ssl/certs


A sample directory.ldif:

dn:     dc=dolio, dc=lh, dc=net
objectClass:    top
objectClass:    dcObject
objectClass:    organization
dc:     dolio
o:      Dolio

dn:     ou=people, dc=dolio, dc=lh, dc=net
objectClass:    top
objectClass:    organizationalUnit
ou:     people


A sample contact.ldif:

dn: cn=Bob Wondernuts, ou=people, dc=dolio, dc=lh, dc=net
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
cn: Bob Wondernuts
gn: Bob
sn: Wondernuts
mail: wondernuts@dolio.lh.net
ou: people
telephoneNumber: 555-555-1234


ldapadd -x -D 'dc=dolio, dc=lh, dc=net' -f directory.ldif -W
Enter LDAP Password: secret
ldapadd -x -D 'dc=dolio, dc=lh, dc=net' -f contact.ldif -W
Enter LDAP Password: secret

ldapsearch -x -b 'ou=people, dc=dolio, dc=lh, dc=net' '(objectclass=*)'


In your email client, your "Base DN" will be:

ou=people, dc=dolio, dc=lh, dc=net

Sources:

http://www.onlamp.com/pub/a/onlamp/2003/03/27/ldap_ab.html

http://www.firenze.linux.it/~piccardi/ldap/ldap.html

Back
  Copyright (C) 2004  Adam P. Whitney