Ubuntu – Installing OpenLDAP with meta

openldapUbuntu

I am trying to host an LDAP service that can help proxy between multiple LDAP servers.
An example found here: http://blog.sejo.be/2010/01/8/openldap-en-3-ad-servers/

I thought I would give OpenLDAP a shot since I heard about it's "meta" database.
So, I installed onto a example unbuntu server using apt-get install slapd
However, I am having trouble just configuring slapd with meta as a database.

I have a very basic Sample.conf file

Sample.conf

database meta
suffix        "dc=Sample,dc=com"
uri           "ldap://localhost:6666/CN=Users,CN=Sample35"
suffixmassage "CN=Users,CN=Sample35" "dc=bar,dc=org"

uri           "ldap://localhost:5555/CN=Users,CN=Sample10"
suffixmassage "CN=Users,CN=Sample10" "o=Foo,c=US"

When running slaptest -f sample.conf I get

Unrecognized database type (meta)
50a30c0d sample.conf: line 1: <database> failed init (meta)
slaptest: bad configuration file!

Makes me think that openldap was compiled without the meta database/modules?
Googling around, I haven't found much on how to resolve this 🙁

If it is a missing module, how do I compile/install it within Ubuntu?
Do I need to manually download the source and compile it manually?

Best Answer

Just in case someone else runs into this (as I did): You need to load the module(s) for different backends before you reference them.

In slapd.conf style:

modulepath /usr/lib/ldap
moduleload back_meta.la

In OLC cn=config LDIF style:

dn: cn=module{1},cn=config
objectClass: olcModuleList
cn: module{1}
olcModulePath: /usr/lib/ldap
olcModuleLoad: back_meta

Then you can do:

database meta

or

dn: olcDatabase={1}meta,cn=config
objectClass: olcDatabaseConfig
objectClass: olcMetaConfig
olcDatabase: {1}meta
Related Topic