]> granicus.if.org Git - apache/blob - docs/manual/dns-caveats.html.fr
mod_reqtimeout: Change the default to set some reasonable timeout values if loaded
[apache] / docs / manual / dns-caveats.html.fr
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
7       -->
8 <title>Problèmes liés au DNS avec le serveur HTTP Apache - 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="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
18 <div id="path">
19 <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.3</a></div><div id="page-content"><div id="preamble"><h1>Problèmes liés au DNS avec le serveur HTTP Apache</h1>
20 <div class="toplang">
21 <p><span>Langues Disponibles: </span><a href="./en/dns-caveats.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
22 <a href="./fr/dns-caveats.html" title="Français">&nbsp;fr&nbsp;</a> |
23 <a href="./ja/dns-caveats.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
24 <a href="./ko/dns-caveats.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
25 <a href="./tr/dns-caveats.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
26 </div>
27
28     <p>Cette page pourrait se résumer ainsi : configurez le
29     serveur HTTP Apache de façon
30     à ce qu'il n'ait pas besoin de résolution DNS pour interpréter les
31     fichiers de configuration. Si httpd doit effectuer des résolutions
32     DNS pour interpréter les fichiers de configuration, votre serveur
33     pourra présenter des problèmes de fiabilité (en d'autres termes,
34     il est possible qu'il refuse de démarrer), ou d'attaques par déni ou
35     usurpation de service (y compris l'attribution de requêtes à un
36     serveur virtuel autre que le serveur virtuel voulu).</p>
37   </div>
38 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#example">Un exemple simple</a></li>
39 <li><img alt="" src="./images/down.gif" /> <a href="#denial">Déni de service</a></li>
40 <li><img alt="" src="./images/down.gif" /> <a href="#main">L'adresse du "serveur principal"</a></li>
41 <li><img alt="" src="./images/down.gif" /> <a href="#tips">Conseils pour éviter ce genre de problème</a></li>
42 </ul></div>
43 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
44 <div class="section">
45 <h2><a name="example" id="example">Un exemple simple</a></h2>
46     
47
48     <div class="example"><p><code>
49       # Cet exemple de configuration est invalide, ne l'utilisez pas comme base
50       # de configuration
51       &lt;VirtualHost www.example.dom&gt; <br />
52       ServerAdmin webgirl@example.dom <br />
53       DocumentRoot /www/example <br />
54       &lt;/VirtualHost&gt;
55     </code></p></div>
56
57     <p>Pour fonctionner correctement, le serveur a absolument besoin de deux
58     informations à propos de chaque serveur virtuel : le nom du serveur
59     défini par la directive <code class="directive"><a href="./mod/core.html#servername">ServerName</a></code>, et au moins une adresse IP à
60     laquelle le serveur va se rattacher et répondre. L'exemple ci-dessus
61     ne comporte pas d'adresse IP, si bien que httpd devra utiliser le
62     DNS pour trouver l'adresse IP de <code>www.example.dom</code>. Si pour
63     une raison quelconque, le DNS n'est pas disponible au moment où
64     votre serveur interprète son fichier de configuration, ce serveur
65     virtuel <strong>ne sera pas pris en compte dans la
66     configuration</strong>. Il sera incapable de
67     répondre à toute requête pour ce serveur virtuel.</p>
68
69     <p>Supposons que l'adresse de <code>www.example.dom</code> soit
70     192.0.2.1, et examinons cet extrait de configuration :</p>
71
72     <div class="example"><p><code>
73       # Cet exemple de configuration est invalide, ne l'utilisez pas comme base
74       # de configuration
75       &lt;VirtualHost 192.0.2.1&gt; <br />
76       ServerAdmin webgirl@example.dom <br />
77       DocumentRoot /www/example <br />
78       &lt;/VirtualHost&gt;
79     </code></p></div>
80
81     <p>Cette fois, httpd doit effectuer une recherche DNS inverse pour
82     trouver le nom <code>ServerName</code> de ce serveur virtuel. Si
83     cette recherche inverse échoue, le serveur virtuel sera
84     partiellement désactivé. Si le serveur
85     virtuel est à base de nom, il sera en fait totalement désactivé,
86     mais s'il est à base d'adresse IP, il fonctionnera probablement.
87     Cependant, httpd échouera s'il doit générer une URL complète pour
88     le serveur qui inclut ce nom de serveur (comme dans le cas d'une
89     redirection).</p>
90
91     <p>Voici un extrait de configuration qui permet d'éviter ces deux
92     types de problèmes :</p>
93
94     <div class="example"><p><code>
95       &lt;VirtualHost 192.0.2.1&gt; <br />
96       ServerName www.example.dom <br />
97       ServerAdmin webgirl@example.dom <br />
98       DocumentRoot /www/example <br />
99       &lt;/VirtualHost&gt;
100     </code></p></div>
101   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
102 <div class="section">
103 <h2><a name="denial" id="denial">Déni de service</a></h2>
104     
105
106     <p>Considérons cet extrait de configuration :</p>
107
108     <div class="example"><p><code>
109       &lt;VirtualHost www.example1.dom&gt;<br />
110       <span class="indent">
111         ServerAdmin webgirl@example1.dom<br />
112         DocumentRoot /www/example1<br />
113       </span>
114       &lt;/VirtualHost&gt;<br />
115       <br />
116       &lt;VirtualHost www.example2.dom&gt;<br />
117       <span class="indent">
118         ServerAdmin webguy@example2.dom<br />
119         DocumentRoot /www/example2<br />
120       </span>
121       &lt;/VirtualHost&gt;
122     </code></p></div>
123
124     <p>Supposons que vous ayez assigné 192.0.2.1 à
125     <code>www.example1.dom</code> et 192.0.2.2 à <code>www.example2.dom</code>. En
126     outre, supposons que <code>example1.dom</code> gère son propre DNS. Avec
127     cette configuration, <code>example1.dom</code> sera en mesure de
128     détourner tout trafic destiné à <code>example2.dom</code>. Pour y
129     parvenir, tout ce qu'ils ont à faire consiste à
130     assigner 192.0.2.2 à
131     <code>www.example1.dom</code>. Comme ils gèrent leur propre DNS, vous ne
132     pouvez pas les empêcher de faire pointer l'enregistrement
133     <code>www.example1.dom</code> vers l'adresse qu'ils veulent.</p>
134
135     <p>Les requêtes à destination de 192.0.2.2 (y compris toutes celles
136     où l'utilisateur à tapé une URL de la forme
137     <code>http://www.example2.dom/quelquepart</code>), seront toutes servies
138     par le serveur virtuel <code>example1.dom</code>. Une meilleur
139     compréhension de la raison pour laquelle ceci peut se produire
140     nécessite une discussion plus approfondie à propos de la manière
141     dont httpd associe les requêtes entrantes aux différents serveurs
142     virtuels qui vont les servir. Un document de base décrivant ceci <a href="vhosts/details.html">est disponible</a>.</p>
143   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
144 <div class="section">
145 <h2><a name="main" id="main">L'adresse du "serveur principal"</a></h2>
146     
147
148     <p><a href="vhosts/name-based.html">Le support des
149     serveurs virtuels à base de nom</a> oblige httpd à
150     connaître la/les adresse(s) IP de l'hôte sur
151     lequel <code class="program"><a href="./programs/httpd.html">httpd</a></code> s'exécute. Pour obtenir cette
152     adresse, soit il utilise la directive <code class="directive"><a href="./mod/core.html#servername">ServerName</a></code> globale (si elle est présente),
153     soit il fait appel à la fonction C <code>gethostname</code> (qui
154     doit renvoyer le même nom que la commande shell "hostname"). Il
155     effectue ensuite une recherche DNS sur cette adresse. Pour le
156     moment, il n'existe aucun moyen d'éviter cette recherche DNS.</p>
157
158     <p>Si vous craignez que cette recherche DNS échoue parce que votre
159     serveur DNS est arrêté, vous pouvez insérer le nom d'hôte dans le
160     fichier <code>/etc/hosts</code> (où il est probablement déjà
161     enregistré afin que la machine démarre correctement). Assurez-vous
162     ensuite que la machine est configurée pour utiliser
163     <code>/etc/hosts</code> dans le cas où la recherche DNS échoue.
164     Suivant le système d'exploitation que vous utilisez, vous y
165     parviendrez en éditant <code>/etc/resolv.conf</code>, ou
166     <code>/etc/nsswitch.conf</code>.</p>
167
168     <p>Si votre serveur n'a aucune autre raison d'effectuer des
169     recherches DNS, vous pouvez définir la variable d'environnement
170     <code>HOSTRESORDER</code> à "local", et vous serez alors en mesure
171     d'exécuter httpd. Tout dépend du système d'exploitation et des
172     bibliothèques de résolution de noms que vous utilisez. Elle affecte
173     aussi les programmes CGI, à moins que vous n'utilisiez
174     <code class="module"><a href="./mod/mod_env.html">mod_env</a></code> pour contrôler l'environnement. Il est
175     conseillé de consulter les pages de manuel ou les FAQs de votre
176     système d'exploitation.</p>
177   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
178 <div class="section">
179 <h2><a name="tips" id="tips">Conseils pour éviter ce genre de problème</a></h2>
180     
181
182     <ul>
183       <li>
184         utilisez des adresses IP au sein des <code class="directive"><a href="./mod/core.html#virtualhost">VirtualHost</a></code>
185       </li>
186
187       <li>
188         utilisez des adresses IP avec la directive <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code>
189       </li>
190
191       <li>
192         vérifiez que tous les serveurs virtuels possèdent un nom
193         <code class="directive"><a href="./mod/core.html#servername">ServerName</a></code>      explicite
194       </li>
195
196       <li>créez un serveur virtuel <code>&lt;VirtualHost
197       _default_:*&gt;</code> qui n'a aucune page à servir</li>
198     </ul>
199   </div></div>
200 <div class="bottomlang">
201 <p><span>Langues Disponibles: </span><a href="./en/dns-caveats.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
202 <a href="./fr/dns-caveats.html" title="Français">&nbsp;fr&nbsp;</a> |
203 <a href="./ja/dns-caveats.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
204 <a href="./ko/dns-caveats.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
205 <a href="./tr/dns-caveats.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
206 </div><div id="footer">
207 <p class="apache">Copyright 2011 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
208 <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>
209 </body></html>