L'authentification PAP est similaire dans son fonctionnement au programme login d'UNIX, à ceci près que PAP n'accorde pas l'accès shell à l'utilisateur. PAP utilise les fichiers de configuration PPP et la base de données PAP sous forme de fichier /etc/ppp/pap-secrets pour configurer l'authentification. PAP utilise également /etc/ppp/pap-secrets pour définir les informations d'identification de sécurité PAP. Les informations d'identification se composent d'un nom de pair, "nom d'utilisateur" dans le jargon PAP, et d'un mot de passe. Les informations d'identification PAP contiennent également les informations associées à chaque appelant autorisé à se connecter à la machine locale. Les noms d'utilisateur et mots de passe PAP peuvent être identiques aux noms d'utilisateur et mots de passe UNIX de la base de données de mots de passe, ou bien différents.
La base de données PAP est mise en oeuvre dans le fichier /etc/ppp/pap-secrets. Pour que l'authentification réussisse, les informations d'identification PAP des machines situées des deux côtés de la liaison PPP doivent être correctement configurées dans les fichiers /etc/ppp/pap-secrets. L'appelant (l'authentifié) fournit les informations d'identification dans les colonnes user et password du fichier /etc/ppp/pap-secrets ou dans le fichier +ua obsolète. Le serveur (l'authentificateur) valide les informations d'identification par rapport aux informations contenues dans le fichier /etc/ppp/pap-secrets, par l'intermédiaire de la base de données UNIX passwd ou de l'utilitaire PAM.
La syntaxe du fichier /etc/ppp/pap-secrets est la suivante.
myclient ISP-server mypassword *
Signification des paramètres .
Nom d'utilisateur PAP de l'appelant. Ce nom est souvent identique au nom d'utilisateur UNIX de l'appelant, en particulier si le serveur d'appel entrant utilise l'option login de PAP.
Nom de la machine distante, souvent un serveur d'appel entrant.
Mot de passe PAP de l'appelant.
Adresse IP associée à l'appelant. L'astérisque (*) représente n'importe quelle adresse IP.
Les mots de passe PAP sont envoyés via la liaison en clair, c'est-à-dire dans un format ASCII lisible. Pour l'appelant (l'authentifié), le mot de passe PAP doit être stocké en clair dans l'un des emplacements suivants :
dans /etc/ppp/pap-secrets ;
dans un autre fichier externe ;
dans un tube nommé par le biais de la fonction pap-secrets @ ;
en tant qu'option de pppd, sur la ligne de commande ou dans un fichier de configuration PPP ;
par l'intermédiaire du fichier +ua.
Sur le serveur (l'authentificateur), vous pouvez masquer le mot de passe PAP en effectuant l'une des opérations suivantes :
Spécifiez papcrypt et utilisez des mots de passe hachés par la commande encrypt dans le fichier pap-secrets.
Spécifiez l'option login sur pppd et omettez le mot de passe dans le fichier pap-secrets en plaçant des guillemets doubles ("") dans la colonne de mot de passe. Dans ce cas, l'authentification est effectuée par l'intermédiaire de la base de données passwd UNIX ou du mécanisme PAM.
L'authentification PAP se déroule dans l'ordre indiqué ci-dessous.
Figure 8-1 Processus d'authentification PAP
L'appelant (l'authentifié) appelle le pair distant (authentificateur) et fournit ses nom d'utilisateur et mot de passe PAP dans le cadre de la négociation de liaison.
Le pair vérifie l'identité de l'appelant dans son fichier /etc/ppp/pap-secrets. S'il utilise l'option login de PAP, le pair vérifie le nom d'utilisateur et le mot de passe de l'appelant dans sa base de données de mots de passe.
Si l'authentification réussit, le pair continue la négociation de liaison avec l'appelant. Si l'authentification échoue, la liaison est interrompue.
(Facultatif) Si l'appelant authentifie les réponses de pairs distants, ceux-ci doivent lui envoyer leurs informations d'identification PAP. Ainsi, le pair distant devient l'authentifié et l'appelant l'authentificateur.
(Facultatif) L'appelant d'origine lit son fichier /etc/ppp/pap-secrets pour vérifier l'identité du pair distant.
Si le pair est authentifié, la négociation se poursuit. Dans le cas contraire, la liaison est interrompue.
La négociation entre l'appelant et le pair se poursuit jusqu'à ce que la liaison soit finalement établie.
Vous pouvez ajouter l'option login pour authentifier les informations d'identification PAP dans les fichiers de configuration PPP. Lorsque vous spécifiez l'option login dans /etc/ppp/options par exemple, pppd vérifie que les informations d'identification PAP de l'appelant existent dans la base de données de mots de passe. L'exemple suivant représente le format d'un fichier /etc/ppp/pap-secrets avec l'option login.
joe * "" * sally * "" * sue * "" *
Signification des paramètres .
joe, sally et sue sont les noms des appelants autorisés.
L'astérisque (*) indique que tous les noms de serveur sont valides. L'option name n'est pas obligatoire dans les fichiers de configuration PPP.
Les guillemets doubles indiquent les mots de passe valides.
Si un mot de passe figure dans cette colonne, le mot de passe du pair doit correspondre à la fois au mot de passe PAP et au mot de passe dans la base de données passwd UNIX.
L'astérisque (*) indique que toutes les adresses IP sont valides.