Mein Kontext: Ich habe eine OpenSMTPD-Instanz, die PAM als Authentifizierungs-Backend verwendet. Meine PAM-Konfiguration verwendet NSS, um die Benutzer gegenüber einem LDAP-Verzeichnis zu authentifizieren.
Ich möchte, dass NSS Benutzer entweder anhand ihres uid
oder ihres mail
LDAP-Attributs abgleicht.
Den Protokollen zufolge, die ich sehe, scheint der Standardfilter zu sein(&(objectClass=posixAccount)(uid=xxxxxx))
wobei xxxxx die Benutzeranmeldung ist.
Die nslcd.conf
Manpage beschreibt den filter
Parameter, aber es scheint keine Möglichkeit zu geben, Variablen damit zu verwenden. Außerdem ergibt jeder Filter, den ich konfiguriere, (uid=xxxxx)
am Ende(Wenn ich beispielsweise filter passwd (foo=bar)
in der Konfigurationsdatei festlege, dass der Filter zum Abgleichen von Benutzern verwendet wird, lautet dieser (&(foo=bar)(uid=xxxx))
:).
Ich möchte in der Lage sein, etwas zu schreiben, (|(uid=$login)(mail=$login))
das Benutzer entweder anhand ihres uid
oder ihres mail
LDAP-Attributs abgleicht.
Ist das wirklich nicht möglich? Gibt es dafür einen Workaround?