1

We have the following setup:

  • Two OpenLDAP servers - openldap1, openldap2
  • They are to be set up as N-Way multi-master
  • Certificates are all set up correctly with alternate names etc and trust each other

I want slapd to bind to all interfaces on the server, so was hoping to run the service as

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

However, this gives

5cabf191 <<< dnNormalize: <cn=subschema>
5cabf191 read_config: no serverID / URL match found. Check slapd -h arguments.
5cabf191 slapd destroy: freeing system resources.
5cabf191 syncinfo_free: rid=002
5cabf191 syncinfo_free: rid=002
5cabf191 slapd stopped.
5cabf191 connections_destroy: nothing to destroy.

I think i understand this to be because of our replication setup which looks like the following ServerIDs:

dn: cn=config
objectClass: olcGlobal
cn: config
..snipped..
olcTLSCertificateKeyFile: /etc/openldap/certs/keys/ldapskey.pem
olcTLSCertificateFile: /etc/openldap/certs/ldapscert.pem
olcTLSCACertificateFile: /etc/openldap/certs/cacert.pem
olcServerID: 1 ldaps://openldap1
olcServerID: 2 ldaps://openldap2
entryCSN: 20190409004218.061111Z#000000#000#000000
modifiersName: cn=config
modifyTimestamp: 20190409004218Z
contextCSN: 20190409004339.981340Z#000000#000#000000

I think my error is because slapd -h argument cannot match to a serverID in the list?

If this is the case, how do I work around it?

If i manually run the following it, works, but this doesn't help me bind to all interfaces.

/usr/sbin/slapd -u ldap -h ldaps://openldap1

I have an IP that floats between both servers to give high availability if one were to go down, so need slapd to listen on all interfaces.

marc
  • 11
  • 1

0 Answers0