"Bind DN" is the name of a directory entry used in the login (bind) operation. In LDAP, there are no separate user IDs – instead your entries themselves are the LDAP accounts.
For example, cn=Arne Fallisch,ou=Staff,dc=example,dc=org
would be your "Bind DN" (assuming it exists, of course), and the entry's userPassword
attribute would be your password.
(The attribute can contain a hashed password; the slappasswd
command can be used to generate a compatible password hash, or ldappasswd
can be used to change the password online.)
Any entry regardless of its objectClass can be used for binding to the directory, as long as it has the userPassword attribute – this includes 'person', 'inetOrgPerson', 'posixAccount' and a few others.
Note that OpenLDAP ACLs work in "stealth" mode by default – that is, instead of saying "Access denied", the server pretends the unavailable entries don't exist at all. When protecting a whole server you probably would prefer it to just return an "Authentication is needed" error instead – to achieve this, define olcRequires: bind authc
in your olcDatabase entry (but not in the global config entry; doing so would break things like StartTLS and SASL authentication).