LLDAP
LDAP Kontoverwaltung mit LLDAP
LLDAP ist ein LDAP Server, der in der Programmiersprache Rust implementiert ist. LLDAP verwendet eine relationale Datenbank zum Speichern der Accounts und Gruppen. LLDAP läßt sich als eigener Daemon betreiben. Er bringt ein einfaches Webfrontend für die Verwaltung der Konten und Gruppen und eine Funktion zum Passwort-Rücksetzen mit.
Vorbereitungen in HSAdmin
Mit Hilfe von HSAdmin werden im ersten Schritt ein Service-User, eine Domain und ein PostgreSQL-User mit PostgreSQL-Datenbank angelegt. Der Service-User heißt im folgenden "xyz00-lldap", die Domain "account.hs-example.de", PostgreSQL-User und -Datenbank heißen beide "xyz00_lldap". Das PostgreSQL-Passwort sei "pg_password_99".
Download und entpacken
Die aktuelle Version von LLDAP ist v0.5.0.
Ich melde mich als User "xyz00-lldap" und lade das Binärpaket mit wget:
wget https://github.com/lldap/lldap/releases/download/v0.5.0/amd64-lldap.tar.gz tar xzf amd64-lldap.tar.gz mv amd64-lldap lldap
Konfiguration
Die Konfiguration erfolgt über eine Datei "lldap_config.toml". die Datei erstelle ich wie folgt:
cd ~/lldap touch lldap_config.toml vim lldap_config.toml
der Inhalt nach dem Bearbeiten ist zum Beispiel:
verbose=true ldap_host = "127.0.0.1" ldap_port = 33891 http_host = "127.0.0.1" http_port= 33881 http_url = "https://account.hs-example.de" jwt_secret = "generierte-zufallszeichenkett-als-secret" ldap_base_dn = "dc=hs-example,dc=de" ldap_user_dn = "admin" ldap_user_email = "webmaster@hs-example.de" ldap_user_pass = "ldap-admin-password-generieren" force_ldap_user_pass_reset = false database_url = "postgres://xyz00_lldap:pg_password_99@localhost/xyz00_lldap" key_seed = "generierte-zufallszeichenkette" [smtp_options] enable_password_reset = true server = "localhost" port = 4025 smtp_encryption = "NONE" from="LLDAP Admin <webmaster@hs-example.de>" [ldaps_options] enabled = false