Page suivante Page précédente Table des matières

4. Note sur l'authentification

Quand vous vous connectez à un Fournisseur d'Accès Internet, vous devez en général donner votre nom d'utilisateur et votre mot de passe. Cela peut être fait en utilisant plusieurs méthodes ; la méthode que vous utilisez en pratique est déterminée par votre fournisseur.

En plus des trois possibilités exposées, vous pouvez utiliser un lien sans authentification (en général quand vous contrôlez également l'autre bout de la ligne).

4.1 Nom d'utilisateur et mot de passe -- invites Login et password

En vérité il n'y a pas de méthode canonique pour l'authentification auprès d'un FAI lors de l'accès à l'Internet.

L'identification est faite avant le lancement de pppd, et c'est le logiciel qui numérote, en général chat, qui envoie le nom d'utilisateur et le mot de passe. Ces données sont envoyées sous forme de texte brut, donc cette méthode ne doit pas être considérée comme sûre.

Un script d'exemple pour chat, dans lequel vous pouvez voir comment faire passer un nom d'utilisateur et un mot de passe avant de lancer pppd, ressemblera à quelque chose comme ceci :

ABORT BUSY
ABORT "NO CARRIER"
ABORT VOICE
ABORT "NO DIALTONE" 
ABORT "NO ANSWER"
"" ATZ
OK ATDT_Numéro_De_Téléphone_
CONNECT \d\c
ogin _Nom_d_Utilisateur_
assword _Mot_De_Passe_

Les deux dernières lignes définissent le nom d'utilisateur et le mot de passe et quand les envoyer (après avoir reçu respectivement « ogin » et « assword »). Le script chat n'a besoin de voir qu'une partie des mots « login » et « password » ce qui permet de ne pas tester la première lettre de chaque mot, et donc de s'affranchir des problèmes de majuscule/minuscule.

Supposons que ce script se nomme provider, et qu'il soit enregistré dans le répertoire /etc/chatscript/. Alors, vous pouvez le lancer avec :

/usr/sbin/chat -v -f /etc/chatscripts/provider

4.2 PAP -- Password Authentification Protocol : Protocole d'Authentification du mot de Passe

Si le fournisseur dont vous utilisez les services demande le protocole d'authentification PAP, pendant la négociation LCP de PPP, ce dernier devra l'utiliser. Quand, après l'utilisation de chat, la connexion est établie, pppd est lancé. Dans ce scénario, pppd va envoyer le nom d'utilisateur et le mot de passe qu'il cherchera dans le fichier /etc/ppp/pap-secrets. Ce fichier doit avoir les droits de lecture et d'écriture pour root uniquement. De ce fait, personne ne peut lire les mots de passe qu'il contient.

PAP n'est pas très sûr vu que le mot de passe est envoyé sous forme de simple texte et donc peut être lu par quelqu'un qui surveille votre ligne de transmission.

Voici un exemple simple de fichier /etc/ppp/pap-secrets :

_Nom_d_Utilisateur * _Mot_De_Passe_

4.3 CHAP -- Challenge Authentication Protocol : Protocole d'Authentification Codé

Si le fournisseur dont vous utilisez les services demande le protocole d'authentification CHAP, pendant la négociation LCP de PPP, ce dernier devra l'utiliser. Quand, après l'utilisation de chat, la connexion est établie, pppd est lancé. Dans ce scénario, pppd va envoyer le nom d'utilisateur et le mot de passe qu'il cherchera dans le fichier /etc/ppp/pap-secrets. Ce fichier doit avoir les droits de lecture et d'écriture pour root uniquement. De ce fait, personne ne peut lire les mots de passe qu'il contient.

CHAP est plus sûr que PAP puisque le mot de passe n'est jamais envoyé en clair sur la ligne. Le serveur d'authentification envoie un identifiant au hasard (le challenge) que le client va crypter avec son mot de passe avant de le renvoyer à ce premier.

Voici un exemple simple de fichier /etc/ppp/chap-secrets :

_Nom_d_Utilisateur * _Mot_De_Passe_

Parfois un même FAI varie l'utilisation de ces protocoles, il n'est donc pas rare de définir le nom d'utilisateur et le mot de passe dans les deux fichiers.


Page suivante Page précédente Table des matières