Der ProFTPD hat sich etwas zickig, wenn es um eine Authentifizierung via PAM und LDAP geht. Auch wenn pamtester bestätigt, dass die PAM-Konfiguration funktioniert, meint ProFTPD nur lapidar: “no such user found”.
Aber ProFTPD bietet erfreulicherweise noch einen anderen Weg, eine Authentifizierung via LDAP vorzunehmen: mod_ldap.
Die Konfiguration von mod_ldap ist denkbar trivial.
Zunächst wird mod_ldap.c als einziges Modul für die Anweisung AuthOrder eingetragen.
Mit LoadModuel mod_ldap.c wird das Modul geladen und wie folgt konfiguriert:
LDAPServer HOSTNAME– der Server, gegen den die Authentifizierung erfolgen sollLDAPAuthBinds on– die Authentifizierung erfolgt durch einen Aufruf von bind mit dem PasswortLDAPDoAuth on BASE FILTER– Basis für die Suche nach Nutzern und FilterLDAPAliasDereference always– Aliase immer auflösen, empfehlenswert, wenn man Aliase verwendet, sonst nicht nötigLDAPDoUIDLookups on BASE– Basis für die Suche nach NutzernLDAPDoGIDLookups on BASE– Basis für die Suche nach Gruppen
Hier noch eine Beispielkonfiguration:
<Global> # ... AuthOrder mod_ldap.c # ... </Global> LoadModule mod_ldap.c <IfModule mod_ldap.c> LDAPServer localhost LDAPAuthBinds on LDAPDoAuth on "ou=people,ou=ahost,ou=hosts,dc=my-domain,dc=com" \ "(&(uid=%v)(objectclass=posixAccount))" LDAPAliasDereference always LDAPDoUIDLookups on "ou=people,ou=ahost,ou=hosts,dc=my-domain,dc=com" LDAPDoGIDLookups on "ou=group,ou=ahost,ou=hosts,dc=my-domain,dc=com" </IfModule>