
Präsentation
Self Service Password ist eine PHP-Anwendung, die es Benutzern ermöglicht, ihr Passwort in einem LDAP-Verzeichnis zu ändern.
Die Anwendung kann mit standardmäßigen LDAPv3-Verzeichnissen (OpenLDAP, OpenDS, ApacheDS, Sun Oracle DSEE, Novell usw.) sowie mit Active Directory verwendet werden.

Sie bietet die folgenden Funktionen:
- Samba-Modus zur Änderung von Samba-Passwörtern
- Active-Directory-Modus
- Passwort-Hashing (MD5, SHA, SHA2, Crypt, Argon2)
- Lokale Passwortrichtlinie:
- Minimale/maximale Länge
- Verbotene Zeichen
- Zähler für Großbuchstaben, Kleinbuchstaben, Ziffern oder Sonderzeichen
- Prüfung auf Wiederverwendung des alten Passworts
- Passwort identisch mit Login oder anderen LDAP-Attributen
- Komplexität (verschiedene Zeichenklassen)
- Verbotene Wörter
- Nutzung der „Have I been pawned“-API
- Entropie
- Hilfemeldungen
- Zurücksetzen per Sicherheitsfragen
- Zurücksetzen per E-Mail-Challenge (Token wird per E-Mail gesendet)
- Zurücksetzen per SMS (über einen externen E-Mail-zu-SMS-Dienst oder eine SMS-API)
- SSH-Schlüssel im LDAP-Verzeichnis ändern
- E-Mail-Adresse und Telefonnummer im LDAP-Verzeichnis ändern
- Captcha (integriert)
- E-Mail-Benachrichtigung nach Passwortänderung
- Hook-Skript vor und nach der Passwortänderung
- REST-API
Voraussetzungen
- PHP (>=7.4)
- Erforderliche PHP-Erweiterungen:
- php-curl (Have-I-Been-Pwned-API)
- php-gd (Captcha)
- php-filter
- php-ldap
- php-mbstring (Zurücksetzen per E-Mail)
- php-openssl (Token-Verschlüsselung, wahrscheinlich integriert)
- Smarty >= 3
- Verfügbarkeit starker Kryptografiefunktionen (für random_compat, PHP 7 oder libsodium oder lesbares /dev/urandom oder installierte php-mcrypt-Erweiterung)
- gültige PHP-Mailserver-Konfiguration
- gültige PHP-Session-Konfiguration
Dokumentation
Die Dokumentation ist verfügbar unter https://self-service-password.readthedocs.io/en/latest/
Docker
Wir stellen ein offizielles Docker-Image bereit.
Erstellen Sie eine minimale Konfigurationsdatei:
<?php // My SSP configuration
$keyphrase = "mysecret";
$debug = true;
?>
Und führen Sie aus:
docker run -p 80:80 \
-v $PWD/ssp.conf.php:/var/www/conf/config.inc.local.php \
-it docker.io/ltbproject/self-service-password:latest
Download
Tarballs und Pakete für Debian und Red Hat sind verfügbar unter https://ltb-project.org/download.html
Debian- und Red-Hat-Repositorien sind ebenfalls verfügbar, siehe Installationsanweisungen.
Quellcode
Der Quellcode ist verfügbar unter https://github.com/ltb-project/self-service-password