[Work in progress] PAM (Pluggable Authentication Modules) est un ensemble de librairies qui fournit aux programmes un moyen d'authentification unifié indépendant de la méthode d'authentification configurée sur le système : mots de passe locaux, LDAP... La configuration de PAM pour les applications qui l'utilisent se situe dans `/etc/pam.d/*`. Chaque application a son fichier de configuration, par exemple `/etc/pam.d/sshd`. # Syntaxe des fichiers de configuration La configuration est constituée de lignes qui ont la forme : ~~~ type control_flag module_path [module_arguments] ~~~ Commentaires : * type : * control_flag : * module_path : * module_arguments : arguments passés pour contrôler le module # Utilisation concrète ## Vérifier si un programme est capable d'utiliser PAM Par exemple pour `sshd` : ~~~ $ ldd /usr/sbin/sshd | grep libpam.so ~~~ ## Ne pas envoyer les messages de connexion SSH d'un utilisateur Dans `/etc/pam.d/sshd`, on ajoute : ~~~ session [success=done default=ignore] pam_succeed_if.so quiet service in sshd user = my_user ~~~ Juste avant la ligne : ~~~ # Standard Un*x session setup and teardown. @include common-session ~~~ Commentaires : * `quiet` signale à PAM ne pas logger les messages quand `sshd user = my_user` * `success=done` signale à PAM d'appliquer la règle si `pam_succeed_if.so` renvoie