github.com/krum110487/go-htaccess@v0.0.0-20240316004156-60641c8e7598/tests/data/apache_2_2_34/manual/suexec.html.fr (about)

     1  <?xml version="1.0" encoding="ISO-8859-1"?>
     2  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
     3  <html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
     4  <meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
     5  <!--
     6          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
     7                This file is generated from xml source: DO NOT EDIT
     8          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
     9        -->
    10  <title>Support suEXEC - Serveur Apache HTTP Version 2.2</title>
    11  <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
    12  <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
    13  <link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="./style/css/prettify.css" />
    14  <script src="./style/scripts/prettify.min.js" type="text/javascript">
    15  </script>
    16  
    17  <link href="./images/favicon.ico" rel="shortcut icon" /><link href="http://httpd.apache.org/docs/current/suexec.html" rel="canonical" /></head>
    18  <body id="manual-page"><div id="page-header">
    19  <p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p>
    20  <p class="apache">Serveur Apache HTTP Version 2.2</p>
    21  <img alt="" src="./images/feather.gif" /></div>
    22  <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
    23  <div id="path">
    24  <a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="./">Version 2.2</a></div><div id="page-content"><div class="retired"><h4>A savoir</h4>
    25              <p>Ce document concerne une version ancienne (<strong>2.2</strong>)
    26  	    du serveur HTTP Apache. La version actuelle est
    27  	    documentée <a href="http://httpd.apache.org/docs/current">ici</a>. Si vous n'avez
    28  	    pas encore effectué la mise è jour, veuillez suivre <a href="http://httpd.apache.org/docs/current/upgrading.html">ce
    29  	    lien</a> pour plus d'informations.</p>
    30          <p>Pour consulter la version actuelle de ce
    31  	document, vous pouvez suivre <a href="http://httpd.apache.org/docs/current/suexec.html">ce lien</a>.</p></div><div id="preamble"><h1>Support suEXEC</h1>
    32  <div class="toplang">
    33  <p><span>Langues Disponibles: </span><a href="./en/suexec.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
    34  <a href="./fr/suexec.html" title="Français">&nbsp;fr&nbsp;</a> |
    35  <a href="./ja/suexec.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
    36  <a href="./ko/suexec.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
    37  <a href="./tr/suexec.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
    38  </div>
    39  
    40      <p>La fonctionnalité <strong>suEXEC</strong> permet
    41      l'exécution des programmes <strong>CGI</strong> et
    42      <strong>SSI</strong> sous un identifiant utilisateur autre que celui sous
    43      lequel s'exécute le serveur web qui appelle ces programmes.
    44      Normalement, lorsqu'un programme CGI ou SSI est lancé, il
    45      s'exécute sous le même identifiant utilisateur que celui du serveur web qui
    46      l'appelle.</p>
    47  
    48      <p>Utilisée de manière appropriée, cette fonctionnalité peut
    49      réduire considérablement les risques de sécurité encourus
    50      lorsqu'on autorise les utilisateurs à développer et faire
    51      s'exécuter des programmes CGI ou SSI de leur cru. Cependant, mal
    52      configuré, suEXEC peut causer de nombreux problèmes et même créer
    53      de nouvelles failles dans la sécurité de votre ordinateur. Si
    54      vous n'êtes pas familier avec la gestion des programmes
    55      <em>setuid root</em> et les risques de sécurité qu'ils comportent,
    56      nous vous recommandons vivement de ne pas tenter
    57      d'utiliser suEXEC.</p>
    58    </div>
    59  <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#before">Avant de commencer</a></li>
    60  <li><img alt="" src="./images/down.gif" /> <a href="#model">Modèle de sécurité de suEXEC</a></li>
    61  <li><img alt="" src="./images/down.gif" /> <a href="#install">Configurer et installer suEXEC</a></li>
    62  <li><img alt="" src="./images/down.gif" /> <a href="#enable">Activation et désactivation
    63  de suEXEC</a></li>
    64  <li><img alt="" src="./images/down.gif" /> <a href="#usage">Utilisation de suEXEC</a></li>
    65  <li><img alt="" src="./images/down.gif" /> <a href="#debug">Débogage de suEXEC</a></li>
    66  <li><img alt="" src="./images/down.gif" /> <a href="#jabberwock">Avis à la population !
    67      Avertissements et exemples</a></li>
    68  </ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
    69  <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
    70  <div class="section">
    71  <h2><a name="before" id="before">Avant de commencer</a></h2>
    72  
    73      <p>Avant de foncer tête baissée dans la lecture de ce document,
    74      vous devez tenir compte des hypothèses faites par le Groupe
    75      Apache et dans ce document.</p>
    76  
    77      <p>Premièrement, vous devez utiliser un système d'exploitation
    78      UNIX ou dérivé, capable d'effectuer des opérations
    79      <strong>setuid</strong> et <strong>setgid</strong>. Tous les
    80      exemples de commande sont fournis dans ce context. D'autres
    81      plates-formes, même si elles supportent suEXEC, peuvent
    82      présenter une configuration différente.</p>
    83  
    84      <p>Deuxièmement, vous devez être familier avec les concepts de base
    85      relatifs à la sécurité de votre ordinateur et son administration.
    86      Ceci implique la compréhension des opérations
    87      <strong>setuid/setgid</strong> et des différents effets qu'elles
    88      peuvent produire sur votre système et son niveau de sécurité.</p>
    89  
    90      <p>Troisièmement, vous devez utiliser une version
    91      <strong>non modifiée</strong> du code de suEXEC. L'ensemble du
    92      code de suEXEC a été scruté et testé avec soin par les développeurs
    93      et de nombreux bêta testeurs. Toutes les précautions ont été prises
    94      pour s'assurer d'une base sûre de code non seulement simple, mais
    95      aussi solide. La modification de ce code peut causer des problèmes
    96      inattendus et de nouveaux risques de sécurité. Il est
    97      <strong>vivement</strong> recommandé de ne pas modifier le code de
    98      suEXEC, à moins que vous ne soyez un programmeur spécialiste des
    99      particularités liées à la sécurité, et souhaitez partager votre
   100      travail avec le Groupe Apache afin de pouvoir en discuter.</p>
   101  
   102      <p>Quatrièmement et dernièrement, le Groupe Apache a décidé de ne
   103      <strong>PAS</strong> inclure suEXEC dans l'installation par défaut
   104      d'Apache. Pour pouvoir mettre en oeuvre suEXEC, l'administrateur
   105      doit porter la plus grande attention aux détails. Après avoir bien
   106      réfléchi aux différents points de la configuration de suEXEC,
   107      l'administrateur peut l'installer selon les méthodes classiques.
   108      Le choix de chaque paramètre de configuration doit être
   109      déterminé et spécifié avec soin par l'administrateur, afin de
   110      maintenir la sécurité du système de manière appropriée lors de
   111      l'utilisation de la fonctionnalité suEXEC. C'est par le biais de
   112      ce processus minutieux que le Groupe Apache espère réserver
   113      l'installation de suEXEC aux administrateurs prudents et
   114      suffisamment déterminés à vouloir l'utiliser.</p>
   115  
   116      <p>Vous êtes encore avec nous ? Oui ? Bien.
   117      Alors nous pouvons continuer !</p>
   118  </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
   119  <div class="section">
   120  <h2><a name="model" id="model">Modèle de sécurité de suEXEC</a></h2>
   121  
   122      <p>Avant d'installer et configurer suEXEC, nous allons tout d'abord
   123      décrire le modèle de sécurité que vous êtes sur le point
   124      d'implémenter. Vous devriez ainsi mieux comprendre ce qui se passe
   125      vraiment à l'intérieur de suEXEC et quelles précautions ont été
   126      prises pour préserver la sécurité de votre système.</p>
   127  
   128      <p><strong>suEXEC</strong> est basé sur un programme "conteneur"
   129      (wrapper) setuid qui est appelé par le serveur web Apache principal.
   130      Ce conteneur est appelé quand une requête HTTP concerne
   131      un programme CGI ou SSI que l'administrateur
   132      a décidé de faire s'exécuter
   133      sous un utilisateur autre que celui du serveur principal.
   134      Lorsqu'il reçoit une telle requête, Apache fournit au conteneur
   135      suEXEC le nom du programme, ainsi que les identifiants utilisateur
   136      et groupe sous lesquels le programme doit s'exécuter.</p>
   137  
   138      <p>Le conteneur effectue ensuite les vérifications suivantes afin
   139      de déterminer la réussite ou l'échec du processus -- si une seule
   140      de ces conditions n'est pas vérifiée, le programme journalise
   141      l'erreur et se termine en retournant un code d'erreur, sinon il
   142      continue :</p>
   143  
   144      <ol>
   145        <li>
   146          <strong>L'utilisateur qui exécute le conteneur est-il un
   147  	utilisateur valide de ce système ?</strong>
   148  
   149          <p class="indent">
   150            Ceci permet de s'assurer que l'utilisateur qui exécute le
   151  	  conteneur est vraiment un utilisateur appartenant au système.
   152          </p>
   153       </li>
   154  
   155       <li>
   156          <strong>Le conteneur a-t-il été appelé avec un nombre
   157  	d'arguments correct ?</strong>
   158  
   159          <p class="indent">
   160            Le conteneur ne s'exécutera que si on lui fournit un nombre
   161  	  d'arguments correct. Le serveur web apache sait quel est le
   162  	  bon format des arguments. Si le conteneur ne reçoit pas un
   163  	  nombre d'arguments correct, soit il a été modifié,
   164  	  soit quelque chose ne va pas dans la portion suEXEC de
   165  	  votre binaire Apache.
   166          </p>
   167        </li>
   168  
   169        <li>
   170          <strong>Cet utilisateur valide est-il autorisé à exécuter le
   171  	conteneur ?</strong>
   172  
   173          <p class="indent">
   174            Cet utilisateur est-il celui autorisé à exécuter le
   175  	  conteneur ? Un seul utilisateur (celui d'Apache) est
   176  	  autorisé à exécuter ce programme.
   177          </p>
   178        </li>
   179  
   180        <li>
   181          <strong>Le chemin du programme CGI ou SSI cible est-il
   182  	non sûr ?</strong>
   183  
   184          <p class="indent">
   185            Le chemin du programme CGI ou SSI cible débute-t-il par un
   186  	  '/' ou contient-il une référence arrière '..' ? Ceci est
   187  	  interdit ; le programme CGI ou SSI cible doit se trouver dans
   188  	  la hiérarchie de la racine des documents de suEXEC (voir
   189  	  <code>--with-suexec-docroot=<em>DIR</em></code> ci-dessous).
   190          </p>
   191        </li>
   192  
   193        <li>
   194          <strong>Le nom utilisateur cible est-il valide ?</strong>
   195  
   196          <p class="indent">
   197            L'utilisateur cible existe-t-il ?
   198          </p>
   199        </li>
   200  
   201        <li>
   202          <strong>Le nom du groupe cible est-il valide ?</strong>
   203  
   204          <p class="indent">
   205            Le groupe cible existe-t-il ?
   206          </p>
   207        </li>
   208  
   209        <li>
   210          <strong>L'utilisateur cible n'est-il <em>PAS</em>
   211  	superutilisateur ?</strong>
   212  
   213  
   214          <p class="indent">
   215            suEXEc ne permet pas à
   216  	  <code><em>root</em></code> d'exécuter des programmes CGI/SSI.
   217          </p>
   218        </li>
   219  
   220        <li>
   221          <strong>Le numéro de l'identifiant de l'utilisateur cible
   222  	est-il <em>SUPERIEUR</em> au numéro d'identifiant
   223  	minimum ?</strong>
   224  
   225          <p class="indent">
   226            Le numéro d'identifiant utilisateur minimum est défini à
   227  	  l'exécution du script configure. Ceci vous permet de définir
   228  	  le numéro d'identifiant utilisateur le plus bas qui sera
   229  	  autorisé à éxécuter des programmes CGI/SSI. En particulier,
   230  	  cela permet d'écarter les comptes système.
   231          </p>
   232        </li>
   233  
   234        <li>
   235          <strong>Le groupe cible n'est-il <em>PAS</em> le groupe
   236  	superutilisateur ?</strong>
   237  
   238          <p class="indent">
   239            Actuellement, suEXEC ne permet pas au groupe
   240  	  <code><em>root</em></code> d'exécuter des programmes CGI/SSI.
   241          </p>
   242        </li>
   243  
   244        <li>
   245          <strong> Le numéro d'identifiant du groupe cible est-il
   246  	<em>SUPERIEUR</em> au numéro d'identifiant minimum ?</strong>
   247  
   248          <p class="indent">
   249            Le numéro d'identifiant de groupe minimum est spécifié lors
   250  	  de l'exécution du script configure. Ceci vous permet de
   251  	  définir l'identifiant de groupe le plus bas possible qui sera
   252  	  autorisé à exécuter des programmes CGI/SSI, et est
   253  	  particulièrement utile pour écarter les groupes "système".
   254          </p>
   255        </li>
   256  
   257        <li>
   258          <strong>Le conteneur peut-il obtenir avec succès l'identité
   259  	des utilisateur et groupe cibles ?</strong>
   260  
   261          <p class="indent">
   262            C'est ici que le programme obtient l'identité des utilisateur
   263  	  et groupe cibles via des appels à setuid et setgid. De même,
   264  	  la liste des accès groupe est initialisée avec tous les
   265  	  groupes auxquels l'utilisateur cible appartient.
   266          </p>
   267        </li>
   268  
   269        <li>
   270          <strong>Peut-on se positionner dans le répertoire dans dequel
   271  	sont situés les programmes CGI/SSI ?</strong>
   272  
   273          <p class="indent">
   274            S'il n'existe pas, il ne peut pas contenir de fichier. Et si
   275  	  l'on ne peut pas s'y positionner, il n'existe probablement
   276  	  pas.
   277          </p>
   278        </li>
   279  
   280        <li>
   281          <strong>Le répertoire est-il dans l'espace web
   282  	d'Apache ?</strong>
   283  
   284          <p class="indent">
   285            Si la requête concerne une portion de la racine du serveur,
   286  	  le répertoire demandé est-il dans la hiérarchie de la racine
   287  	  des documents de suEXEC ? Si la requête concerne un
   288  	 <code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code>, le
   289           répertoire demandé est-il dans la hiérarchie du répertoire
   290           défini comme le répertoire utilisateur de suEXEC (voir les
   291  	  <a href="#install">options de configuration de suEXEC</a>) ?
   292          </p>
   293        </li>
   294  
   295        <li>
   296          <strong>L'écriture dans le répertoire est-elle interdite pour
   297  	un utilisateur autre que le propriétaire ?</strong>
   298  
   299          <p class="indent">
   300            Le répertoire ne doit pas être ouvert aux autres
   301  	  utilisateurs ; seul l'utilisateur propriétaire doit pouvoir
   302  	  modifier le contenu du répertoire.
   303          </p>
   304        </li>
   305  
   306        <li>
   307          <strong>Le programme CGI/SSI cible existe-t-il ?</strong>
   308  
   309          <p class="indent">
   310            S'il n'existe pas, il ne peut pas être exécuté.
   311          </p>
   312        </li>
   313  
   314        <li>
   315          <strong>Les utilisateurs autres que le propriétaire n'ont-ils
   316  	<em>PAS</em> de droits en écriture sur le programme
   317  	CGI/SSI ?</strong>
   318  
   319          <p class="indent">
   320            Les utilisateurs autres que le propriétaire ne doivent pas
   321  	  pouvoir modifier le programme CGI/SSI.
   322          </p>
   323        </li>
   324  
   325        <li>
   326          <strong>Le programme CGI/SSI n'est-il <em>PAS</em> setuid ou
   327  	setgid ?</strong>
   328  
   329          <p class="indent">
   330            Les programmes cibles ne doivent pas pouvoir modifier à
   331  	  nouveau les identifiants utilisateur/groupe.
   332          </p>
   333        </li>
   334  
   335        <li>
   336          <strong>Le couple utilisateur/groupe cible est-il le même que
   337  	celui du programme ?</strong>
   338  
   339          <p class="indent">
   340            L'utilisateur est-il le propriétaire du fichier ?
   341          </p>
   342        </li>
   343  
   344        <li>
   345          <strong>Peut-on nettoyer avec succès l'environnement des
   346  	processus afin de garantir la sûreté des opérations ?</strong>
   347  
   348          <p class="indent">
   349            suExec nettoie l'environnement des processus en établissant
   350  	  un chemin d'exécution sûr (défini lors de la configuration),
   351  	  et en ne passant que les variables dont les noms font partie
   352  	  de la liste de l'environnement sûr (créée de même lors de la
   353  	  configuration).
   354          </p>
   355        </li>
   356  
   357        <li>
   358          <strong>Le conteneur peut-il avec succès se substituer au
   359  	programme CGI/SSI cible et s'exécuter ?</strong>
   360  
   361          <p class="indent">
   362            C'est là où l'exécution de suEXEC s'arrête et où commence
   363  	  celle du programme CGI/ssi cible.
   364          </p>
   365        </li>
   366      </ol>
   367  
   368      <p>Ce sont les opérations standards effectuées par le modèle de
   369      sécurité du conteneur suEXEC. Il peut paraître strict et est
   370      susceptible d'imposer de nouvelles limitations et orientations
   371      dans la conception des programmes CGI/SSI, mais il a été développé
   372      avec le plus grand soin, étape par étape, en se focalisant sur
   373      la sécurité.</p>
   374  
   375      <p>Pour plus d'informations sur la mesure dans laquelle ce modèle
   376      de sécurité peut limiter vos possibilités au regard de la
   377      configuration du serveur, ainsi que les risques de sécurité qui
   378      peuvent être évités grâce à une configuration appropriée de suEXEC,
   379      se référer à la section <a href="#jabberwock">"Avis à la population !"</a> de ce document.</p>
   380  </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
   381  <div class="section">
   382  <h2><a name="install" id="install">Configurer et installer suEXEC</a></h2>
   383  
   384      <p>C'est ici que nous entrons dans le vif du sujet.</p>
   385  
   386      <p><strong>Options de configuration de suEXEC</strong><br />
   387      </p>
   388  
   389      <dl>
   390        <dt><code>--enable-suexec</code></dt>
   391  
   392        <dd>Cette option active la fonctionnalité suEXEC qui n'est
   393        jamais installée ou activée par défaut. Au moins une option
   394        <code>--with-suexec-xxxxx</code> doit accompagner l'option
   395        <code>--enable-suexec</code> pour qu'APACI (l'utilitaire de
   396        configuration de la compilation d'Apache) accepte votre demande
   397        d'utilisation de la fonctionnalité suEXEC.</dd>
   398  
   399        <dt><code>--with-suexec-bin=<em>PATH</em></code></dt>
   400  
   401        <dd>Le chemin du binaire <code>suexec</code> doit être codé en
   402        dur dans le serveur pour des raisons de sécurité. Cette option
   403        vous permet de modifier le chemin par défaut.
   404        <em>Par exemple</em>
   405        <code>--with-suexec-bin=/usr/sbin/suexec</code></dd>
   406  
   407        <dt><code>--with-suexec-caller=<em>UID</em></code></dt>
   408  
   409        <dd>L'<a href="mod/mpm_common.html#user">utilisateur</a> sous
   410        lequel Apache s'exécute habituellement. C'est le seul utilisateur
   411        autorisé à utiliser suexec.</dd>
   412  
   413        <dt><code>--with-suexec-userdir=<em>DIR</em></code></dt>
   414  
   415        <dd>Cette option définit le sous-répertoire de la hiérarchie des
   416        répertoires utilisateurs dans lequel l'utilisation
   417        de suEXEC sera autorisée. Tous les exécutables situés dans ce
   418        répertoire seront exécutables par suEXEC sous l'utilisateur
   419        cible ; ces programmes doivent donc être sûrs. Si vous utilisez
   420        une directive <code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code>
   421        "simple" (c'est à dire ne contenant pas de
   422        "*"), l'option --with-suexec-userdir
   423        devra contenir la même valeur. suEXEC ne fonctionnera pas
   424        correctement si la directive <code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code> contient une valeur
   425        différente du répertoire home de l'utilisateur tel qu'il est
   426        défini dans le fichier <code>passwd</code>. la valeur par défaut
   427        est "<code>public_html</code>".<br />
   428        Si vous avez plusieurs hôtes virtuels avec une directive
   429        <code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code> différente
   430        pour chacun d'entre eux, vous devrez faire en sorte que chaque
   431        UserDir possède un répertoire parent commun ; donnez alors à
   432        l'option --with-suexec-userdir le nom
   433        de ce répertoire commun. <strong>Si tout ceci n'est pas défini
   434        correctement, les requêtes CGI "~userdir" ne fonctionneront
   435        pas !</strong></dd>
   436  
   437        <dt><code>--with-suexec-docroot=<em>DIR</em></code></dt>
   438  
   439        <dd>Cette option fonctionne comme la directive DocumentRoot pour
   440        Apache. Il s'agit de la seule hiérarchie (en dehors des directives
   441        <code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code>) dans laquelle la fonctionnalité suEXEC
   442        pourra être utilisée. La valeur par défaut est la valeur de
   443        <code>--datadir</code> accompagnée du suffixe
   444        "<code>/htdocs</code>" ;
   445        <em>Par exemple</em>, si vous exécutez configure avec
   446        "<code>--datadir=/home/apache</code>", la valeur
   447        "<code>/home/apache/htdocs</code>" sera utilisée par défaut comme
   448        racine des documents pour le conteneur suEXEC.</dd>
   449  
   450        <dt><code>--with-suexec-uidmin=<em>UID</em></code></dt>
   451  
   452        <dd>Cette option définit l'identifiant utilisateur le plus bas
   453        avec lequel un utilisateur pourra être la cible de
   454        suEXEC. 500 ou 100 sont des valeurs courantes sur la plupart des
   455        systèmes. la valeur par défaut est 100.</dd>
   456  
   457        <dt><code>--with-suexec-gidmin=<em>GID</em></code></dt>
   458  
   459        <dd>Cette option définit l'identifiant de groupe le plus bas
   460        avec lequel un utilisateur pourra être la cible de
   461        suEXEC. 100 est une valeur courante sur la plupart des
   462        systèmes et est par conséquent la valeur par défaut.</dd>
   463  
   464        <dt><code>--with-suexec-logfile=<em>FILE</em></code></dt>
   465  
   466        <dd>Cette option permet de définir le fichier dans lequel
   467        toutes les transactions et erreurs de suEXEC seront journalisées
   468        (à des fins d'analyse ou de débogage). Par défaut, le fichier
   469        journal se nomme "<code>suexec_log</code>" et se trouve dans votre
   470        répertoire standard des fichiers journaux défini par
   471        <code>--logfiledir</code></dd>
   472  
   473        <dt><code>--with-suexec-safepath=<em>PATH</em></code></dt>
   474  
   475        <dd>Cette option permet de définir une variable d'environnement
   476        PATH sûre à passer aux exécutables CGI. La valeur par défaut
   477        est "<code>/usr/local/bin:/usr/bin:/bin</code>".</dd>
   478      </dl>
   479  
   480      <h3>Compilation et installation du conteneur suEXEC</h3>
   481        
   482  
   483      <p>Si vous avez activé la fonctionnalité suEXEC à l'aide de
   484       l'option <code>--enable-suexec</code>, le binaire
   485       <code>suexec</code> sera automatiquement construit (en même temps
   486       qu'Apache) lorsque vous exécuterez la comande
   487       <code>make</code>.</p>
   488  
   489       <p>Lorsque tous les composants auront été construits, vous pourrez
   490       exécuter la commande <code>make install</code> afin de les
   491       installer. Le binaire <code>suexec</code> sera installé dans le
   492       répertoire défini à l'aide de l'option <code>--sbindir</code>. La
   493       localisation par défaut est "/usr/local/apache2/bin/suexec".</p>
   494       <p>Veuillez noter que vous aurez besoin des
   495       <strong><em>privilèges root</em></strong> pour passer l'étape de
   496       l'installation. Pour que le conteneur puisse changer
   497       l'identifiant utilisateur, il doit avoir comme propriétaire
   498       <code><em>root</em></code>, et les droits du fichier doivent
   499       inclure le bit d'exécution setuserid.</p>
   500     
   501  
   502     <h3>&gt;Mise en place de permissions pour
   503      paranoïaque</h3>
   504  	
   505      <p>Bien que le conteneur suEXEC vérifie que l'utilisateur qui
   506      l'appelle correspond bien à l'utilisateur spécifié à l'aide de
   507      l'option <code>--with-suexec-caller</code> du programme
   508      <code class="program"><a href="./programs/configure.html">configure</a></code>, il subsiste toujours le risque qu'un
   509      appel système ou une bibliothèque fasse appel à suEXEC avant que
   510      cette vérification ne soit exploitable sur votre système. Pour
   511      tenir compte de ceci, et parce que c'est en général la meilleure
   512      pratique, vous devez utiliser les permissions du système de
   513      fichiers afin de vous assurer que seul le groupe sous lequel
   514      s'exécute Apache puisse faire appel à suEXEC.</p>
   515  
   516      <p>Si, par exemple, votre serveur web est configuré pour
   517      s'exécuter en tant que :</p>
   518  
   519  <div class="example"><p><code>
   520      User www<br />
   521      Group webgroup<br />
   522  </code></p></div>
   523  
   524      <p>et <code class="program"><a href="./programs/suexec.html">suexec</a></code> se trouve à
   525      "/usr/local/apache2/bin/suexec", vous devez exécuter les
   526      commandes</p>
   527  
   528  <div class="example"><p><code>
   529      chgrp webgroup /usr/local/apache2/bin/suexec<br />
   530      chmod 4750 /usr/local/apache2/bin/suexec<br />
   531  </code></p></div>
   532  
   533      <p>Ceci permet de s'assurer que seul le groupe sous lequel Apache
   534      s'exécute (ici webgroup) puisse faire appel au conteneur
   535      suEXEC.</p>
   536    
   537  </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
   538  <div class="section">
   539  <h2><a name="enable" id="enable">Activation et désactivation
   540  de suEXEC</a></h2>
   541  
   542      <p>Au démarrage, Apache vérifie la présence du fichier
   543      <code class="program"><a href="./programs/suexec.html">suexec</a></code> dans le répertoire défini par
   544      l'option <code>--sbindir</code> du script configure (le
   545      répertoire par défaut est "/usr/local/apache/sbin/suexec"). Si
   546      Apache trouve un conteneur suEXEC correctement configuré, il
   547      enregistrera le message suivant dans le journal des erreurs :</p>
   548  
   549  <div class="example"><p><code>
   550      [notice] suEXEC mechanism enabled (wrapper: <var>/path/to/suexec</var>)
   551  </code></p></div>
   552  
   553      <p>Si ce message n'est pas généré au démarrage du serveur, ce
   554      dernier ne trouve probablement pas le programme conteneur à
   555      l'endroit où il est sensé être, ou l'exécutable suexec n'est pas
   556      installé en <em>setuid root</em>.</p>
   557  
   558       <p>Si le serveur Apache est déjà en cours d'exécution, et si
   559       vous activez le mécanisme suEXEC pour la première fois, vous
   560       devez arrêter et redémarrer Apache. Un redémarrage
   561       à l'aide d'un simple signal HUP ou USR1 suffira. </p>
   562       <p>Pour désactiver suEXEC, vous devez supprimer le fichier
   563       <code class="program"><a href="./programs/suexec.html">suexec</a></code>, puis arrêter et redémarrer
   564       Apache.</p>
   565  </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
   566  <div class="section">
   567  <h2><a name="usage" id="usage">Utilisation de suEXEC</a></h2>
   568  
   569      <p>Les requêtes pour des programmes CGI ne feront appel au
   570      conteneur suEXEC que si elles concernent un hôte virtuel
   571      contenant une directive <code class="directive"><a href="./mod/mod_suexec.html#suexecusergroup">SuexecUserGroup</a></code>, ou si elles sont
   572      traitées par <code class="module"><a href="./mod/mod_userdir.html">mod_userdir</a></code>.</p>
   573  
   574      <p><strong>Hôtes virtuels :</strong><br /> Une des méthodes
   575      d'utilisation du conteneur suEXEC consiste à insérer une
   576      directive <code class="directive"><a href="./mod/mod_suexec.html#suexecusergroup">SuexecUserGroup</a></code> dans une section
   577      <code class="directive"><a href="./mod/core.html#virtualhost">VirtualHost</a></code>. En définissant
   578      des valeurs différentes de celles du serveur principal, toutes les
   579      requêtes pour des ressources CGI seront exécutées sous
   580      les <em>User</em> et <em>Group</em> définis pour cette section
   581      <code class="directive"><a href="./mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>. Si cette
   582      directive est absente de la section <code class="directive"><a href="./mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code>, l'utilisateur du
   583      serveur principal sera pris par défaut</p>
   584  
   585      <p><strong>Répertoires des utilisateurs :</strong><br /> Avec
   586      cette méthode, les
   587      requêtes traitées par <code class="module"><a href="./mod/mod_userdir.html">mod_userdir</a></code> appelleront le
   588      conteneur suEXEC pour exécuter le programme CGI sous l'identifiant
   589      utilisateur du répertoire utilisateur concerné. Seuls prérequis
   590      pour pouvoir accéder à cette fonctionnalité : l'exécution des CGI
   591      doit être activée pour l'utilisateur concerné, et le script doit
   592      passer avec succès le test des <a href="#model">vérifications de
   593      sécurité</a> décrit plus haut. Voir aussi l'
   594      <a href="#install">option de compilation</a>
   595      <code>--with-suexec-userdir</code>.</p> </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
   596  <div class="section">
   597  <h2><a name="debug" id="debug">Débogage de suEXEC</a></h2>
   598  
   599      <p>Le conteneur suEXEC va écrire ses informations de journalisation
   600      dans le fichier défini par l'option de compilation
   601      <code>--with-suexec-logfile</code> comme indiqué plus haut. Si vous
   602      pensez avoir configuré et installé correctement le conteneur,
   603      consultez ce journal, ainsi que le journal des erreurs du serveur
   604      afin de déterminer l'endroit où vous avez fait fausse route.</p>
   605  
   606  </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
   607  <div class="section">
   608  <h2><a name="jabberwock" id="jabberwock">Avis à la population !
   609      Avertissements et exemples</a></h2>
   610  
   611      <p><strong>NOTE !</strong> Cette section est peut-être incomplète.
   612      Pour en consulter la dernière révision, voir la version de la <a href="http://httpd.apache.org/docs/2.2/suexec.html">Documentation en ligne</a> du Groupe Apache.</p>
   613  
   614      <p>Quelques points importants du conteneur peuvent
   615      imposer des contraintes du point de vue de la configuration du
   616      serveur. Veuillez en prendre connaissance avant de soumettre un
   617      rapport de bogue à propos de suEXEC.</p>
   618  
   619      <ul>
   620        <li><strong>Points importants de suEXEC</strong></li>
   621  
   622        <li>
   623          Limitations concernant la hiérarchie.
   624  
   625          <p class="indent">
   626            Pour des raisons de sécurité et d'efficacité, toutes les
   627  	  requêtes suEXEC ne doivent concerner que des ressources
   628  	  situées dans la racine des documents définie pour les
   629  	  requêtes concernant un hôte virtuel, ou des ressources
   630  	  situées dans la racine des documents définies pour les
   631  	  requêtes concernant un répertoire utilisateur. Par exemple,
   632  	  si vous avez configuré quatre hôtes virtuels, vous devrez
   633  	  définir la structure des racines de documents de vos hôtes
   634  	  virtuels en dehors d'une hiérarchie de documents principale
   635  	  d'Apache, afin de tirer parti de suEXEC dans le contexte des
   636  	  hôtes virtuels (Exemple à venir).
   637          </p>
   638        </li>
   639  
   640        <li>
   641          La variable d'environnement PATH de suEXEC
   642  
   643          <p class="indent">
   644            Modifier cette variable peut s'avérer dangereux. Assurez-vous
   645  	  que tout chemin que vous ajoutez à cette variable est un
   646  	  répertoire <strong>de confiance</strong>. Vous n'avez
   647  	  probablement pas l'intention d'ouvrir votre serveur de façon
   648  	  à ce que l'on puisse y exécuter un cheval de Troie.
   649          </p>
   650        </li>
   651  
   652        <li>
   653          Modification de suEXEC
   654  
   655          <p class="indent">
   656            Encore une fois, ceci peut vous causer de
   657  	  <strong>graves ennuis</strong> si vous vous y essayez sans
   658  	  savoir ce que vous faites. Évitez de vous y risquer dans la
   659  	  mesure du possible.
   660          </p>
   661        </li>
   662      </ul>
   663  
   664  </div></div>
   665  <div class="bottomlang">
   666  <p><span>Langues Disponibles: </span><a href="./en/suexec.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
   667  <a href="./fr/suexec.html" title="Français">&nbsp;fr&nbsp;</a> |
   668  <a href="./ja/suexec.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
   669  <a href="./ko/suexec.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
   670  <a href="./tr/suexec.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
   671  </div><div class="top"><a href="#page-header"><img src="./images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
   672  <script type="text/javascript"><!--//--><![CDATA[//><!--
   673  var comments_shortname = 'httpd';
   674  var comments_identifier = 'http://httpd.apache.org/docs/2.2/suexec.html';
   675  (function(w, d) {
   676      if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
   677          d.write('<div id="comments_thread"><\/div>');
   678          var s = d.createElement('script');
   679          s.type = 'text/javascript';
   680          s.async = true;
   681          s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
   682          (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
   683      }
   684      else { 
   685          d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
   686      }
   687  })(window, document);
   688  //--><!]]></script></div><div id="footer">
   689  <p class="apache">Copyright 2017 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
   690  <p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
   691  if (typeof(prettyPrint) !== 'undefined') {
   692      prettyPrint();
   693  }
   694  //--><!]]></script>
   695  </body></html>