
Présentation
Self Service Password est une application PHP qui permet aux utilisateurs de changer leur mot de passe dans un annuaire LDAP.
L'application peut être utilisée sur des annuaires LDAPv3 standard (OpenLDAP, OpenDS, ApacheDS, Sun Oracle DSEE, Novell, etc.) et également sur Active Directory.

Elle dispose des fonctionnalités suivantes :
- Mode Samba pour changer les mots de passe Samba
- Mode Active Directory
- Hachage de mots de passe (MD5, SHA, SHA2, Crypt, Argon2)
- Politique de mot de passe locale :
- Longueur minimale/maximale
- Caractères interdits
- Compteurs de caractères majuscules, minuscules, chiffres ou spéciaux
- Vérification de la réutilisation de l'ancien mot de passe
- Mot de passe identique au login ou à d'autres attributs LDAP
- Complexité (différentes classes de caractères)
- Mots interdits
- Utilisation de l'API Have I been pawned
- Entropie
- Messages d'aide
- Réinitialisation par questions de sécurité
- Réinitialisation par défi par courriel (jeton envoyé par courriel)
- Réinitialisation par SMS (via un service Email 2 SMS externe ou une API SMS)
- Modification de la clé SSH dans l'annuaire LDAP
- Modification de l'adresse courriel et du numéro de téléphone dans l'annuaire LDAP
- Captcha (intégré)
- Notification par courriel après le changement de mot de passe
- Script hook avant et après le changement de mot de passe
- API REST
Prérequis
- PHP (>=7.4)
- Extensions PHP requises :
- php-curl (API haveibeenpwned)
- php-gd (captcha)
- php-filter
- php-ldap
- php-mbstring (réinitialisation par courriel)
- php-openssl (chiffrement des jetons, probablement intégré)
- Smarty >= 3
- fonctions de cryptographie robustes disponibles (pour random_compat, PHP 7 ou libsodium ou /dev/urandom lisible ou extension php-mcrypt installée)
- configuration valide du serveur de messagerie PHP
- configuration de session PHP valide
Documentation
La documentation est disponible sur https://self-service-password.readthedocs.io/en/latest/
Docker
Nous fournissons une image Docker officielle.
Créez un fichier de configuration minimal :
<?php // My SSP configuration
$keyphrase = "mysecret";
$debug = true;
?>
Puis exécutez :
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
Téléchargement
Les archives tar et paquets pour Debian et Red Hat sont disponibles sur https://ltb-project.org/download.html
Les dépôts Debian et Red Hat sont également disponibles, voir les instructions d'installation.
Code source
Le code source est disponible sur https://github.com/ltb-project/self-service-password