Certains des modules PAM sont configurables. Les fichiers de configuration correspondants sont situés dans /etc/security. Cette section donne une brève description des fichiers de configuration appropriés pour l'exemple de sshd (pam_unix2.conf, pam_env.conf, pam_pwcheck.conf et limits.conf).
La méthode d'authentification classique utilisant les mots de passe est contrôlée par le module PAM pam_unix2. Il peut lire les données nécessaires dans /etc/passwd, /etc/shadow, les cartes NIS (Network Information Service - service d'informations réseau), les tables NIS+ ou une base de données LDAP. Le comportement de ce module peut être influencé soit par la configuration des options PAM de l'application elle-même, soit globalement via la modification du fichier /etc/security/pam_unix2.conf. Un fichier de configuration très simple pour le module est donné dans l'Exemple 36.6, « pam_unix2.conf ».
L'option nullok pour les modules de type auth et password indique que les mots de passe vides sont autorisés pour le type de compte correspondant. Les utilisateurs sont autorisés à changer les mots de passe de leur compte. L'option none pour le module de type session indique qu'aucun message n'est consigné au nom de ce module (paramétrage par défaut). Pour obtenir d'autres options de configuration, reportez-vous aux commentaires dans le fichier lui-même ainsi qu'à la page de manuel pam_unix2(8).
Ce fichier peut servir à définir un environnement standardisé pour les utilisateurs qui est paramétré chaque fois que le module pam_env est appelé. Grâce à lui, prédéfinissez les variables d'environnement à l'aide de la syntaxe suivante :
VARIABLE [DEFAULT=[value]] [OVERRIDE=[value]]
VARIABLENom de la variable d'environnement à définir.
[DEFAULT=[value]]Valeur par défaut que l'administrateur veut définir.
[OVERRIDE=[value]]Valeurs qui peuvent faire l'objet d'une demande et qui sont définies par pam_env, ce qui écrase la valeur par défaut.
Un exemple type d'utilisation de pam_env est l'adaptation de la variable DISPLAY, qui est modifiée chaque fois qu'un login est exécuté à distance. Il est présenté dans l'Exemple 36.7, « pam_env.conf ».
Exemple 36.7. pam_env.conf
REMOTEHOST DEFAULT=localhost OVERRIDE=@{PAM_RHOST}
DISPLAY DEFAULT=${REMOTEHOST}:0.0 OVERRIDE=${DISPLAY}
La première ligne définit la valeur localhost pour la variable REMOTEHOST, qui est utilisée chaque fois que pam_env ne parvient pas à déterminer d'autre valeur. La variable DISPLAY contient alors la valeur REMOTEHOST. Pour plus d'informations, reportez-vous aux commentaires dans le fichier /etc/security/pam_env.conf.
Ce fichier de configuration est destiné au module pam_pwcheck, qui lit les options dans ce fichier pour tous les modules de type password. Les paramètres enregistrés dans ce fichier sont prioritaires par rapport aux paramètres PAM d'une application individuelle. Si aucun paramètre propre à cette application n'a été défini, l'application utilise les paramètres globaux. L'Exemple 36.8, « pam_pwcheck.conf » indique à pam_pwcheck d'autoriser les mots de passe vides et les modifications de mots de passe. D'autres options pour ce module sont indiquées dans le fichier /etc/security/pam_pwcheck.conf.
Vous pouvez définir des limites système pour un utilisateur ou un groupe dans le fichier limits.conf, qui est lu par le module pam_limits. Ce fichier permet de définir soit des limites strictes (qu'il est absolument impossible d'outrepasser), soit des limites souples (qui peuvent être temporairement outrepassées). Pour plus d'informations sur la syntaxe et les options disponibles, reportez-vous aux commentaires inclus dans ce fichier.