Hallo,
anscheinend ist bei der aktuellen EGrouoware Version die Authentifizierung defekt, wenn man mehrere Domains konfiguriert hat.
Es geht mit zwei Domains, die beide komplett gegen SQL arbeiten (Nutzerspeicher + Auth).
Es geht aber nicht, sobald eine Domain gegen SQL Authentifiziert und die andere gegen LDAP - bei einer der beiden kann sich anschliessend niemand mehr anmelden.
Konfiguration:
-
Domain 1-SQL
Benutzerkonten speichern: SQL
Authentifizierung (alle Arten): SQL
SQL-Verschlüsselungstyp für das Passwort: sha512_crypt
Password Migration: JA
-
Domain 2-LDAP:
Benutzerkonten speichern: SQL (nach initialem LDAP-Import via Setup)
Authentifizierung (alle Arten): LDAP
SQL-Verschlüsselungstyp für das Passwort: sha512_crypt
Password Migration: JA
In diesem Setup können sich immer nur Nutzer einer der beiden Domains erfolgreich anmelden. Welche der beiden Domains das ist, hängt davon ab, bei welcher der beiden sich zuerst ein Nutzer versucht anzumelden, also:
-
Restart Docker-Container “egroupware”
-
Web-Login von user-a@1-SQL -> erfolgreich
-
Web-Login oder CardDAV-Login von user-b@1-SQL -> erfolgreich
-
Web-Login von user-x@2-LDAP -> Fehler
=> es kann sich kein einziger Nutzer von 2-LDAP anmelden, es gehen alle Nutzer von 1-SQL
-
Restart Docker-Container “egroupware”
-
Web-Login von user-x@2-LDAP -> erfolgreich
-
Web-Login oder CardDAV-Login von user-y@2-LDAP -> erfolgreich
-
Web-Login von user-a@1-SQL -> Fehler
=> es kann sich kein einziger Nutzer von 1-SQL anmelden, es gehen alle Nutzer von 2-LDAP
-
Restart Docker-Container "egroupware"
11ff obere Abläufe beliebig wiederholbar…
Da die erfolgreiche resp. fehlerhafte Authentifizierung beider Domains allein vom ersten Login abhängig ist, gehe ich mal davon aus, das die Konfigurationen der beiden Domains an sich korrekt sind (d.h. SQL-Passwörter und LDAP-Daten sind richtig). Der Fehler muss allein bei Egroupware liegen, da es anscheinend nicht richtig prüft, gegen welches Backend es die Nutzer zu authentifizieren hat.
In den (Docker-)Logs von Egroupware habe ich aber keine Fehler dazu gefunden oder überhaupt Hinweise wogegen es jeweils versucht zu authentifizieren.
Ich sehe aber in jedem Fall in der zugehörigen Datenbank der Domain in der Access-Log Tabelle die Einträge für die fehlgeschlagenen Authentifizierungen mit entsprechenden Block des Nutzers bei zu vielen Fehlerhaften Anmeldungen. Nur halt wie gesagt keinen Hinweis wo/wie Egroupware zu authentifizieren versucht.
System:
Debian/10 mit dep-Paket egroupware-docker 21.1.20220916
MariaDB-Server und LDAP-Server auf Extern (nicht lokale docker-images)
Viele Grüße,
Stefan Seide
p.s. Vielen Dank an Stefan Unverricht für den Hnweis auf Dockly in einem der anderen Threads - wirklich nettes Tool und hilfreich hier