| Red Hat Linux 7.3: Guide de référence officiel Red Hat Linux | ||
|---|---|---|
| Précédent | Chapitre 8. Modules d'authentification enfichables (PAM) | Suivant |
Quatre types de module PAM permettent de contrôler l'accès aux services. Ces modules dépendent de différents aspects du processus d'authorisation :
auth — utilisé pour authentifier l'utilisateur, par exemple en lui demandant son mot de passe et en le vérifiant. Il peut également établir des certificats d'identité, tels qu'une inscription à un groupe ou des tickets Kerberos.
account — utilisé pour vérifier que l'accès est autorisé. Par exemple, il peut vérifier si le compte n'a pas expiré ou si l'utilisateur est autorisé à se connecter à cette heure de la journée.
password — utilisé pour définir les mots de passe.
session — utilisé après l'authentification d'un utilisateur pour gérer la session de l'utilisateur. Ce type de module peut également effectuer des tâches supplémentaires requises pour autoriser l'accès (par exemple, pour monter le répertoire personnel de l'utilisateur ou activer sa boîte aux lettres).
![]() | Remarque |
|---|---|
Un module peut utiliser plusieurs des modules ci-dessus. Par exemple, pam_unix.so contient des éléments qui utilisent les quatre modules. |
Dans un fichier de configuration PAM, ce type de module est le premier a être défini. Par exemple, une ligne typique d'une configuration ressemble à ceci :
auth required /lib/security/pam_unix.so |
Ceci fait que PAM cherche l'élément auth dans le module pam_unix.so module.
Des modules peuvent être empilés afin d'être utilisés ensemble pour un but particulier. Par conséquent, l'ordre des modules est três important dans le processus d'authentification.
L'empilage requiert différentes conditions pour que l'administrateur puisse procéder à l'authentification d'un utilisateur. Par exemple, rlogin utilise normalement cinq modules auth empilés, comme le montre son fichier de configuration PAM :
auth required /lib/security/pam_nologin.so auth required /lib/security/pam_securetty.so auth required /lib/security/pam_env.so auth sufficient /lib/security/pam_rhosts_auth.so auth required /lib/security/pam_stack.so service=system-auth |
Avant d'accorder rlogin à un utilisateur, PAM s'assure que le fichier/etc/nologin n'existe pas, que l'utilisateur n'essaie pas de se connecter à distance en tant qu'utilisateur root au moyen d'une connexion réseau chiffrée et que toute variable d'environnement peut être chargée. Ensuite, une authentification rhosts réussie doit être effectuée avant que la connexion ne soit accordée. Si l'authentification rhosts échoue, une authentification standard au moyen d'un mot de passe est lancée.
Il est possible d'ajouter des modules d'authentification enfichables à tout moment et les applications prenant en charge PAM peuvent ensuite les utiliser. Par exemple, si vous élaborez une méthode de création de mot de passe unique et écrivez un module d'authentification enfichable pour la prendre en charge, tous les programmes reconnaissant les PAM pourront utiliser ce nouveau module et cette méthode de mot de passe à l'instant sans qu'ils n'aient besoin d'être recompilés ou modifiés. Comme vous pouvez l'imaginer, ceci est très utile car vous pouvez combiner (et tester) rapidement des méthodes d'authentification pour différents programmes sans devoir les recompiler.
La documentation sur l'écriture de modules est comprise avec le système dans /usr/share/doc/pam-numéro-version/.
| Précédent | Sommaire | Suivant |
| Fichiers de configuration PAM | Niveau supérieur | Indicateurs de contrôle PAM |