Notes from session #3

Open
opened 2025-05-17 09:38:28 +02:00 by phil · 0 comments
Owner

Auslösung

Die Details sind noch unklar, aber wir möchten ein System, in dem wir periodisch (nicht unbedingt getriggert) die Entfernung aller Nutzerdaten auslösen können, die zu Accounts gehören, die nicht mehr existieren.
Also nicht nur ein System, das getrigger den Account "foo" löschen kann.

Recherche

Je Provider / Dienst benötigen wir zwei Aktionen:

  • Auflistung aller existierenden LDAP-basierten Accounts
  • Löschung aller Daten eines Accounts

Falls ein Dienst (z.B. nextcloud) bereits eine eigene Bereinigungsaktion anbietet, dann nutzen wir diese stattdessen.

Dienste

nixnutz remove-lost-users --source-type ldap --ldap-host ldap.sao --ldap-base ou=... --service-type directory --directory-pattern "/home/{username}" --

nixnutz --config /etc/nixnutz/nixnutz.yaml remove-lost-users

# Auslösung Die Details sind noch unklar, aber wir möchten ein System, in dem wir periodisch (nicht unbedingt getriggert) die Entfernung aller Nutzerdaten auslösen können, die zu Accounts gehören, die nicht mehr existieren. Also nicht nur ein System, das getrigger den Account "foo" löschen kann. # Recherche Je Provider / Dienst benötigen wir zwei Aktionen: * Auflistung aller existierenden LDAP-basierten Accounts * Löschung aller Daten eines Accounts Falls ein Dienst (z.B. nextcloud) bereits eine eigene Bereinigungsaktion anbietet, dann nutzen wir diese stattdessen. # Dienste * mail-dovecot.sao: * find /data/maildirs -type d -mindepth 2 -maxdepth 2 -name Maildir | cut -d / -f 4 * löschen: Mailverzeichnis (/data/maildirs/foo auf mail-dovecot.sao) * wwwusers: * find /home -type d -mindepth 1 -maxdepth 1 -name Maildir | cut -d / -f 2 * löschen: Home-Verzeichnis löschen (/home/foo auf wwwusers.sao) * die php-fpm-Dienste werden bereits automatisch beräumt * Seafile-Konto * API: https://cloud.seafile.com/published/web-api/v2.1-admin/accounts.md * liste: https://cloud.seafile.com/api/v2.1/admin/users/?source=ldapimport * löschen: https://cloud.seafile.com/api/v2.1/admin/users/{email}/ * nextcloud-Konto löschen * Bereits möglich via occ/cron: https://docs.nextcloud.com/server/latest/admin_manual/configuration_user/user_auth_ldap_cleanup.html * Authentik-Konto löschen * LIST: https://docs.goauthentik.io/docs/developer-docs/api/reference/core-users-list * Redmine * API: https://www.redmine.org/projects/redmine/wiki/Rest_Users * Roundcube: * GPG-Schlüssel im Dateisystem * LIST: select username from users; * DEL: * /usr/share/roundcube/bin/deluser.sh * https://github.com/roundcube/roundcubemail/blob/master/bin/deluser.sh * SOGo: - LIST: select distinct(c_path2) from sogo_folder_info; - Delete: sogo-tool remove USER * Forgejo * LIST: forgejo admin user list - List users * DELETE: forgejo admin user delete - Delete specific user by id, name or email * Jabber * LIST: ejabberdctl registered_users systemausfall.org * DELETE: ejabberd unregister USER systemausfall.org * Sympa * LIST: select * from user_table where email_user like '%systemausfall.org%'; * DEL: sympa user del (erst ab trixie) * Synapse * LIST: synadm user list * DEL: https://element-hq.github.io/synapse/latest/admin_api/user_admin_api.html#deactivate-account via synadm: synadm user deactivate USER_ID nixnutz remove-lost-users --source-type ldap --ldap-host ldap.sao --ldap-base ou=... --service-type directory --directory-pattern "/home/{username}" -- nixnutz --config /etc/nixnutz/nixnutz.yaml remove-lost-users
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: systemausfall.org/nixnutz#3
No description provided.