<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Guide pratique de l'authentification des utilisateurs</title><link href="style.css" rel="stylesheet" type="text/css" /><meta content="DocBook XSL Stylesheets V1.71.0" name="generator" /><meta name="description" content="Ce guide pratique explique comment l'information sur les utilisateurs et les groupes est stockée, comment les utilisateurs sont authentifiés sur un système Linux (PAM) et comment sécuriser l'authentification des utilisateurs sur votre système." /><meta name="keywords" content="Authentification des utilisateurs, utilisateur, mot de passe, PAM, NIS, /etc/passwd, /etc/shadow, /etc/group, /etc/gshadow" /></head><body><div class="article" lang="fr"><div class="titlepage"><div><div><h1 class="title"><a id="N10001" />
  Guide pratique de l'authentification des utilisateurs
 </h1></div><div><h3 class="subtitle"><i>
     Version française de : <span class="foreignphrase" lang="en"><em class="foreignphrase">User Authentication HOWTO</em></span>
  </i></h3></div><div><div class="author"><h3 class="author"><span class="firstname">Peter</span> <span class="surname">Hernberg</span></h3></div></div><div><div class="othercredit"><h3 class="othercredit"><span class="firstname">Raphaël</span> <span class="surname">Semeteys</span></h3><code class="email">&lt;<a href="mailto:raphael semeteys CHEZ wanadoo POINT fr">raphael semeteys CHEZ wanadoo POINT fr</a>&gt;</code><div class="contrib"><p>Adaptation française</p></div></div></div><div><p class="releaseinfo">Version : 0.9.fr.0.1</p></div><div><p class="pubdate">17 février 2005</p></div><div><div class="revhistory"><table summary="Revision history" width="100%" border="1"><tr><th colspan="3" valign="top" align="left"><b>Historique des versions</b></th></tr><tr><td align="left">Version 0.9.fr.0.1</td><td align="left">2005-02-17</td><td align="left">rcs</td></tr><tr><td colspan="3" align="left">Adaptation française. Passage de SGML DocBook à XML DocBook.</td></tr><tr><td align="left">Version 0.9</td><td align="left">2004-04-03</td><td align="left">fl</td></tr><tr><td colspan="3" align="left">Mise à jour des liens externes. <span class="emphasis"><em>Updated external links</em></span></td></tr><tr><td align="left">Version 0.8</td><td align="left">2003-02-20</td><td align="left">fl</td></tr><tr><td colspan="3" align="left">Modifications de langage et diverses corrections mineures. <span class="emphasis"><em>Language changes, various small fixes</em></span></td></tr><tr><td align="left">Version 0.5</td><td align="left">2000-05-15</td><td align="left">ph</td></tr><tr><td colspan="3" align="left">Ajout d'une section sur la  sécurisation de PAM et d'une autre sur les ressources. <span class="emphasis"><em>Added section on securing pam, added resources section</em></span></td></tr><tr><td align="left">Version 0.1</td><td align="left">2000-05-02</td><td align="left">ph</td></tr><tr><td colspan="3" align="left">Version initiale. <span class="emphasis"><em>Initial version</em></span></td></tr></table></div></div><div><div class="abstract"><p class="title"><b>Résumé</b></p><p>

 Ce guide pratique explique comment l'information sur les utilisateurs 
 et les groupes est stockée, comment les utilisateurs sont authentifiés 
 sur un système Linux (PAM) et comment sécuriser l'authentification des 
 utilisateurs sur votre système.

 </p></div></div></div><hr /></div><div class="toc"><p><b>Table des matières</b></p><dl><dt><span class="sect1"><a href="#N1007B">
  Introduction
 </a></span></dt><dd><dl><dt><span class="sect2"><a href="#N1007E">
   Comment ce document a vu le jour
  </a></span></dt><dt><span class="sect2"><a href="#N10083">
   Nouvelles versions de ce document
  </a></span></dt><dt><span class="sect2"><a href="#N10090">
   Commentaires et corrections
  </a></span></dt><dt><span class="sect2"><a href="#N1009D">
   Droits d'utilisation
  </a></span></dt><dt><span class="sect2"><a href="#N100B6">
   Remerciements
  </a></span></dt><dt><span class="sect2"><a href="#N100C3">Pré requis du lecteur</a></span></dt></dl></dd><dt><span class="sect1"><a href="#N100C8">
  Comment l'information des utilisateurs est stockée sur votre système
 </a></span></dt><dd><dl><dt><span class="sect2"><a href="#N100CB">
   <code class="filename">/etc/passwd</code>
  </a></span></dt><dt><span class="sect2"><a href="#N100E5">
   Mots de passes Shadow
  </a></span></dt><dt><span class="sect2"><a href="#N1010E">
   <code class="filename">/etc/group</code> et <code class="filename">/etc/gshadow</code>
  </a></span></dt><dt><span class="sect2"><a href="#N10130">
   Mots de passes encryptés par MD5
  </a></span></dt><dt><span class="sect2"><a href="#N1013B">
   Organiser le désordre
  </a></span></dt></dl></dd><dt><span class="sect1"><a href="#N1014C">
  PAM (Modules enfichables d'authentification ou <span class="foreignphrase" lang="en"><em class="foreignphrase">Pluggable Authentication Modules</em></span>)
 </a></span></dt><dd><dl><dt><span class="sect2"><a href="#N10155">
   Le pourquoi
  </a></span></dt><dt><span class="sect2"><a href="#N10172">
   Le quoi
  </a></span></dt><dt><span class="sect2"><a href="#N101A3">
   Le comment
  </a></span></dt><dt><span class="sect2"><a href="#N102B5">Obtenir de l'information complémentaire</a></span></dt></dl></dd><dt><span class="sect1"><a href="#N102BE">Sécuriser l'authentification des utilisateurs</a></span></dt><dd><dl><dt><span class="sect2"><a href="#N102C3">Un fichier <code class="filename">/etc/pam.d/other</code> sécurisé</a></span></dt><dt><span class="sect2"><a href="#N10321">Désactiver la connexion des utilisateurs avec des mots de passes vides</a></span></dt><dt><span class="sect2"><a href="#N1033E">Désactiver les services inutilisés</a></span></dt><dt><span class="sect2"><a href="#N1034C">Outils de piratage de mots de passes</a></span></dt><dt><span class="sect2"><a href="#N10357">Mots de passes Shadow et MD5</a></span></dt></dl></dd><dt><span class="sect1"><a href="#N10360">Exemple d'utilisation</a></span></dt><dd><dl><dt><span class="sect2"><a href="#N10365">Apache + mod_auth_pam</a></span></dt><dt><span class="sect2"><a href="#N1036E">Notre exemple</a></span></dt><dt><span class="sect2"><a href="#N10378">Installation de <span class="application">mod_auth_pam</span></a></span></dt><dt><span class="sect2"><a href="#N103C4">Configuration de PAM</a></span></dt><dt><span class="sect2"><a href="#N103FE">Configuration d'Apache</a></span></dt><dt><span class="sect2"><a href="#N1042C">Test de notre configuration</a></span></dt></dl></dd><dt><span class="sect1"><a href="#N10431">Ressources</a></span></dt><dd><dl><dt><span class="sect2"><a href="#N10439">PAM</a></span></dt><dt><span class="sect2"><a href="#N10452">Sécurité en général</a></span></dt><dt><span class="sect2"><a href="#N10472">Pages man</a></span></dt></dl></dd><dt><span class="sect1"><a href="#N104A9">Conclusion</a></span></dt></dl></div><div class="sect1" lang="fr"><div class="titlepage"><div><div><h2 class="title"><a id="N1007B" />
  Introduction
 </h2></div></div></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N1007E" />
   Comment ce document a vu le jour
  </h3></div></div></div><p>
  Alors que je tentais d'ajouter des services réseaux (pour la plupart inutiles :) à mon réseau personnel, j'ai été confronté à de nombreuses reprises au problème de l'authentification. J'ai donc décidé de comprendre comment l'authentification fonctionne sur Linux, d'écrire un guide pratique et d'en faire mon projet de fin d'études. J'espère que ce document vous aidera à comprendre cet aspect de l'administration système souvent oublié mais néanmoins très important.
  </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N10083" />
   Nouvelles versions de ce document
  </h3></div></div></div><p>
   Vous trouverez la plus récente version française de ce document à l'adresse : <a href="http://www.traduc.org/docs/howto/lecture/User-Authentication-HOWTO.html">http://www.traduc.org/docs/howto/lecture/User-Authentication-HOWTO.html</a>.
   </p><p>
   La plus récente version de la version originale de ce document est disponible à l'adresse : <a href="http://www.linuxdoc.org">http://www.linuxdoc.org</a>.
  </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N10090" />
   Commentaires et corrections
  </h3></div></div></div><p>
  Merci de faire parvenir en anglais à l'auteur vos questions et commentaires relatifs à la version originale de ce document à l'adresse <code class="email">&lt;<a href="mailto:petehern CHEZ yahoo POINT com">petehern CHEZ yahoo POINT com</a>&gt;</code>.
  </p><p>
   N'hésitez pas à faire parvenir tout commentaire relatif à la version française de ce document à <code class="email">&lt;<a href="mailto:commentaires CHEZ traduc POINT org">commentaires CHEZ traduc POINT org</a>&gt;</code> en précisant sont titre, sa date et sa version.
  </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N1009D" />
   Droits d'utilisation
  </h3></div></div></div><p>
   © 2000 Peter Hernberg pour la version originale.
  </p><p>
   © 2005 Raphaël Semeteys pour la version française.
  </p><p>
  Ce manuel peut être reproduit en tout ou partie, sans frais, en respectant les restrictions suivantes :
  </p><div class="itemizedlist"><ul><li><p>
   Le copyright ci-dessus et cette présente notice doivent être inclus sans modification sur toute copie, partielle ou complète.
   </p></li><li><p>
   Toute traduction ou travail dérivé doit être approuvé par écrit par l'auteur avant distribution.
   </p></li><li><p>
   Si vous ne distribuez qu'une partie de ce document, vous devez inclure les instructions nécessaires pour se procurer la totalité de ce guide pratique et offrir un moyen d'obtenir une version complète.
   </p></li><li><p>
   De courts extraits peuvent être reproduits à titre de citation sans cette notice si l'origine du document est correctement indiquée. Des exceptions à ces règles peuvent être autorisées pour l'enseignement : écrivez  à l'auteur et demandez ce qu'il en est. Ces restrictions sont destinées à nous protéger en tant qu'auteurs, et non pas pour vous gêner en tant qu'enseignants ou élèves. Tout le code source inclus dans ce document (outre le XML dans lequel est écrit ce document) est placé sous la Licence Publique Générale GNU, dont vous trouverez une copie sur <a href="http://www.fsf.org/licensing/licenses/gpl.html">http://www.fsf.org/licensing/licenses/gpl.html</a>.
   </p></li></ul></div></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N100B6" />
   Remerciements
  </h3></div></div></div><p>
  Merci à ma famille de me supporter depuis 18 ans. Merci aux gens de Debian de fournir une distribution si sympa avec laquelle je peux jouer. Merci à <a href="http://www.cgr.org/">CGR</a> de me payer à être un <span class="foreignphrase" lang="en"><em class="foreignphrase">geek</em></span>. Merci à Sandy Harris pour ses utiles suggestions. Et finalement j'aimerai remercier les fabricants de nouilles chinoises, car je ne sais comment je vivrais sans.
  </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N100C3" />Pré requis du lecteur</h3></div></div></div><p>
   Je considère dans la suite de ce document que le lecteur est à l'aise avec tout ce qui touche à l'exécution en ligne de commandes et l'édition de fichiers de configuration.
   </p></div></div><div class="sect1" lang="fr"><div class="titlepage"><div><div><h2 class="title"><a id="N100C8" />
  Comment l'information des utilisateurs est stockée sur votre système
 </h2></div></div></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N100CB" />
   <code class="filename">/etc/passwd</code>
  </h3></div></div></div><p>
  Dans pratiquement toutes les distributions Linux (ainsi que les versions commerciales d'Unix), l'information sur les utilisateurs est stockée dans <code class="filename">/etc/passwd</code>, un fichier texte contenant le <span class="foreignphrase" lang="en"><em class="foreignphrase">login</em></span> de chaque utilisateur, son mot de passe encrypté, un identifiant numérique unique d'utilisateur (appelé l'uid), un identifiant numérique unique de groupe (appelé le gid), un champ optionnel de commentaire (contenant généralement des choses comme le nom, le numéro de téléphone, etc.), le répertoire personnel et le shell préféré. Une entrée typique de <code class="filename">/etc/passwd</code> ressemble à ceci : 
  </p><pre class="programlisting">
  pete:K3xcO1Qnx8LFN:1000:1000:Peter Hernberg,,,1-800-FOOBAR:/home/pete:/bin/bash
  </pre><p>
  Comme vous pouvez le voir, c'est plutôt simple. Chaque entrée contient les six champs décrits plus haut, avec ":" comme séparateur. Si l'authentification des utilisateurs était aussi simple que cela, il n'y aurait pas besoin de ce guide.
  </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N100E5" />
   Mots de passes Shadow
  </h3></div></div></div><p>
  En observant votre <code class="filename">/etc/passwd</code>, il y a des chances que vous ayez vu quelque chose comme ceci :
  </p><pre class="programlisting">
  pete:x:1000:1000:Peter Hernberg,,,1-800-FOOBAR:/home/pete:/bin/bash
  </pre><p>
  Où est donc passé le mot de passe encrypté ? Avant de répondre, une petite explication s'impose.
  </p><p>
  Le ficher <code class="filename">/etc/passwd</code>, qui contient l'information sur tous les utilisateurs y compris leurs mots de passes encryptés, est consultable par tous, ce qui rend capable n'importe quel utilisateur d'obtenir le mot de passe encrypté de n'importe qui sur le système. Bien que les mots de passes soient encryptés, des programmes de piratage sont largement disponibles. Les mots de passes Shadow ont été développés afin de combattre cette menace grandissante.
   </p><p>
   Lorsque les mots de passes Shadow sont activés sur un système, le champ correspondant au mot de passe dans <code class="filename">/etc/passwd</code> est remplacé par un "x" et le véritable mot de passe encrypté est stocké dans <code class="filename">/etc/shadow</code>. Comme <code class="filename">/etc/shadow</code> est uniquement consultable par l'utilisateur root, les utilisateurs malicieux ne peuvent pas pirater les mots de passes des autres utilisateurs. Chaque entrée de <code class="filename">/etc/shadow</code> contient le login de l'utilisateur, son mot de passe crypté et un certain nombre de champs liés à l'expiration du mot de passe. Une entrée typique ressemble à ceci :
   </p><pre class="programlisting">
    pete:/3GJllg1o4152:11009:0:99999:7:::
   </pre></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N1010E" />
   <code class="filename">/etc/group</code> et <code class="filename">/etc/gshadow</code>
  </h3></div></div></div><p>
  L'information sur les groupes est stockée dans <code class="filename">/etc/group</code>. Le format est similaire à celui de <code class="filename">/etc/passwd</code>, avec chaque entrée contenant des champs pour le nom du groupe, le mot de passe, l'identifiant numérique (gid) et une liste de membres du groupe séparés par des virgules. Une entrée typique de <code class="filename">/etc/group</code> ressemble à ceci :
  </p><pre class="programlisting">
   pasta:x:103:spagetti,fettucini,linguine,vermicelli
  </pre><p>
  Comme vous pouvez le voir, il est également possible d'utiliser des mots de passes Shadow. Bien que les groupes ne disposent pratiquement jamais de mots de passes propres, cela ne coûte rien de stocker les mots de passes Shadow des groupes dans <code class="filename">/etc/gshadow</code>.
  </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N10130" />
   Mots de passes encryptés par MD5
  </h3></div></div></div><p>
  Traditionnellement, les mots de passes Unix sont encryptés avec la fonction standard crypt(). (Pour plus d'information sur la  fonction crypt(), se reporter à la page man <span class="citerefentry"><span class="refentrytitle">crypt</span>(3)</span>.) Au fur et à mesure que les ordinateurs sont devenus plus puissants, les mots de passes encryptés sont devenus plus faciles à pirater. Et avec l'émergence d'Internet, des outils de piratage utilisant la puissance de traitement de plusieurs ordinateurs en réseau ont fait leur apparition. De nombreuses "nouvelles" distributions offrent la possibilité d'encrypter les mots de passes avec l'algorithme de hashage MD5, qui est plus puissant. (Pour plus d'information sur l'algorithme de hashage MD5, se reporter au RFC 1321.) Bien que les mots de passes MD5 n'éliminent pas la menace du piratage, ils rendent cette tâche beaucoup plus difficile.
  </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N1013B" />
   Organiser le désordre
  </h3></div></div></div><p>
  Comme vous pouvez le voir, il existe plusieurs manières différentes de stocker l'information d'authentification des utilisateurs sur votre système (mots de passes Shadow sans encryptage MD5, mots de passes <code class="filename">/etc/passwd</code> avec encryptage MD5, etc.). Comment des programmes comme <span class="application">login</span> et <span class="application">su</span> savent-ils comment vérifier votre mot de passe ? Pire encore, et si vous vouliez modifier la manière dont les mots de passes sont stockés dans votre système ? Comment les programmes nécessitant votre mot de passe sauront-ils que les mots de passes sont désormais stockés différemment ? La solution est PAM.
  </p></div></div><div class="sect1" lang="fr"><div class="titlepage"><div><div><h2 class="title"><a id="N1014C" />
  PAM (Modules enfichables d'authentification ou <span class="foreignphrase" lang="en"><em class="foreignphrase">Pluggable Authentication Modules</em></span>)
 </h2></div></div></div><p>
 Les modules enfichables d'authentification sont au cœur de toute distribution moderne de Linux.
 </p><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N10155" />
   Le pourquoi
  </h3></div></div></div><p>
  Au tout début de Linux, si un programme comme <span class="application">su</span>, <span class="application">passwd</span>, <span class="application">login</span> ou <span class="application">xlock</span>, avait besoin d'authentifier un utilisateur, il lisait simplement l'information nécessaire dans <code class="filename">/etc/passwd</code>. Pour modifier le mot de passe il éditait simplement <code class="filename">/etc/passwd</code>. Cette méthode simple mais maladroite posait de nombreux problèmes aux administrateurs systèmes et aux développeurs d'applications. Une fois MD5 et les mots de passes Shadow devenus incroyablement populaires, chaque programme nécessitant l'authentification d'un utilisateur devait savoir récupérer l'information appropriée, tout en étant capable de gérer de nombreuses configurations différentes. Lorsque vous vouliez modifier la configuration de l'authentification des utilisateurs, tous ces programmes devaient être recompilés. PAM élimine ce désordre en permettant aux programmes d'authentifier les utilisateurs de manière transparente, indépendamment de la méthode de stockage de l'information.
  </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N10172" />
   Le quoi
  </h3></div></div></div><p>
  Voici un extrait du <a href="http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/pam.html">Guide administrateur système Linux-PAM (version anglaise)</a> : "Le projet Linux-PAM a pour objet de séparer le développement de logiciels d'autorisation de celui de méthodes d'authentification sécurisées. Ceci est réalisé en fournissant une bibliothèque de fonctions utilisables par une application pour demander qu'un utilisateur soit authentifié". Avec PAM, peu importe que votre mot de passe soit stocké dans <code class="filename">/etc/passwd</code> ou sur un serveur à Hong Kong. Lorsqu'un programme a besoin d'authentifier un utilisateur, PAM fournit une bibliothèque contenant les fonctions appropriées à la méthode d'authentification utilisée. Comme cette bibliothèque est chargée dynamiquement, le changement de méthode d'authentification peut être réalisé par simple modification d'un fichier de configuration.
  </p><p>
  La souplesse est un des plus grands atouts de PAM. PAM peut être utilisé, par exemple, pour refuser à certains programmes le droit d'authentifier les utilisateurs, pour n'autoriser que certains utilisateurs à être authentifiés, pour émettre des notifications lorsque certains programmes tentent de réaliser une authentification ou même pour priver tous les utilisateurs du droit de se connecter. La conception modulaire de PAM vous donne le contrôle total sur comment sont authentifiés les utilisateurs.
  </p><div class="sect3" lang="fr"><div class="titlepage"><div><div><h4 class="title"><a id="N10181" />
   Les distributions qui supportent PAM
  </h4></div></div></div><p>
  A peu près toutes les distributions supportent PAM depuis longtemps. En voici une liste non exhaustive :
  </p><div class="itemizedlist"><ul><li><p>Redhat depuis la version 5.0</p></li><li><p>Mandrake depuis la version 5.2</p></li><li><p>Debian depuis la version 2.1 (support partiel dans la 2.1 -- support total depuis la 2.2)</p></li><li><p>Caldera depuis la version 1.3</p></li><li><p>Turbolinux depuis la version 3.6</p></li><li><p>SuSE depuis la version 6.2</p></li></ul></div><p>
  Cette liste est certainement incomplète et sans doute erronée. J'apprécierai que vous envoyiez toute correction ou ajout à cette liste à l'adresse <code class="email">&lt;<a href="mailto:petehern CHEZ yahoo POINT com">petehern CHEZ yahoo POINT com</a>&gt;</code>.
  </p></div><div class="sect3" lang="fr"><div class="titlepage"><div><div><h4 class="title"><a id="N1019E" />
   Installer PAM
  </h4></div></div></div><p>
  Installer PAM en partant de zéro est un long processus hors du périmètre de ce guide pratique. Si PAM n'est pas installé sur votre  système, vous utilisez probablement une version si ancienne de votre distribution qu'il y a de nombreuses autres raisons de la mettre à jour. Si vous voulez vraiment faire l'installation vous-même, alors vous n'êtes certainement pas le genre de personne que je peux  aider. Pour toutes ces raisons, je considèrerai que PAM est déjà installé sur votre système.
  </p></div></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N101A3" />
   Le comment
  </h3></div></div></div><p>
  Assez parlé, rentrons dans le vif du sujet.
  </p><div class="sect3" lang="fr"><div class="titlepage"><div><div><h4 class="title"><a id="N101A8" />
   Fichiers de configuration de PAM
  </h4></div></div></div><p>
  Les fichiers de configuration de PAM sont stockés dans le répertoire <code class="filename">/etc/pam.d/</code>. (Si vous n'avez pas de répertoire <code class="filename">/etc/pam.d/</code>, ne vous en faites pas, je traiterai ce cas dans la section suivante.) Jetons-y un coup d'œil.
  </p><pre class="programlisting">
  <code class="prompt">~$ </code><strong class="userinput"><code>cd /etc/pam.d</code></strong>
  <code class="prompt">/etc/pam.d/$ </code><strong class="userinput"><code>ls</code></strong>
  chfn	chsh	login	other	passwd	su	xlock
  <code class="prompt">/etc/pam.d/$ </code>
  </pre><p>
  Le nombre de fichiers que vous trouverez dans ce répertoire varie en fonction de ce qui est installé sur votre système. Quoi qu'il en soit, vous avez remarqué l'existence d'un fichier pour chaque programme de votre système qui authentifie les utilisateurs. Comme vous l'avez probablement deviné, chaque fichier contient la configuration PAM pour le programme dont il porte le nom (sauf pour le fichier <code class="filename">other</code> dont nous allons parler dans un petit moment). Regardons le fichier de configuration PAM pour <span class="application">login</span> (j'ai condensé le fichier par souci de simplicité) :
  </p><pre class="programlisting">
  <code class="prompt">/etc/pam.d/$ </code><strong class="userinput"><code>cat login</code></strong>
  # Configuration PAM pour login
  auth       requisite  pam_securetty.so
  auth       required   pam_nologin.so
  auth       required   pam_env.so
  auth       required   pam_unix.so nullok
  account    required   pam_unix.so
  session    required   pam_unix.so
  session    optional   pam_lastlog.so
  password   required   pam_unix.so nullok obscure min=4 max=8
  </pre><p>
  Mais avant d'analyser ce fichier, je dois mentionner une petite chose.
  </p></div><div class="sect3" lang="fr"><div class="titlepage"><div><div><h4 class="title"><a id="N101E2" />
  Remarque
  </h4></div></div></div><p>
  Un petit pourcentage des lecteurs doit probablement se dire "Oh non ! Je n'ai pas de répertoire /etc/pam.d ! Votre liste affirme que ma distribution intègre PAM, mais je ne retrouve pas ce répertoire. Sans PAM, ma vie n'a plus de sens ! Que puis-je faire ?". Ne vous inquiétez pas, tout n'est pas perdu. Si vous savez que votre distribution intègre PAM mais que vous n'avez aucun répertoire <code class="filename">/etc/pam.d/</code>, alors votre configuration PAM est stockée dans <code class="filename">/etc/pam.conf</code>. Plutôt que d'être répartie sur plusieurs fichiers, l'intégralité de votre configuration PAM est stockée dans un fichier unique. Cela modifie légèrement la configuration de PAM mais les ajustements adéquats sont expliqués dans la section 3.3.4.
  </p></div><div class="sect3" lang="fr"><div class="titlepage"><div><div><h4 class="title"><a id="N101F0" />
   Syntaxe de configuration
  </h4></div></div></div><p>
  Les fichiers de configuration PAM ont la syntaxe suivante :
  </p><pre class="programlisting">
  type  contrôle  chemin-vers-le-module   arguments-du-module
  </pre><p>
  En prenant comme exemple le fichier de configuration de <span class="application">login</span> (voir plus haut), regardons de plus près cette syntaxe :
  </p><div class="variablelist"><p class="title"><b>Eléments de configuration PAM</b></p><dl><dt><span class="term"><span class="token">type</span></span></dt><dd><p>
    L'élément <span class="emphasis"><em>type</em></span> précise à PAM quel type d'authentification utiliser pour un module donné. Les modules de même types peuvent être chaînés, imposant ainsi à l'utilisateur de satisfaire à de multiples exigences pour pouvoir être authentifié. PAM reconnaît quatre types :
    </p><div class="variablelist"><dl><dt><span class="term">account</span></dt><dd><p>
       Détermine si l'utilisateur est autorisé à accéder au service, si son mot de passe a expiré, etc.
       </p></dd><dt><span class="term">auth</span></dt><dd><p>
       Détermine si l'utilisateur est bien celui qu'il prétend être, généralement via un mot de passe, mais éventuellement via un moyen plus sophistiqué comme la biométrie.
       </p></dd><dt><span class="term">password</span></dt><dd><p>
       Fournit à l'utilisateur un mécanisme pour modifier son authentification. Une fois encore il s'agit généralement de son mot de passe.
       </p></dd><dt><span class="term">session</span></dt><dd><p>
       Les actions à réaliser avant et/ou après l'authentification de l'utilisateur. Cela peut inclure des choses comme monter/démonter le répertoire personnel de l'utilisateur, journaliser la connexion/déconnexion et restreindre les services mis à disposition de l'utilisateur.
       </p></dd></dl></div><p>
     Dans le fichier de configuration de <span class="application">login</span>, on trouve au moins une entrée pour chacun de ces types. Comme il s'agit du programme qui permet à l'utilisateur de se connecter, il est compréhensible qu'il nécessite d'accéder à tous les types d'authentification.
     </p></dd><dt><span class="term"><span class="token">contrôle</span></span></dt><dd><p>
    L'élément <span class="emphasis"><em>contrôle</em></span> indique à PAM ce qu'il faut faire lorsque l'authentification réalisée par ce module échoue. PAM reconnaît quatre types de contrôles :
    </p><div class="variablelist"><dl><dt><span class="term">requisite</span></dt><dd><p>
      Tout échec retourné par le module implique le refus immédiat de l'authentification.
      </p></dd><dt><span class="term">required</span></dt><dd><p>
      L'échec implique également le refus de l'authentification, mais PAM passe quand même par tous les autres modules listés pour ce service avant de refuser définitivement l'authentification.
      </p></dd><dt><span class="term">sufficient</span></dt><dd><p>
      Si le retour du module est un succès, PAM accordera l'authentification, même si un module obligatoire (contrôle <span class="emphasis"><em>required</em></span>) précédent a échoué.
      </p></dd><dt><span class="term">optional</span></dt><dd><p>
       Le fait que le module échoue ou non n'a d'impact uniquement dans le cas où il s'agit du seul module de ce type configuré pour le service.
       </p></dd></dl></div><p>
     Dans le fichier de configuration de <span class="application">login</span>, on retrouve pratiquement tous les types de contrôles. <code class="filename">pam_unix.so</code> (le module principal d'authentification) est majoritaire parmi les modules requis (<span class="emphasis"><em>required</em></span>), <code class="filename">pam_securetty.so</code> (qui s'assure que l'utilisateur se connecte) est le seul module obligatoire et <code class="filename">pam_lastlog.so</code> (qui récupère les informations sur la connexion le plus récente de l'utilisateur) est le seul module optionnel.
      </p></dd><dt><span class="term"><span class="token">chemin-vers-le-module</span></span></dt><dd><p>
     Cet élément indique à PAM quel module utiliser et (éventuellement) où le trouver. La plupart des configurations contiennent uniquement le nom du module, comme c'est le cas dans notre fichier de configuration de <span class="application">login</span>. Dans ce cas, PAM recherche les modules dans le répertoire par défaut des modules PAM, normalement <code class="filename">/usr/lib/security</code>. Cependant, si votre distribution Linux est conforme au standard FHS (<span class="foreignphrase" lang="en"><em class="foreignphrase">Filesystem Hierarchy Standard</em></span>), les modules PAM peuvent être trouvés dans <code class="filename">/lib/security</code>.
     </p></dd><dt><span class="term"><span class="token">arguments-du-module</span></span></dt><dd><p>
     Il s'agit des arguments à transmettre au module. Chaque module possède ses propres arguments. Par exemple, dans notre fichier de configuration de <span class="application">login</span>, l'argument "nullok" ("null ok") passé au module <code class="filename">pam_unix.so</code> indique qu'un mot de passe vide ("null") est acceptable ("ok").
     </p></dd></dl></div></div><div class="sect3" lang="fr"><div class="titlepage"><div><div><h4 class="title"><a id="N1028D" />Fichier de configuration <code class="filename">pam.conf</code> </h4></div></div></div><p>
   Si votre configuration PAM est stockée dans <code class="filename">/etc/pam.conf</code> plutôt que dans <code class="filename">/etc/pam.d/</code>, les lignes de configuration sont un peu différentes. Plutôt que d'avoir un fichier de configuration par service, toutes les configurations sont stockées dans <code class="filename">/etc/pam.conf</code> avec le  nom du service comme premier élément de la  ligne. Par exemple, la ligne suivante dans <code class="filename">/etc/pam.d/login</code>:
    </p><pre class="programlisting">
    auth    required    pam_unix.so nullok
    </pre><p>
    deviendra celle-ci dans <code class="filename">/etc/pam.conf</code> :
    </p><pre class="programlisting">
    login   auth    required    pam_unix.so nullok
    </pre><p>
    A part cette différence mineure, le reste de la syntaxe de configuration PAM s'applique.
    </p></div></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N102B5" />Obtenir de l'information complémentaire</h3></div></div></div><p>
   Pour plus d'information concernant la configuration de PAM et la référence complète des modules PAM, consultez le <a href="http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/pam.html">Guide administrateur système Linux-PAM (version anglaise)</a>. Ce guide fait office de référence exhaustive et à jour au sujet de la configuration de PAM.
   </p></div></div><div class="sect1" lang="fr"><div class="titlepage"><div><div><h2 class="title"><a id="N102BE" />Sécuriser l'authentification des utilisateurs</h2></div></div></div><p>
  De nombreuses distributions intègrent une authentification des utilisateurs qui n'est pas sécurisée de manière adéquate. Cette  section présente certaines manières de sécuriser cette authentification sur votre système. Bien que faire ce qui est décrit plus bas rende votre système plus sécurisé, n'ayez cependant pas la naïveté de penser que cela vous rende pour autant invulnérable.
  </p><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N102C3" />Un fichier <code class="filename">/etc/pam.d/other</code> sécurisé</h3></div></div></div><p>
   Chaque fichier placé dans <code class="filename">/etc/pam.d/</code> contient la configuration relative à un service donné. L'exception à la règle est le fichier <code class="filename">/etc/pam.d/other</code>. Ce fichier contient la configuration à utiliser pour tout service ne disposant pas de son propre fichier de configuration. Par exemple, si le service (imaginaire) <span class="application">xyz</span> tentait une authentification, PAM chercherait un fichier <code class="filename">/etc/pam.d/xyz</code>. N'en trouvant aucun, l'authentification pour <span class="application">xyz</span> serait déterminée par le fichier <code class="filename">/etc/pam.d/other</code>. Comme <code class="filename">/etc/pam.d/other</code> est la configuration utilisée en dernier recours, il est important qu'elle soit sécurisée. Nous allons étudier deux configurations de <code class="filename">/etc/pam.d/other</code>, l'une quasi-paranoïaque et l'autre plus permissive.
   </p><div class="sect3" lang="fr"><div class="titlepage"><div><div><h4 class="title"><a id="N102ED" />Une configuration paranoïaque</h4></div></div></div><p>
    Voici une configuration paranoïaque de <code class="filename">/etc/pam.d/other</code> :
    </p><pre class="programlisting">
    auth	    required	pam_deny.so
    auth	    required	pam_warn.so
    account	    required	pam_deny.so
    account	    required	pam_warn.so
    password	required	pam_deny.so
    password	required	pam_warn.so
    session	    required	pam_deny.so
    session	    required	pam_warn.so
    </pre><p>
    Dans cette configuration, lorsqu'un service inconnu tente d'accéder à n'importe lequel des quatre types de configuration, PAM refuse d'abord l'authentification (via le module <code class="filename">pam_deny.so</code>) et journalise ensuite une alerte dans syslog (via le module <code class="filename">pam_warn.so</code>). A moins d'un bogue dans PAM, cette configuration est fortement sécurisée. Le seul problème est que cela peut causer des problèmes si jamais vous effacez par accident le fichier de configuration d'un autre service. Si votre fichier <code class="filename">/etc/pam.d/login</code> est effacé par erreur, plus personne ne pourra plus se connecter !
    </p></div><div class="sect3" lang="fr"><div class="titlepage"><div><div><h4 class="title"><a id="N10307" />Une configuration plus permissive</h4></div></div></div><p>
    Voici une configuration moins vicieuse :
    </p><pre class="programlisting">
    auth	    required	pam_unix.so
    auth	    required	pam_warn.so
    account	    required	pam_unix.so
    account	    required	pam_warn.so
    password	required	pam_deny.so
    password	required	pam_warn.so
    session	    required	pam_unix.so
    session	    required	pam_warn.so
    </pre><p>
    Cette configuration autorisera un service inconnu à authentifier (via le module <code class="filename">pam_unix.so</code>), sans pour autant l'autoriser à modifier le mot de passe de l'utilisateur. Bien que cela permette l'authentification par des services inconnus, une alerte est générée dans le journal syslog à chaque fois qu'un tel service tente une authentification.
    </p></div><div class="sect3" lang="fr"><div class="titlepage"><div><div><h4 class="title"><a id="N10315" />Choix de la configuration <code class="filename">/etc/pam.d/other</code></h4></div></div></div><p>
    A moins que vous ayez une très bonne raison de ne pas le faire, je vous recommande fortement d'implémenter la première configuration de <code class="filename">/etc/pam.d/other</code>. C'est un bon réflexe d'être "sécurisé par défaut". Si jamais vous avez vraiment besoin d'accorder à un nouveau service le droit d'authentification, vous pouvez tout simplement créer un nouveau fichier de configuration PAM pour ce service.
    </p></div></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N10321" />Désactiver la connexion des utilisateurs avec des mots de passes vides</h3></div></div></div><p>
   Sur la plupart des systèmes Linux il existe un certain nombre de comptes utilisateurs "factices" utilisés pour attribuer des  droits à des services systèmes comme serveurs ftp, Web ou les passerelles de messagerie. Disposer de ces comptes permet à votre système d'être plus sécurisé car si ces services sont compromis, un utilisateur malveillant n'obtiendra que les droits limités du compte factice, plutôt que les droits étendus d'un service système tournant sous root. Cependant, donner le droit de connexion à ces comptes constitue une faille de sécurité car ils ont généralement des mots de passes vides. L'option de configuration qui active les mots de passes vides est l'argument "nullok" transmis au module. Vous préférerez enlever cet argument de tous les modules de type "auth" des services autorisant les connexions. Il s'agit habituellement du service <span class="application">login</span>, mais cela peut également inclure des services comme <span class="application">rlogin</span> et <span class="application">ssh</span>. Ceci implique que la ligne suivante dans <code class="filename">/etc/pam.d/login</code> :
   </p><pre class="programlisting">
   auth		required	pam_unix.so	nullok
   </pre><p>
   doive être transformée en :
   </p><pre class="programlisting">
   auth		required	pam_unix.so
   </pre></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N1033E" />Désactiver les services inutilisés</h3></div></div></div><p>
   En regardant les fichiers situés dans <code class="filename">/etc/pam.d/</code>, vous remarquerez probablement la présence de fichiers de configuration pour un certain nombre de programmes que vous n'utilisez pas, voire même certains dont vous n'avez jamais entendu parler. Bien que le fait d'accorder l'authentification à ces services ne crée probablement pas d'énorme trou de sécurité, vous feriez mieux de leur refuser ce droit. Le  meilleur moyen de désactiver l'authentification PAM pour ces programmes est de renommer ces fichiers. Ne trouvant pas le fichier nommé d'après le service, PAM appliquera la configuration par défaut <code class="filename">/etc/pam.d/other</code> qui est, a priori, très sécurisée. Si plus tard vous vous rendez compte avoir besoin d'un de ces programmes, vous pouvez tout simplement redonner au fichier son nom initial et tout fonctionnera comme c'est sensé le faire.
   </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N1034C" />Outils de piratage de mots de passes</h3></div></div></div><p>
   Les outils de piratage de mots de passes peuvent certes être utilisés par des utilisateurs malveillants pour mettre à mal un système, mais peuvent aussi être utilisés par les administrateurs systèmes pour vérifier le  niveau de sécurité des mots de passes sur leurs systèmes. Les deux outils de piratage de mots de passes les plus utilisés sont "crack" et "John the Ripper". "Crack" est probablement déjà intégré à votre distribution favorite. "John the Ripper" peut être téléchargé sur <a href="http://www.openwall.com/john/">http://www.openwall.com/john/</a>. Lancez les outils sur votre base de mots de passes et vous serez probablement surpris par le résultat.
   </p><p>
   En outre, il existe un module PAM qui utilise la bibliothèque de "crack" pour vérifier le niveau de  sécurité du mot de passe d'un utilisateur lorsqu'il est modifié. Lorsque ce module est installé, l'utilisateur peut modifier son mot de passe uniquement lorsqu'il satisfait aux exigences minimales de sécurité.
   </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N10357" />Mots de passes Shadow et MD5</h3></div></div></div><p>
   Comme déjà dit dans la première section de ce document, les mots de passes Shadow et MD5 vous permettent de sécuriser votre système. Lors de la procédure d'installation, la plupart des distributions modernes vous demanderont si vous désirez utiliser les mots de passes MD5 et/ou Shadow. A moins que vous ayez une bonne raison de ne pas le faire, vous devriez activer ces options. Le processus de conversion des mots de passe non MD5 et non Shadow est compliqué et hors du périmètre de ce document. Le <a href="http://www.tldp.org/HOWTO/Shadow-Password-HOWTO.html">Guide pratique des mots de passes Shadow (version anglaise)</a> n'est plus vraiment à jour mais peut tout de même s'avérer utile sur le sujet.
   </p></div></div><div class="sect1" lang="fr"><div class="titlepage"><div><div><h2 class="title"><a id="N10360" />Exemple d'utilisation</h2></div></div></div><p>
  Dans cette section, je vais illustrer ce qui a été présenté dans la section précédente à l'aide d'un exemple simple d'utilisation.
  </p><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N10365" />Apache + mod_auth_pam</h3></div></div></div><p>
   A titre d'exemple, nous allons installer et configurer <span class="application">mod_auth_pam</span>, un module Apache permet d'authentifier les utilisateurs de votre serveur Web en passant par PAM. Dans la suite de cet exemple je considèrerai qu'Apache est déjà installé. Si ce n'est pas le cas, vous devriez être capables de trouver les paquetages d'installation auprès de votre distributeur.
   </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N1036E" />Notre exemple</h3></div></div></div><p>
   L'objectif est de configurer sur notre serveur Web une zone privée, le répertoire <code class="filename">famille/</code>, nécessitant une authentification des utilisateurs via PAM. Ce répertoire contient des informations familiales réservées uniquement aux membres du groupe "famille".
   </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N10378" />Installation de <span class="application">mod_auth_pam</span></h3></div></div></div><p>
   Tout d'abord, vous devez télécharger <span class="application">mod_auth_pam</span> depuis <a href="http://pam.sourceforge.net/mod_auth_pam/">http://pam.sourceforge.net/mod_auth_pam/</a>. Utilisez les commandes suivantes pour compiler <span class="application">mod_auth_pam</span> (vous devez être connectés en tant que root) : 
   </p><pre class="programlisting">
   <code class="prompt">~#</code> <strong class="userinput"><code>tar xzf mod_auth_pam.tar.gz</code></strong>
   <code class="prompt">~#</code> <strong class="userinput"><code>cd mod_auth_pam-1.0a</code></strong>
   <code class="prompt">~/mod_auth_pam-1.0a#</code> <strong class="userinput"><code>make</code></strong>
   <code class="prompt">~/mod_auth_pam-1.0a#</code> <strong class="userinput"><code>make install</code></strong>
   </pre><p>
   Si vous avec des problèmes lors de l'installation du module <span class="application">mod_auth_pam</span>, assurez-vous d'avoir bien installé le paquetage <span class="application">apache-dev </span> de votre distribution. Une fois le module installé vous devrez redémarrer Apache. Cela est habituellement fait par la commande suivante (encore une fois vous devez être root) :
   </p><pre class="programlisting">
   <code class="prompt">~#</code> <strong class="userinput"><code>/etc/init.d/apache restart</code></strong>
   </pre></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N103C4" />Configuration de PAM</h3></div></div></div><p>
    La configuration PAM pour Apache est stockée dans <code class="filename">/etc/pam.d/httpd</code>. La configuration par défaut (installée en même temps que <span class="application">mod_auth_pam</span>) est sécurisée mais utilise un module (<code class="filename">pam_pwdb.so</code>) qui est indisponible sur de nombreux systèmes. (En outre, configurer ce module à partir de zéro sera une vraie partie de plaisir !) En conclusion, effacez le fichier <code class="filename">/etc/pam.d/httpd</code> et créez en un nouveau.
    </p><div class="sect3" lang="fr"><div class="titlepage"><div><div><h4 class="title"><a id="N103D9" />Décider comment configurer PAM</h4></div></div></div><p>
     Si nous désirons configurer comment PAM traitera les requêtes d'authentification d'Apache, nous devons déterminer exactement ce que PAM va vérifier. Tout d'abord, nous voulons que PAM vérifie que le mot de passe de l'utilisateur est identique à celui stocké au niveau du système. Cela ressemble au type "auth" et au module <code class="filename">pam_unix.so</code>. Nous positionnerons le contrôle du module à "<span class="emphasis"><em>required</em></span>", ainsi l'authentification échouera en cas de mot de passe incorrect. Voici à quoi ressemblera la première ligne de notre fichier <code class="filename">/etc/pam.d/httpd</code> :
     </p><pre class="programlisting">
     auth	required	pam_unix.so
     </pre><p>
     Ensuite, nous devons nous assurer que le compte de l'utilisateur est valide (i.e. son mot de passe n'a pas expiré ou tout autre problème de ce genre). Il s'agit du type "account", qui est également fourni par le module <code class="filename">pam_unix.so</code>. De même, nous positionnerons le contrôle du module à "<span class="emphasis"><em>required</em></span>". Après avoir ajouté cette ligne, notre fichier de configuration <code class="filename">/etc/pam.d/httpd</code> ressemble à ceci :
     </p><pre class="programlisting">
     auth	required	pam_unix.so
     account	required	pam_unix.so
     </pre><p>
     Ce n'est pas très sophistiqué mais cela fonctionne. C'est une bonne base de départ pour configurer des services PAM.
     </p></div></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N103FE" />Configuration d'Apache</h3></div></div></div><p>
    Maintenant que PAM est configuré pour authentifier les requêtes d'Apache, nous allons configurer Apache afin d'utiliser PAM pour gérer l'accès au répertoire <code class="filename">famille/</code>. Pour ce faire, ajoutez les lignes suivantes à votre fichier <code class="filename">httpd.conf</code> (habituellement stocké dans le répertoire <code class="filename">/etc/apache/</code> ou <code class="filename">/etc/httpd</code>) :
    </p><pre class="programlisting">
    &lt;Directory /var/www/famille&gt;
    AuthPAM_Enabled on
    AllowOverride None
    AuthName "Secrets de famille"
    AuthType "basic"
    require group famille
    &lt;/Directory&gt;
    </pre><p>
    Il se peut que vous ayez à remplacer <code class="filename">/var/www/</code> par l'emplacement par défaut de vos documents Web, qui est souvent <code class="filename">/home/httpd/</code>. Quel que soit le répertoire concerné, vous devez y créer le sous répertoire <code class="filename">famille</code>.
    </p><p>
    Avant de tester notre configuration, je vais prendre quelques minutes pour expliquer la configuration Apache que vous venez de réaliser. La directive &lt;Directory&gt; est utilisée pour encapsuler des données de configuration pour ce répertoire. A l'intérieur de cette directive, nous avons activé l'authentification PAM ("AuthPAM_enabled on"), désactivé la surcharge de la configuration ("AllowOverride none"), nommé la zone d'authentification "Secrets de famille" (AuthName "Secrets de famille"), positionné le type de l'authentification HTTP (et non l'authentification PAM) à la valeur par défaut ("AuthType "basic"") et restreint l'accès au groupe "famille" ("require group famille").
   </p></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N1042C" />Test de notre configuration</h3></div></div></div><p>
    Maintenant que tout est correctement configuré, il est temps d'admirer notre succès. Lancez votre navigateur favori et rendez vous à http://votre-domaine/famille/ (en remplaçant votre-domaine par votre nom de domaine). Ca y est, vous disposez désormais d'un système d'authentification des utilisateurs !
    </p></div></div><div class="sect1" lang="fr"><div class="titlepage"><div><div><h2 class="title"><a id="N10431" />Ressources</h2></div></div></div><p>
  Il existe un certain nombre de ressources, en ligne ou pas, où vous pourrez trouver de l'information concernant l'authentification des utilisateurs. Si vous connaissez des ressources susceptibles d'être ajoutées à cette liste, envoyez moi un message à l'adresse <code class="email">&lt;<a href="mailto:petehern CHEZ yahoo POINT com">petehern CHEZ yahoo POINT com</a>&gt;</code>.
  </p><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N10439" />PAM</h3></div></div></div><div class="itemizedlist"><ul><li><p>
     <a href="http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/pam.html">Guide administrateur système Linux-PAM (version anglaise)</a>
    </p></li><li><p>
     <a href="http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/pam_modules.html">Manuel de développement de module Linux-PAM (version anglaise)</a>
    </p></li><li><p>
     <a href="http://www.kernel.org/pub/linux/libs/pam/Linux-PAM-html/pam_appl.html">Manuel de développement d'application Linux-PAM (version anglaise)</a>
    </p></li></ul></div></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N10452" />Sécurité en général</h3></div></div></div><div class="itemizedlist"><ul><li><p>
     <a href="http://www.linuxsecurity.com/">linuxsecurity.com</a>
    </p></li><li><p>
     <a href="http://www.securitywatch.com">securitywatch.com</a>
    </p></li><li><p>
     <a href="http://www.traduc.org/docs/howto/lecture/Security-HOWTO.html">Guide pratique de la sécurité</a>
    </p></li><li><p>
     <a href="http://www.packetstormsecurity.org">Packetstorm</a>
    </p></li></ul></div></div><div class="sect2" lang="fr"><div class="titlepage"><div><div><h3 class="title"><a id="N10472" />Pages man</h3></div></div></div><p>
   Beaucoup d'information peut être recueillie dans les pages du manuel de votre système. Ci suivent quelques pages man relatives à l'authentification des utilisateurs. Le nombre entre parenthèses se réfère à la section concernée de la page man. Par exemple, pour visualiser la page man passwd(5), vous devez entrer <strong class="userinput"><code>man 5 passwd</code></strong>.
   </p><div class="itemizedlist"><ul><li><p>
     <span class="citerefentry"><span class="refentrytitle">passwd</span>(5)</span>
    </p></li><li><p>
     <span class="citerefentry"><span class="refentrytitle">crypt</span>(3)</span>
    </p></li><li><p>
     <span class="citerefentry"><span class="refentrytitle">pam.d</span>(5)</span>
    </p></li><li><p>
     <span class="citerefentry"><span class="refentrytitle">group</span>(5)</span>
    </p></li><li><p>
     <span class="citerefentry"><span class="refentrytitle">shadow</span>(5)</span>
    </p></li></ul></div></div></div><div class="sect1" lang="fr"><div class="titlepage"><div><div><h2 class="title"><a id="N104A9" />Conclusion</h2></div></div></div><p>
  J'espère que vous avez trouvé ce guide utile. Faites moi part de toute question, commentaire ou suggestion. Vous pouvez me contacter à l'adresse <code class="email">&lt;<a href="mailto:petehern CHEZ yahoo POINT com">petehern CHEZ yahoo POINT com</a>&gt;</code>.
  </p></div></div></body></html>