dns-caveats.xml.fr revision 9597438befbcf432f65d6496ced75c99afcc1b48
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg<?xml-stylesheet type="text/xsl" href="/style/manual.fr.xsl"?>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg<!-- English Revision : 1332626 -->
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg<!-- French translation : Lucien GENTIS -->
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg<!-- Reviewed by : Vincent Deffontaines -->
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg Licensed to the Apache Software Foundation (ASF) under one or more
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg contributor license agreements. See the NOTICE file distributed with
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg this work for additional information regarding copyright ownership.
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg The ASF licenses this file to You under the Apache License, Version 2.0
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg (the "License"); you may not use this file except in compliance with
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg the License. You may obtain a copy of the License at
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg Unless required by applicable law or agreed to in writing, software
16b55a35cff91315d261d1baa776138af465c4e4fuankg distributed under the License is distributed on an "AS IS" BASIS,
16b55a35cff91315d261d1baa776138af465c4e4fuankg WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg See the License for the specific language governing permissions and
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg limitations under the License.
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <title>Problèmes liés au DNS avec le serveur HTTP Apache</title>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <p>Cette page pourrait se résumer ainsi : configurez le
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg serveur HTTP Apache de façon
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg à ce qu'il n'ait pas besoin de résolution DNS pour interpréter les
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg fichiers de configuration. Si httpd doit effectuer des résolutions
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg DNS pour interpréter les fichiers de configuration, votre serveur
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg pourra présenter des problèmes de fiabilité (en d'autres termes,
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg il est possible qu'il refuse de démarrer), ou d'attaques par déni ou
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg usurpation de service (y compris l'attribution de requêtes à un
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg serveur virtuel autre que le serveur virtuel voulu).</p>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg# Ceci est un exemple de mauvaise configuration ; ne l'utilisez pas comme base
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg# de configuration
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg<VirtualHost www.example.dom>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg ServerAdmin webgirl@example.dom
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg</VirtualHost>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg </highlight>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <p>Pour fonctionner correctement, le serveur a absolument besoin de deux
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg informations à propos de chaque serveur virtuel : le nom du serveur
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg défini par la directive <directive
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg module="core">ServerName</directive>, et au moins une adresse IP à
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg laquelle le serveur va se rattacher et répondre. L'exemple ci-dessus
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg ne comporte pas d'adresse IP, si bien que httpd devra utiliser le
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg DNS pour trouver l'adresse IP de <code>www.example.dom</code>. Si pour
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg une raison quelconque, le DNS n'est pas disponible au moment où
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg votre serveur interprète son fichier de configuration, ce serveur
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg virtuel <strong>ne sera pas pris en compte dans la
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg configuration</strong>. Il sera incapable de
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg répondre à toute requête pour ce serveur virtuel.</p>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <p>Supposons que l'adresse de <code>www.example.dom</code> soit
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg 192.0.2.1, et examinons cet extrait de configuration :</p>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg# Ceci est un exemple de mauvaise configuration ; ne l'utilisez pas comme base
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg# de configuration
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg<VirtualHost 192.0.2.1>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg ServerAdmin webgirl@example.dom
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg</VirtualHost>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg </highlight>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <p>Cette fois, httpd doit effectuer une recherche DNS inverse pour
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg trouver le nom <code>ServerName</code> de ce serveur virtuel. Si
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg cette recherche inverse échoue, le serveur virtuel sera
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg partiellement désactivé. Si le serveur
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg virtuel est à base de nom, il sera en fait totalement désactivé,
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg mais s'il est à base d'adresse IP, il fonctionnera probablement.
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg Cependant, httpd échouera s'il doit générer une URL complète pour
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg le serveur qui inclut ce nom de serveur (comme dans le cas d'une
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg redirection).</p>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <p>Voici un extrait de configuration qui permet d'éviter ces deux
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg types de problèmes :</p>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg<VirtualHost 192.0.2.1>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg ServerAdmin webgirl@example.dom
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg</VirtualHost>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg </highlight>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <p>Considérons cet extrait de configuration :</p>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg<VirtualHost www.example1.dom>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg ServerAdmin webgirl@example1.dom
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg</VirtualHost>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg<VirtualHost www.example2.dom>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg ServerAdmin webguy@example2.dom
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg</VirtualHost>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg </highlight>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <p>Supposons que vous ayez assigné 192.0.2.1 à
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <code>www.example1.dom</code> et 192.0.2.2 à <code>www.example2.dom</code>. En
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg outre, supposons que <code>example1.dom</code> gère son propre DNS. Avec
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg cette configuration, <code>example1.dom</code> sera en mesure de
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg détourner tout trafic destiné à <code>example2.dom</code>. Pour y
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg parvenir, tout ce qu'ils ont à faire consiste à
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg assigner 192.0.2.2 à
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <code>www.example1.dom</code>. Comme ils gèrent leur propre DNS, vous ne
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg pouvez pas les empêcher de faire pointer l'enregistrement
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <code>www.example1.dom</code> vers l'adresse qu'ils veulent.</p>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <p>Les requêtes à destination de 192.0.2.2 (y compris toutes celles
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg où l'utilisateur à tapé une URL de la forme
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <code>http://www.example2.dom/quelquepart</code>), seront toutes servies
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg par le serveur virtuel <code>example1.dom</code>. Une meilleur
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg compréhension de la raison pour laquelle ceci peut se produire
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg nécessite une discussion plus approfondie à propos de la manière
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg dont httpd associe les requêtes entrantes aux différents serveurs
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg virtuels qui vont les servir. Un document de base décrivant ceci <a
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg serveurs virtuels à base de nom</a> oblige httpd à
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg connaître la/les adresse(s) IP de l'hôte sur
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg lequel <program>httpd</program> s'exécute. Pour obtenir cette
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg adresse, soit il utilise la directive <directive
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg module="core">ServerName</directive> globale (si elle est présente),
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg soit il fait appel à la fonction C <code>gethostname</code> (qui
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg doit renvoyer le même nom que la commande shell "hostname"). Il
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg effectue ensuite une recherche DNS sur cette adresse. Pour le
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg moment, il n'existe aucun moyen d'éviter cette recherche DNS.</p>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <p>Si vous craignez que cette recherche DNS échoue parce que votre
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg serveur DNS est arrêté, vous pouvez insérer le nom d'hôte dans le
de9fd9ad794deaf3ec7b8b5efa0fdd6950b1644bfuankg fichier <code>/etc/hosts</code> (où il est probablement déjà
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg enregistré afin que la machine démarre correctement). Assurez-vous
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg ensuite que la machine est configurée pour utiliser
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <code>/etc/hosts</code> dans le cas où la recherche DNS échoue.
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg Suivant le système d'exploitation que vous utilisez, vous y
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg parviendrez en éditant <code>/etc/resolv.conf</code>, ou
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <p>Si votre serveur n'a aucune autre raison d'effectuer des
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg recherches DNS, vous pouvez définir la variable d'environnement
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <code>HOSTRESORDER</code> à "local", et vous serez alors en mesure
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg d'exécuter httpd. Tout dépend du système d'exploitation et des
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg bibliothèques de résolution de noms que vous utilisez. Elle affecte
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg aussi les programmes CGI, à moins que vous n'utilisiez
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <module>mod_env</module> pour contrôler l'environnement. Il est
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg conseillé de consulter les pages de manuel ou les FAQs de votre
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg système d'exploitation.</p>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <title>Conseils pour éviter ce genre de problème</title>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg utilisez des adresses IP au sein des <directive
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg utilisez des adresses IP avec la directive <directive
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg vérifiez que tous les serveurs virtuels possèdent un nom
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <directive module="core">ServerName</directive> explicite
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg <li>créez un serveur virtuel <code><VirtualHost
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg _default_:*></code> qui n'a aucune page à servir</li>
13b501825bce68e7e49b4bc775da93e38d9bd9f3fuankg</manualpage>