validiert auf Ubuntu 20.04.3 mit WS2019 als Server

Einstellungen beziehen sich hier nicht auf mittelbare LDAP-Auth (SSSD oder Winbind Auth auf OS und Peer Auth über Postgres), sondern auf pure LDAP-Auth für postgreSQL.

  • postgreSQL verwendet OpenLDAP ==> Zertifikatsvalidierung bei LDAPS steuern über /etc/ldap/ldap.conf:
    • TLS_REQCERT never (wenn CA-Zertifikat nicht importiert)
  • LDAP-Benutzer muß in postgreSQL als normaler Benutzer angelegt werden, LDAP wird nur für die PW-Validierung verwendet
  • Durchführung der Auth wird in /etc/postgresql/12/main/pg_hba.conf konfiguriert
  • ldapbasedn ohne ou funktioniert NICHT
  • PW kann überverschiedene Arten validiert werden:
    • search and bind mit spezifischem LDAP-Filter (hier: Gruppe)
      ldapsearchfilter="(&(userprincipalname=$username)(memberOf=CN=<gruppe>,ou=<OU>,dc=<sld>,dc=<tld>))"
    • über simple bind (ldapbindpasswd und ldapbinddn weglassen)
    • search and bind mit Benutzernamen
      ldapsearchattribute

Beispiele:

hostssl all all 192.168.0.0/24 ldap ldapserver="dc.lan.domain" ldapscheme="ldaps" ldapport=636 ldapbasedn="ou=<ou>,dc=<lan>,dc=<domain>" ldapbinddn="Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein." ldapbindpasswd="<pwd>" ldapsearchfilter="(&(userprincipalname=$username)(|(memberof=CN=somegroup,ou=Security Groups,dc=lan,dc=domain)(memberof=CN=othergroup,ou=Security Groups,dc=lan,dc=domain)))"

hostssl all all 192.168.0.0/24 ldap ldapserver="dc.lan.domain" ldapscheme="ldaps" ldapport=636 ldapbasedn="ou=<ou>,dc=<lan>,dc=<domain>" ldapbinddn="Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein." ldapbindpasswd="<pwd>" ldapsearchattribute=userprincipalname