Nextcloud: Löschen von "ldap:show-remnants"

Hallo.
Seit ein paar Tagen berichten einige KuK, dass sie nach Anmeldung an der Nextcloud (noch Version 21) nur einen weißen Bildschirm vorfinden. Oben wird dann die Meldung Dieses Verzeichnis ist nicht verfügbar, bitte überprüfen Sie die Logdateien oder kontaktieren Sie den Administrator eingeblendet. Auf der Suche nach einer Lösung, bin ich auf diese Seite gestoßen:

Der Befehl
sudo -u www-data php7.4 occ ldap:show-remnants hat hier tatsächlich ein paar Karteileichen zu Tage befördert, doch seltsamerweise konnte ich nicht alle davon löschen :thinking: !
Bei einigen wurde dann gemeldet:
The specified user could not be deleted. Please check the logs. (wo nichts weiter steht)
Der Tipp, der danach im Nachbarforum steht, legt nahe, dass man verwaiste Logins auch direkt in der DB löschen kann … aber auch dort finde ich den User, den ich schon nicht löschen konnte, nicht.
Daher die Frage: Wie geht ihr vor?

Es gab doch mal irgendein Projekt zum Löschen alter Logins, oder? @Tobias? Kam das nicht von Dir? Kannst Du mich in die richtige Richtung schubsen?
Hab’s gerade gefunden – der Beitrag stammt allerdings von 2017 :scream_cat:

Danke und viele Grüße,
Michael

Hallo Michael,

Ich mache das regelmäßig in einem Cronjob, so daß User, welche nicht mehr im LMN Server sind, auch aus der Nextcloud verschwinden.

for user in php /var/www/nextcloud/occ ldap:show-remnants|awk -F "|" '{print $2}'|t r -d " "| sed /^$/d |grep -v Nextcloudname; do
php /var/www/nextcloud/occ user:delete „$user“
done

Evtl. könntest Du mal nachsehen, was Du über den User, welcher sich nicht löschen läßt rausfindest:

sudo -u www-data php /var/www/nextcloud/occ user:info

Ist der User evtl. deaktiviert?

Viele Grüße
Klaus

Hallo Klaus,
ja, da steht: user not found – er wird aber dennoch bei den show-remnants geführt. Daher dachte ich, dass man den Eintrag ja noch irgendwo in der Nextcloud-DB finden müsste?!?
Viele Grüße,
Michael

Hallo Michael,

ich würde noch probieren:

sudo -u www-data php /var/www/nextcloud/occ ldap:check-user

Wenn das bringt:

The given user is not a recognized LDAP user.

Dann könnte es ein Caching Problem sein. Evtl. danach nochmal probieren den User zu löschen.

Viele Grüße
Klaus

Jetzt wird’s „spannend“:

sudo -u www-data php7.4 /var/www/nextcloud/occ user:info <UID>

=> Cannot check user existence, because disabled LDAP configurations are present.
wtf? Das prüfe ich gleich nochmal …

Wie „erwartet“: Als Admin in der Nextcloud ist alles in Ordnung (sonst könnte sich ja auch niemand anmelden?):
Screenshot_20220513_111929

Hallo Michael,

hast Du evtl. wirklich eine deaktivierte LDAP Konfiguration unter dem Reiter LDAP/Server? Da gibt es beim Server ein Dropdown Menü.

Evtl. mal den LDAP Cache leeren.
LDAP - Fortgeschritten - Verbindungseinstellungen - Speichere Time-To-Live zwischen - Den Wert verändern - Testkonfiguration - Wert wieder zurücksetzen

Viele Grüße
Klaus

Hi Klaus.
Da war tatsächlich eine 2. Konfig (die aber gar keine Einträge enthielt). Ich habe sie gelöscht und erhalte jetzt bei den remnants:
The given user is not a recognized LDAP user.
Bei einem aktiven User erscheint
The user is still available on LDAP.
Das ist schon mal ein Fortschritt! Der Cache ist nun ebenfalls gelöscht – aber das ändert erstmal nichts.

Hallo Michael,

ich bin mir nicht sicher, ob obige Aktion mit dem Cache auch ldap:show-remnants betrifft. Evtl. kannst Du etwas warten, oder das Intervall ldapUserCleanupInterval runtersetzen. Siehe:

https://docs.nextcloud.com/server/stable/admin_manual/configuration_user/user_auth_ldap_cleanup.html

Viele Grüße
Klaus

Super, danke. Alle Karteileichen sind jetzt weg