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 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5 This file is generated from xml source: DO NOT EDIT
6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
8 <title>Support suEXEC - Serveur Apache HTTP</title>
9 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
12 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
13 <body id="manual-page"><div id="page-header">
14 <p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="./faq/">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p>
15 <p class="apache">Serveur Apache HTTP Version 2.3</p>
16 <img alt="" src="./images/feather.gif" /></div>
17 <div class="up"><a href="./"><img title="<-" alt="<-" src="./images/left.gif" /></a></div>
19 <a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="./">Version 2.3</a></div><div id="page-content"><div id="preamble"><h1>Support suEXEC</h1>
21 <p><span>Langues Disponibles: </span><a href="./en/suexec.html" hreflang="en" rel="alternate" title="English"> en </a> |
22 <a href="./fr/suexec.html" title="Français"> fr </a> |
23 <a href="./ja/suexec.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
24 <a href="./ko/suexec.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
25 <a href="./tr/suexec.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
28 <p>La fonctionnalité <strong>suEXEC</strong> permet
29 l'exécution des programmes <strong>CGI</strong> et
30 <strong>SSI</strong> sous un utilisateur autre que celui sous
31 lequel s'exécute le serveur web qui appelle ces programmes.
32 Normalement, lorsqu'un programme CGI ou SSI est lancé, il
33 s'exécute sous le même utilisateur que celui du serveur web qui
36 <p>Utilisée de manière appropriée, cette fonctionnalité peut
37 réduire considérablement les risques de sécurité encourus
38 lorsqu'on autorise les utilisateurs à développer et faire
39 s'exécuter des programmes CGI ou SSI de leur cru. Cependant, mal
40 configuré, suEXEC peut causer de nombreux problèmes et même créer
41 de nouvelles failles dans la sécurité de votre ordinateur. Si
42 vous n'êtes pas familier avec la gestion des programmes
43 <em>setuid root</em> et les risques de sécurité qu'ils comportent,
44 nous vous recommandons vivement de ne pas tenter
45 d'utiliser suEXEC.</p>
47 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#before">Avant de commencer</a></li>
48 <li><img alt="" src="./images/down.gif" /> <a href="#model">Modèle de sécurité de suEXEC</a></li>
49 <li><img alt="" src="./images/down.gif" /> <a href="#install">Configurer et installer suEXEC</a></li>
50 <li><img alt="" src="./images/down.gif" /> <a href="#enable">Activation et désactivation
52 <li><img alt="" src="./images/down.gif" /> <a href="#usage">Utilisation de suEXEC</a></li>
53 <li><img alt="" src="./images/down.gif" /> <a href="#debug">Débogage de suEXEC</a></li>
54 <li><img alt="" src="./images/down.gif" /> <a href="#jabberwock">Avis à la population !
55 Avertissements et exemples</a></li>
57 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
59 <h2><a name="before" id="before">Avant de commencer</a></h2>
61 <p>Avant de foncer tête baissée dans la lecture de ce document,
62 vous devez tenir compte de certaines hypothèses concernant vous-même
63 et l'environnement dans lequel vous allez utiliser suexec.</p>
65 <p>Premièrement, vous devez utiliser un système d'exploitation
66 UNIX ou dérivé, capable d'effectuer des opérations
67 <strong>setuid</strong> et <strong>setgid</strong>. Tous les
68 exemples de commande sont donnés en conséquence. D'autres
69 plates-formes, même si elles supportent suEXEC, peuvent
70 avoir une configuration différente.</p>
72 <p>Deuxièmement, vous devez être familier avec les concepts de base
73 relatifs à la sécurité de votre ordinateur et son administration.
74 Ceci implique la compréhension des opérations
75 <strong>setuid/setgid</strong> et des différents effets qu'elles
76 peuvent produire sur votre système et son niveau de sécurité.</p>
78 <p>Troisièmement, vous devez utiliser une version
79 <strong>non modifiée</strong> du code de suEXEC. L'ensemble du
80 code de suEXEC a été scruté et testé avec soin par les développeurs
81 et de nombreux bêta testeurs. Toutes les précautions ont été prises
82 pour s'assurer d'une base sûre de code non seulement simple, mais
83 aussi solide. La modification de ce code peut causer des problèmes
84 inattendus et de nouveaux risques de sécurité. Il est
85 <strong>vivement</strong> recommandé de ne pas modifier le code de
86 suEXEC, à moins que vous ne soyez un programmeur spécialiste des
87 particularités liées à la sécurité, et souhaitez partager votre
88 travail avec l'équipe de développement du serveur HTTP Apache afin
89 de pouvoir en discuter.</p>
91 <p>Quatrièmement et dernièrement, l'équipe de développement du
92 serveur HTTP Apache a décidé de ne
93 <strong>PAS</strong> inclure suEXEC dans l'installation par défaut
94 d'Apache httpd. Pour pouvoir mettre en oeuvre suEXEC, l'administrateur
95 doit porter la plus grande attention aux détails. Après avoir bien
96 réfléchi aux différents points de la configuration de suEXEC,
97 l'administrateur peut l'installer selon les méthodes classiques.
98 Les valeurs des paramètres de configuration doivent être
99 déterminées et spécifiées avec soin par l'administrateur, afin de
100 maintenir la sécurité du système de manière appropriée lors de
101 l'utilisation de la fonctionnalité suEXEC. C'est par le biais de
102 ce processus minutieux que nous espérons réserver
103 l'installation de suEXEC aux administrateurs prudents et
104 suffisamment déterminés à vouloir l'utiliser.</p>
106 <p>Vous êtes encore avec nous ? Oui ? Bien.
107 Alors nous pouvons continuer !</p>
108 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
109 <div class="section">
110 <h2><a name="model" id="model">Modèle de sécurité de suEXEC</a></h2>
112 <p>Avant d'installer et configurer suEXEC, nous allons tout d'abord
113 décrire le modèle de sécurité que vous êtes sur le point
114 d'implémenter. Vous devriez ainsi mieux comprendre ce qui se passe
115 vraiment à l'intérieur de suEXEC et quelles précautions ont été
116 prises pour préserver la sécurité de votre système.</p>
118 <p><strong>suEXEC</strong> est basé sur un programme "conteneur"
119 (wrapper) setuid qui est appelé par le serveur HTTP Apache principal.
120 Ce conteneur est appelé quand une requête HTTP concerne
121 un programme CGI ou SSI que l'administrateur
122 a décidé de faire s'exécuter
123 sous un utilisateur autre que celui du serveur principal.
124 Lorsqu'il reçoit une telle requête, Apache httpd fournit au conteneur
125 suEXEC le nom du programme, ainsi que les identifiants utilisateur
126 et groupe sous lesquels le programme doit s'exécuter.</p>
128 <p>Le conteneur effectue ensuite les vérifications suivantes afin
129 de déterminer la réussite ou l'échec du processus -- si une seule
130 de ces conditions n'est pas vérifiée, le programme journalise
131 l'erreur et se termine en retournant un code d'erreur, sinon il
136 <strong>L'utilisateur qui exécute le conteneur est-il un
137 utilisateur valide de ce système ?</strong>
140 Ceci permet de s'assurer que l'utilisateur qui exécute le
141 conteneur est vraiment un utilisateur appartenant au système.
146 <strong>Le conteneur a-t-il été appelé avec un nombre
147 d'arguments correct ?</strong>
150 Le conteneur ne s'exécutera que si on lui fournit un nombre
151 d'arguments correct. Le serveur HTTP apache sait quel est le
152 bon format des arguments. Si le conteneur ne reçoit pas un
153 nombre d'arguments correct, soit il a été modifié,
154 soit quelque chose ne va pas dans la portion suEXEC de
155 votre binaire Apache httpd.
160 <strong>Cet utilisateur valide est-il autorisé à exécuter le
164 Cet utilisateur est-il celui autorisé à exécuter le
165 conteneur ? Un seul utilisateur (celui d'Apache) est
166 autorisé à exécuter ce programme.
171 <strong>Le chemin du programme CGI ou SSI cible est-il
175 Le chemin du programme CGI ou SSI cible débute-t-il par un
176 '/' ou contient-il une référence arrière '..' ? Ceci est
177 interdit ; le programme CGI ou SSI cible doit se trouver dans
178 la hiérarchie de la racine des documents de suEXEC (voir
179 <code>--with-suexec-docroot=<em>DIR</em></code> ci-dessous).
184 <strong>Le nom utilisateur cible est-il valide ?</strong>
187 L'utilisateur cible existe-t-il ?
192 <strong>Le nom du groupe cible est-il valide ?</strong>
195 Le groupe cible existe-t-il ?
200 <strong>L'utilisateur cible n'est-il <em>PAS</em>
201 superutilisateur ?</strong>
205 Actuellement, suEXEc ne permet pas à
206 <code><em>root</em></code> d'exécuter des programmes CGI/SSI.
211 <strong>Le numéro de l'identifiant de l'utilisateur cible
212 est-il <em>SUPERIEUR</em> au numéro d'identifiant
216 Le numéro d'identifiant utilisateur minimum est défini à
217 l'exécution du script configure. Ceci vous permet de définir
218 le numéro d'identifiant utilisateur le plus bas qui sera
219 autorisé à éxécuter des programmes CGI/SSI. En particulier,
220 cela permet d'écarter les comptes système.
225 <strong>Le groupe cible n'est-il <em>PAS</em> le groupe
226 superutilisateur ?</strong>
229 Actuellement, suEXEC ne permet pas au groupe
230 <code><em>root</em></code> d'exécuter des programmes CGI/SSI.
235 <strong> Le numéro d'identifiant du groupe cible est-il
236 <em>SUPERIEUR</em> au numéro d'identifiant minimum ?</strong>
239 Le numéro d'identifiant de groupe minimum est spécifié lors
240 de l'exécution du script configure. Ceci vous permet de
241 définir l'identifiant de groupe le plus bas possible qui sera
242 autorisé à exécuter des programmes CGI/SSI, et est
243 particulièrement utile pour écarter les groupes "système".
248 <strong>Le conteneur peut-il obtenir avec succès l'identité
249 des utilisateur et groupe cibles ?</strong>
252 C'est ici que le programme obtient l'identité des utilisateur
253 et groupe cibles via des appels à setuid et setgid. De même,
254 la liste des accès groupe est initialisée avec tous les
255 groupes auxquels l'utilisateur cible appartient.
260 <strong>Peut-on se positionner dans le répertoire dans dequel
261 sont situés les programmes CGI/SSI ?</strong>
264 S'il n'existe pas, il ne peut pas contenir de fichier. Et si
265 l'on ne peut pas s'y positionner, il n'existe probablement
271 <strong>Le répertoire est-il dans l'espace web
275 Si la requête concerne une portion de la racine du serveur,
276 le répertoire demandé est-il dans la hiérarchie de la racine
277 des documents de suEXEC ? Si la requête concerne un
278 <code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code>, le répertoire demandé est-il dans
279 la hiérarchie du répertoire défini comme le répertoire
280 utilisateur de suEXEC (voir les
281 <a href="#install">options de configuration de suEXEC</a>) ?
286 <strong>L'écriture dans le répertoire est-elle interdite pour
287 un utilisateur autre que le propriétaire </strong>
290 Le répertoire ne doit pas être ouvert aux autres
291 utilisateurs ; seul l'utilisateur propriétaire doit pouvoir
292 modifier le contenu du répertoire.
297 <strong>Le programme CGI/SSI cible existe-t-il ?</strong>
300 S'il n'existe pas, il ne peut pas être exécuté.
305 <strong>Les utilisateurs autres que le propriétaire n'ont-ils
306 <em>PAS</em> de droits en écriture sur le programme
310 Les utilisateurs autres que le propriétaire ne doivent pas
311 pouvoir modifier le programme CGI/SSI.
316 <strong>Le programme CGI/SSI n'est-il <em>PAS</em> setuid ou
320 Les programmes cibles ne doivent pas pouvoir modifier à
321 nouveau les identifiants utilisateur/groupe.
326 <strong>Le couple utilisateur/groupe cible est-il le même que
327 celui du programme ?</strong>
330 L'utilisateur est-il le propriétaire du fichier ?
335 <strong>Peut-on nettoyer avec succès l'environnement des
336 processus afin de garantir la sûreté des opérations ?</strong>
339 suExec nettoie l'environnement des processus en établissant
340 un chemin d'exécution sûr (défini lors de la configuration),
341 et en ne passant que les variables dont les noms font partie
342 de la liste de l'environnement sûr (créée de même lors de la
348 <strong>Le conteneur peut-il avec succès se substituer au
349 programme CGI/SSI cible et s'exécuter ?</strong>
352 C'est là où l'exécution de suEXEC s'arrête et où commence
353 celle du programme CGI/ssi cible.
358 <p>Ce sont les opérations standards effectuées par le modèle de
359 sécurité du conteneur suEXEC. Il peut paraître strict et est
360 susceptible d'imposer de nouvelles limitations et orientations
361 dans la conception des programmes CGI/SSI, mais il a été développé
362 avec le plus grand soin, étape par étape, en se focalisant sur
365 <p>Pour plus d'informations sur la mesure dans laquelle ce modèle
366 de sécurité peut limiter vos possibilités au regard de la
367 configuration du serveur, ainsi que les risques de sécurité qui
368 peuvent être évités grâce à une configuration appropriée de suEXEC,
369 se référer à la section <a href="#jabberwock">"Avis à la population !"</a> de ce document.</p>
370 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
371 <div class="section">
372 <h2><a name="install" id="install">Configurer et installer suEXEC</a></h2>
374 <p>C'est ici que nous entrons dans le vif du sujet.</p>
376 <p><strong>Options de configuration de suEXEC</strong><br />
380 <dt><code>--enable-suexec</code></dt>
382 <dd>Cette option active la fonctionnalité suEXEC qui n'est
383 jamais installée ou activée par défaut. Au moins une option
384 <code>--with-suexec-xxxxx</code> doit accompagner l'option
385 <code>--enable-suexec</code> pour qu'APACI (l'utilitaire de
386 configuration de la compilation d'Apache) accepte votre demande
387 d'utilisation de la fonctionnalité suEXEC.</dd>
389 <dt><code>--with-suexec-bin=<em>PATH</em></code></dt>
391 <dd>Le chemin du binaire <code>suexec</code> doit être codé en
392 dur dans le serveur pour des raisons de sécurité. Cette option
393 vous permet de modifier le chemin par défaut.
395 <code>--with-suexec-bin=/usr/sbin/suexec</code></dd>
397 <dt><code>--with-suexec-caller=<em>UID</em></code></dt>
399 <dd>L'<a href="mod/mpm_common.html#user">utilisateur</a> sous
400 lequel httpd s'exécute habituellement. C'est le seul utilisateur
401 autorisé à utiliser suexec.</dd>
403 <dt><code>--with-suexec-userdir=<em>DIR</em></code></dt>
405 <dd>Cette option définit le sous-répertoire de la hiérarchie des
406 répertoires utilisateurs dans lequel l'utilisation
407 de suEXEC sera autorisée. Tous les exécutables situés dans ce
408 répertoire seront exécutables par suEXEC sous l'utilisateur
409 cible ; ces programmes doivent donc être sûrs. Si vous utilisez
410 une directive <code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code>
411 "simple" (c'est à dire ne contenant pas de
412 "*"), l'option --with-suexec-userdir
413 devra contenir la même valeur. SuEXEC ne fonctionnera pas
414 correctement si la directive <code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code> contient une valeur
415 différente du répertoire home de l'utilisateur tel qu'il est
416 défini dans le fichier <code>passwd</code>. la valeur par défaut
417 est "<code>public_html</code>".<br />
418 Si vous avez plusieurs hôtes virtuels avec une directive
419 <code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code> différente
420 pour chacun d'entre eux, vous devrez faire en sorte que chaque
421 UserDir possède un répertoire parent commun ; donnez alors à
422 l'option --with-suexec-userdir le nom
423 de ce répertoire commun. <strong>Si tout ceci n'est pas défini
424 correctement, les requêtes CGI "~userdir" ne fonctionneront
427 <dt><code>--with-suexec-docroot=<em>DIR</em></code></dt>
429 <dd>Cette option fonctionne comme la directive DocumentRoot pour
430 httpd. Il s'agit de la seule hiérarchie (en dehors des directives
431 <code class="directive"><a href="./mod/mod_userdir.html#userdir">UserDir</a></code>) dans laquelle la fonctionnalité suEXEC
432 pourra être utilisée. La valeur par défaut est la valeur de
433 <code>--datadir</code> accompagnée du suffixe
434 "<code>/htdocs</code>" ;
435 <em>Par exemple</em>, si vous exécutez configure avec
436 "<code>--datadir=/home/apache</code>", la valeur
437 "<code>/home/apache/htdocs</code>" sera utilisée par défaut comme
438 racine des documents pour le conteneur suEXEC.</dd>
440 <dt><code>--with-suexec-uidmin=<em>UID</em></code></dt>
442 <dd>Cette option définit l'identifiant utilisateur le plus bas
443 avec lequel un utilisateur pourra être la cible de
444 suEXEC. 500 ou 100 sont des valeurs courantes sur la plupart des
445 systèmes. la valeur par défaut est 100.</dd>
447 <dt><code>--with-suexec-gidmin=<em>GID</em></code></dt>
449 <dd>Cette option définit l'identifiant de groupe le plus bas
450 avec lequel un utilisateur pourra être la cible de
451 suEXEC. 100 est une valeur courante sur la plupart des
452 systèmes et est par conséquent la valeur par défaut.</dd>
454 <dt><code>--with-suexec-logfile=<em>FILE</em></code></dt>
456 <dd>Cette option permet de définir le fichier dans lequel
457 toutes les transactions et erreurs de suEXEC seront journalisées
458 (à des fins d'analyse ou de débogage). Par défaut, le fichier
459 journal se nomme "<code>suexec_log</code>" et se trouve dans votre
460 répertoire standard des fichiers journaux défini par
461 <code>--logfiledir</code></dd>
463 <dt><code>--with-suexec-safepath=<em>PATH</em></code></dt>
465 <dd>Cette option permet de définir une variable d'environnement
466 PATH sûre à passer aux exécutables CGI. La valeur par défaut
467 est "<code>/usr/local/bin:/usr/bin:/bin</code>".</dd>
470 <h3>Compilation et installation du conteneur suEXEC</h3>
473 <p>Si vous avez activé la fonctionnalité suEXEC à l'aide de
474 l'option <code>--enable-suexec</code>, le binaire
475 <code>suexec</code> sera automatiquement construit (en même temps
476 que httpd) lorsque vous exécuterez la commande
477 <code>make</code>.</p>
479 <p>Lorsque tous les composants auront été construits, vous pourrez
480 exécuter la commande <code>make install</code> afin de les
481 installer. Le binaire <code>suexec</code> sera installé dans le
482 répertoire défini à l'aide de l'option <code>--sbindir</code>. La
483 localisation par défaut est "/usr/local/apache2/bin/suexec".</p>
484 <p>Veuillez noter que vous aurez besoin des
485 <strong><em>privilèges root</em></strong> pour passer l'étape de
486 l'installation. Pour que le conteneur puisse changer
487 l'identifiant utilisateur, il doit avoir comme propriétaire
488 <code><em>root</em></code>, et les droits du fichier doivent
489 inclure le bit d'exécution setuserid.</p>
492 <h3>>Mise en place de permissions pour
495 <p>Bien que le conteneur suEXEC vérifie que l'utilisateur qui
496 l'appelle correspond bien à l'utilisateur spécifié à l'aide de
497 l'option <code>--with-suexec-caller</code> du programme
498 <code class="program"><a href="./programs/configure.html">configure</a></code>, il subsiste toujours le risque qu'un
499 appel système ou une bibliothèque fasse appel à suEXEC avant que
500 cette vérification ne soit exploitable sur votre système. Pour
501 tenir compte de ceci, et parce que c'est en général la meilleure
502 pratique, vous devez utiliser les permissions du système de
503 fichiers afin de vous assurer que seul le groupe sous lequel
504 s'exécute httpd puisse faire appel à suEXEC.</p>
506 <p>Si, par exemple, votre serveur web est configuré pour
507 s'exécuter en tant que :</p>
509 <div class="example"><p><code>
514 <p>et <code class="program"><a href="./programs/suexec.html">suexec</a></code> se trouve à
515 "/usr/local/apache2/bin/suexec", vous devez exécuter les
518 <div class="example"><p><code>
519 chgrp webgroup /usr/local/apache2/bin/suexec<br />
520 chmod 4750 /usr/local/apache2/bin/suexec<br />
523 <p>Ceci permet de s'assurer que seul le groupe sous lequel httpd
524 s'exécute (ici webgroup) puisse faire appel au conteneur
527 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
528 <div class="section">
529 <h2><a name="enable" id="enable">Activation et désactivation
532 <p>Au démarrage, httpd vérifie la présence du fichier
533 <code class="program"><a href="./programs/suexec.html">suexec</a></code> dans le répertoire défini par
534 l'option <code>--sbindir</code> du script configure (le
535 répertoire par défaut est "/usr/local/apache/sbin/suexec"). Si
536 httpd trouve un conteneur suEXEC correctement configuré, il
537 enregistrera le message suivant dans le journal des erreurs :</p>
539 <div class="example"><p><code>
540 [notice] suEXEC mechanism enabled (wrapper: <var>/path/to/suexec</var>)
543 <p>Si ce message n'est pas généré au démarrage du serveur, ce
544 dernier ne trouve probablement pas le programme conteneur à
545 l'endroit où il est sensé être, ou l'exécutable suexec n'est pas
546 installé en <em>setuid root</em>.</p>
548 <p>Si le serveur HTTP Apache est déjà en cours d'exécution, et si
549 vous activez le mécanisme suEXEC pour la première fois, vous
550 devez arrêter et redémarrer httpd. Un redémarrage
551 à l'aide d'un simple signal HUP ou USR1 suffira. </p>
552 <p>Pour désactiver suEXEC, vous devez supprimer le fichier
553 <code class="program"><a href="./programs/suexec.html">suexec</a></code>, puis arrêter et redémarrer
555 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
556 <div class="section">
557 <h2><a name="usage" id="usage">Utilisation de suEXEC</a></h2>
559 <p>Les requêtes pour des programmes CGI ne feront appel au
560 conteneur suEXEC que si elles concernent un hôte virtuel
561 contenant une directive <code class="directive"><a href="./mod/mod_suexec.html#suexecusergroup">SuexecUserGroup</a></code>, ou si elles sont
562 traitées par <code class="module"><a href="./mod/mod_userdir.html">mod_userdir</a></code>.</p>
564 <p><strong>Hôtes virtuels :</strong><br /> Une des méthodes
565 d'utilisation du conteneur suEXEC consiste à insérer une
566 directive <code class="directive"><a href="./mod/mod_suexec.html#suexecusergroup">SuexecUserGroup</a></code> dans une section
567 <code class="directive"><a href="./mod/core.html#virtualhost">VirtualHost</a></code>. En définissant
568 des valeurs différentes de celles du serveur principal, toutes les
569 requêtes pour des ressources CGI seront exécutées sous
570 les <em>User</em> et <em>Group</em> définis pour cette section
571 <code class="directive"><a href="./mod/core.html#virtualhost"><VirtualHost></a></code>. Si cette
572 directive est absente de la section <code class="directive"><a href="./mod/core.html#virtualhost"><VirtualHost></a></code>, l'utilisateur du
573 serveur principal sera pris par défaut</p>
575 <p><strong>Répertoires des utilisateurs :</strong><br /> Avec
577 requêtes traitées par <code class="module"><a href="./mod/mod_userdir.html">mod_userdir</a></code> appelleront le
578 conteneur suEXEC pour exécuter le programme CGI sous l'identifiant
579 utilisateur du répertoire utilisateur concerné. Seuls prérequis
580 pour pouvoir accéder à cette fonctionnalité : l'exécution des CGI
581 doit être activée pour l'utilisateur concerné, et le script doit
582 passer avec succès le test des <a href="#model">vérifications de
583 sécurité</a> décrit plus haut. Voir aussi l'
584 <a href="#install">option de compilation</a>
585 <code>--with-suexec-userdir</code>.</p> </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
586 <div class="section">
587 <h2><a name="debug" id="debug">Débogage de suEXEC</a></h2>
589 <p>Le conteneur suEXEC va écrire ses informations de journalisation
590 dans le fichier défini par l'option de compilation
591 <code>--with-suexec-logfile</code> comme indiqué plus haut. Si vous
592 pensez avoir configuré et installé correctement le conteneur,
593 consultez ce journal, ainsi que le journal des erreurs du serveur
594 afin de déterminer l'endroit où vous avez fait fausse route.</p>
596 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
597 <div class="section">
598 <h2><a name="jabberwock" id="jabberwock">Avis à la population !
599 Avertissements et exemples</a></h2>
601 <p><strong>NOTE !</strong> Cette section est peut-être incomplète.
602 Pour en consulter la dernière révision, voir la version de la <a href="http://httpd.apache.org/docs/trunk/suexec.html">Documentation en ligne</a>.</p>
604 <p>Quelques points importants du conteneur peuvent
605 imposer des contraintes du point de vue de la configuration du
606 serveur. Veuillez en prendre connaissance avant de soumettre un
607 rapport de bogue à propos de suEXEC.</p>
610 <li><strong>Points importants de suEXEC</strong></li>
613 Limitations concernant la hiérarchie.
616 Pour des raisons de sécurité et d'efficacité, toutes les
617 requêtes suEXEC ne doivent concerner que des ressources
618 situées dans la racine des documents définie pour les
619 requêtes concernant un hôte virtuel, ou des ressources
620 situées dans la racine des documents définies pour les
621 requêtes concernant un répertoire utilisateur. Par exemple,
622 si vous avez configuré quatre hôtes virtuels, vous devrez
623 définir la structure des racines de documents de vos hôtes
624 virtuels en dehors d'une hiérarchie de documents principale
625 de httpd, afin de tirer parti de suEXEC dans le contexte des
626 hôtes virtuels (Exemple à venir).
631 La variable d'environnement PATH de suEXEC
634 Modifier cette variable peut s'avérer dangereux. Assurez-vous
635 que tout chemin que vous ajoutez à cette variable est un
636 répertoire <strong>de confiance</strong>. Vous n'avez
637 probablement pas l'intention d'ouvrir votre serveur de façon
638 à ce que l'on puisse y exécuter un cheval de Troie.
643 Modification de suEXEC
646 Encore une fois, ceci peut vous causer de
647 <strong>graves ennuis</strong> si vous vous y essayez sans
648 savoir ce que vous faites. Evitez de vous y risquer dans la
655 <div class="bottomlang">
656 <p><span>Langues Disponibles: </span><a href="./en/suexec.html" hreflang="en" rel="alternate" title="English"> en </a> |
657 <a href="./fr/suexec.html" title="Français"> fr </a> |
658 <a href="./ja/suexec.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
659 <a href="./ko/suexec.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
660 <a href="./tr/suexec.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
661 </div><div id="footer">
662 <p class="apache">Copyright 2010 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
663 <p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="./faq/">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p></div>