cholet 01/07/18 07:48:04 Modified: htdocs/manual dns-caveats.html.fr Log: replace entities with iso-8859-1 Revision Changes Path 1.2 +119 -119 httpd-docs-1.3/htdocs/manual/dns-caveats.html.fr Index: dns-caveats.html.fr =================================================================== RCS file: /home/cvs/httpd-docs-1.3/htdocs/manual/dns-caveats.html.fr,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- dns-caveats.html.fr 2001/05/28 09:01:15 1.1 +++ dns-caveats.html.fr 2001/07/18 14:48:04 1.2 @@ -12,19 +12,19 @@ <!--#include virtual="header.html" --> <h1 align="CENTER">Apache et le DNS</h1> -<p>Cette page aurait pu être résumée par la -phrase : <i>ne demandez pas à Apache d'utiliser le DNS +<p>Cette page aurait pu être résumée par la +phrase : <i>ne demandez pas à Apache d'utiliser le DNS pour la lecture des fichiers de configuration</i>. Si appache -doit utiliser le DNS pour récupérer ses fichiers de -configuration, alors votre serveur peut être sujet à -des problèmes de fiabilité (il peut tout simplement -ne pas démarrer), ou s'ouvrir à des attaques et des +doit utiliser le DNS pour récupérer ses fichiers de +configuration, alors votre serveur peut être sujet à +des problèmes de fiabilité (il peut tout simplement +ne pas démarrer), ou s'ouvrir à des attaques et des vols d'information (y compris des utilisateurs qui pourraient "voler" des hits d'autres utilisateurs).</p> <h3>Un exemple simple</h3> -Considérez ce court extrait de code de configuration : +Considérez ce court extrait de code de configuration : <blockquote> <pre> @@ -36,23 +36,23 @@ </blockquote> <p>Pour qu'Apache fonctionne correctement, il a absolument besoin -d'au moins deux informations pour chaque hôte virtuel : le +d'au moins deux informations pour chaque hôte virtuel : le <a href="mod/core.html#servername"><code>ServerName</code></a> et -au moins une adresse IP à laquelle ce serveur doit -répondre. Cet exemple ne fait pas apparaître +au moins une adresse IP à laquelle ce serveur doit +répondre. Cet exemple ne fait pas apparaître d'adresse IP ; Apache doit donc utiliser le DNS pour trouver -l'adresse correspondant à <code>www.abc.dom</code>. Si +l'adresse correspondant à <code>www.abc.dom</code>. Si pour telle ou telle raison, le service de noms de domaines n'est -pas accessible au moment ou le serveur interprète ses -fichiers de configuration, alors cet hôte virtuel <b>ne -pourra pas être configuré</b>. Il ne pourra donc pas -répondre aux requêtes émises vers cet -hôte virtuel (les versions d'Apache antérieures -à la 1.2 n'auraient même pas pu -démarrer).</p> +pas accessible au moment ou le serveur interprète ses +fichiers de configuration, alors cet hôte virtuel <b>ne +pourra pas être configuré</b>. Il ne pourra donc pas +répondre aux requêtes émises vers cet +hôte virtuel (les versions d'Apache antérieures +à la 1.2 n'auraient même pas pu +démarrer).</p> <p>Supposons que le doamine <code>www.abc.dom</code> ait pour -adresse 10.0.0.1. Considérez alors ce nouvel extrait de +adresse 10.0.0.1. Considérez alors ce nouvel extrait de code de configuration :</p> <blockquote> @@ -64,21 +64,21 @@ </pre> </blockquote> -<p>Apache doit alors effectuer une résolution DNS inverse -pour trouver le nom <code>ServerName</code> pour cet hôte -virtuel. Si cette résolution échoue, alors il devra -partiellement désactiver cet hôte virtuel (les -versions d'Apache antérieures à la 1.2 n'auraient -même pas démarré). Si l'hôte virtuel -est basé sur un nom de domaine alors il sera totalement -inhibé, si par contre il se base sur une adresse IP, alors -il tournera probablement. Cependant, si Apache devait à -générer une URL complète pour ce serveur, -incluant le nom de domaine, l'URL produite ne pourrait être -correctement constituée.</p> +<p>Apache doit alors effectuer une résolution DNS inverse +pour trouver le nom <code>ServerName</code> pour cet hôte +virtuel. Si cette résolution échoue, alors il devra +partiellement désactiver cet hôte virtuel (les +versions d'Apache antérieures à la 1.2 n'auraient +même pas démarré). Si l'hôte virtuel +est basé sur un nom de domaine alors il sera totalement +inhibé, si par contre il se base sur une adresse IP, alors +il tournera probablement. Cependant, si Apache devait à +générer une URL complète pour ce serveur, +incluant le nom de domaine, l'URL produite ne pourrait être +correctement constituée.</p> -<p>Voici un extrait qui élimine ces deux -problèmes.</p> +<p>Voici un extrait qui élimine ces deux +problèmes.</p> <blockquote> <pre> @@ -92,22 +92,22 @@ <h3>Refus de service</h3> -<p>Il existe (au moins) deux situations où Apache refuse -de fournir le service. Si vous exécutez une version -antérieure à la version 1.2 d'Apache, votre serveur -ne démarrera même pas si l'une des deux -résolutions DNS mentionnées ci-avant échoue -pour au moins un hôte virtuel. Dans certain cas, cette -résolution peut ne même pas être sous votre -contrôle. Par exemple, si <code>abc.dom</code> est l'un de -vos clients, lequel contrôle son propre serveur DNS, ce +<p>Il existe (au moins) deux situations où Apache refuse +de fournir le service. Si vous exécutez une version +antérieure à la version 1.2 d'Apache, votre serveur +ne démarrera même pas si l'une des deux +résolutions DNS mentionnées ci-avant échoue +pour au moins un hôte virtuel. Dans certain cas, cette +résolution peut ne même pas être sous votre +contrôle. Par exemple, si <code>abc.dom</code> est l'un de +vos clients, lequel contrôle son propre serveur DNS, ce dernier peut forcer votre serveur Apache (en version -antérieure à 1.2) à s'arrêter au -démarrage en supprimant simplement l'enregistrement du nom +antérieure à 1.2) à s'arrêter au +démarrage en supprimant simplement l'enregistrement du nom <code>www.abc.dom</code>.</p> <p>Une autre situation est beaucoup plus pernicieuse. -Considérez cet extrait de code de configuration :</p> +Considérez cet extrait de code de configuration :</p> <blockquote> <pre> @@ -127,71 +127,71 @@ </pre> </blockquote> -<p>Supposez que vous avez assigné 10.0.0.1 au domaine +<p>Supposez que vous avez assigné 10.0.0.1 au domaine <code>www.abc.dom</code> et 10.0.0.2 au domaine <code>www.def.dom</code>. De plus, supposez que -<code>def.com</code> contrôle son propre service DNS. Avec -la précédente configuration, vous permettez -à <code>def.com</code> de "voler" tout le trafic -destiné à <code>abc.com</code>. Tout ce qu'ils -auraient à faire pour y parvenir est d'assigner -<code>www.def.dom</code> à l'adresse 10.0.0.1. Dans la -mesure où ils contrôlent leur propre DNS, vousne -pouvez les empêcher de piéger leur enregistrement de +<code>def.com</code> contrôle son propre service DNS. Avec +la précédente configuration, vous permettez +à <code>def.com</code> de "voler" tout le trafic +destiné à <code>abc.com</code>. Tout ce qu'ils +auraient à faire pour y parvenir est d'assigner +<code>www.def.dom</code> à l'adresse 10.0.0.1. Dans la +mesure où ils contrôlent leur propre DNS, vousne +pouvez les empêcher de piéger leur enregistrement de <code>www.def.com</code>.</p> -<p>Les requêtes arrivant pour 10.0.0.1 (y compris toutes -celles où les utilisateurs auront tapé une URL de +<p>Les requêtes arrivant pour 10.0.0.1 (y compris toutes +celles où les utilisateurs auront tapé une URL de la forme <code>http://www.abc.dom/qqchose</code>) seront toutes -servies par l'hôte virtuel <code>def.com</code>. Mieux +servies par l'hôte virtuel <code>def.com</code>. Mieux comprendre comment cela est possible demande une discussion plus -détaillée sur la manière dont Apache traite -des requêtes arrivant pour des hôtes virtuels. Un +détaillée sur la manière dont Apache traite +des requêtes arrivant pour des hôtes virtuels. Un premier document descrivant ceci est <a href= "vhosts/details.html">disponible</a>.</p> <h3>L'adresse du "serveur principal"</h3> <p>L'addition du <a href="vhosts/name-based.html">support -d'hôtes virtuels basés sur les noms</a> dans Apache -1.1 nécessite qu'Apache connaisse les adresses IP de -l'hôte sur lequel est exécuté httpd. Pour +d'hôtes virtuels basés sur les noms</a> dans Apache +1.1 nécessite qu'Apache connaisse les adresses IP de +l'hôte sur lequel est exécuté httpd. Pour obtenir cette adresse, il utilise soit le <code>ServerName</code> -global (si défini) ou appelle la fonction C +global (si défini) ou appelle la fonction C <code>gethostname</code> (qui renvoie une information similaire -à celle donnée par la commande interactive -"hostname"). Puis il procède à une -résolution DNS pour cette adresse. Jusqu'à -présent, il n'y a aucun moyen d'éviter cette -résolution.</p> - -<p>Si vous craignez que cette résolution échoue -parceque votre serveur DNS est arrêté, alors vous -popuvez ajouter le nom d'hôte dans le fichier -<code>/etc/hosts</code> (où il devrait normalement -déjà figurer, ne serait-ce que pour assurer un -démarrage correct de la machine). Vous devrez en outre -vous assurer que votre machine est configurée pour +à celle donnée par la commande interactive +"hostname"). Puis il procède à une +résolution DNS pour cette adresse. Jusqu'à +présent, il n'y a aucun moyen d'éviter cette +résolution.</p> + +<p>Si vous craignez que cette résolution échoue +parceque votre serveur DNS est arrêté, alors vous +popuvez ajouter le nom d'hôte dans le fichier +<code>/etc/hosts</code> (où il devrait normalement +déjà figurer, ne serait-ce que pour assurer un +démarrage correct de la machine). Vous devrez en outre +vous assurer que votre machine est configurée pour exploiter le fichier <code>/etc/hosts</code> en cas -d'échec d'une résolution dynamique. Suivant l'OS -que vous utilisez, ceci peut être fait en éditant le -code <code>/etc/resolv.conf</code>, ou peut être +d'échec d'une résolution dynamique. Suivant l'OS +que vous utilisez, ceci peut être fait en éditant le +code <code>/etc/resolv.conf</code>, ou peut être <code>/etc/nsswitch.conf</code>.</p> -<p>Si votre machine n'a pas de résolution DNS à +<p>Si votre machine n'a pas de résolution DNS à effectuer pour toute autre raison (par exemple parce qu'elle est -isolée), alors vous pourrez néanmoins faire tourner +isolée), alors vous pourrez néanmoins faire tourner Apache en initialisant la variable d'environnement -<code>HOSTRESORDER</code> à "local". Tout ceci -dépend de l'OS et des librairies de résolveur que -vous utilisez. Les CGI sont également affectés -CGIsauf si vous utilisez la fonctionnalité <a href= -"mod/mod_env.html"><code>mod_env</code></a> pour contrôler +<code>HOSTRESORDER</code> à "local". Tout ceci +dépend de l'OS et des librairies de résolveur que +vous utilisez. Les CGI sont également affectés +CGIsauf si vous utilisez la fonctionnalité <a href= +"mod/mod_env.html"><code>mod_env</code></a> pour contrôler l'environnement. Il est prudent de consulter les pages de manuel -ou les FAQ spécifiques à votre OS.</p> +ou les FAQ spécifiques à votre OS.</p> -<h3><a name="tips">Astuces pour éviter ces -problèmes</a></h3> +<h3><a name="tips">Astuces pour éviter ces +problèmes</a></h3> <ul> <li>utilisez des adresses IP dans les sections @@ -203,56 +203,56 @@ <li>utilisez des adresses IP dans la clause <code>BindAddress</code></li> -<li>assurez vous que tous les hôtes virtuels on un +<li>assurez vous que tous les hôtes virtuels on un <code>ServerName</code></li> -<li>créez un serveur <code><VirtualHost +<li>créez un serveur <code><VirtualHost _default_:*></code> qui ne sert aucune page.</li> </ul> <h3>Appendice: Directions futures</h3> -<p>Cette situation vis-à-vis du DNS est largement -insatisfaisante. Pour Apache 1.2, nous avons travaillé -pour que le serveur puisse continuer à démarrer -dans le cas de l'échec d'une résolution DNS, mais +<p>Cette situation vis-à-vis du DNS est largement +insatisfaisante. Pour Apache 1.2, nous avons travaillé +pour que le serveur puisse continuer à démarrer +dans le cas de l'échec d'une résolution DNS, mais il est possible que nous puissions en faire plus. Toute -écriture nécessitant l'usage d'adresses IP +écriture nécessitant l'usage d'adresses IP explicites dans le fichier de configuration n'est pas souhaitable -dans le contexte Internet actuel où la <a href= +dans le contexte Internet actuel où la <a href= "http://www.ietf.org/html.charters/pier-charter.html">rotation -d'adresses</a> est une nécessité.</p> +d'adresses</a> est une nécessité.</p> <p>Une parade au vol de service serait d'effectuer une -résolution DNS inverse sur l'adresse IP renvoyée -par la résolution directe, et comparer les deux noms. En -cas de non concordance, cet hôte virtuel serait -désactivé. Ceci impliquerait que la -résolution DNS inverse soit correctement configurée +résolution DNS inverse sur l'adresse IP renvoyée +par la résolution directe, et comparer les deux noms. En +cas de non concordance, cet hôte virtuel serait +désactivé. Ceci impliquerait que la +résolution DNS inverse soit correctement configurée (ce qui reste assez connu des administrateurs du fait de l'usage -commun de la résolution inverse double par les serveurs +commun de la résolution inverse double par les serveurs FTP et les transposeurs TCP).</p> <p>Dans tous les cas, il ne semble pas possible de garantir la -fiabilité du démarrage d'un serveur web -gérant des hôtes virtuels lorsque la -résolution DNS a échoué, sauf si la -définition de ces hôtes utilise des adresses IP -explicites. Une solution partielle consistant à ignorer +fiabilité du démarrage d'un serveur web +gérant des hôtes virtuels lorsque la +résolution DNS a échoué, sauf si la +définition de ces hôtes utilise des adresses IP +explicites. Une solution partielle consistant à ignorer certaines portions du fichier de configuration serait encore pire -que ne pas démarrer du tout, dans certains cas +que ne pas démarrer du tout, dans certains cas d'exploitation.</p> <p>Par l'extension de l'usage de HTTP/1.1, les navigateurs et -proxies fournissent de plus en plus souvent l'en-tête -<code>Host</code>, et il deviendra possible d'éviter -totalement la définition d'hôtes virtuels -basés sur des adresses IP. Dans ce cas, un serveur Web -n'aura plus de résolution DNS à effectuer pendant -la configuration. Mais à la date de Mars 1997, ces -fonctionnalités n'ont pas été suffisament -largement déployées pourpouvoir être -exploitées par des serveurs en situation critique. +proxies fournissent de plus en plus souvent l'en-tête +<code>Host</code>, et il deviendra possible d'éviter +totalement la définition d'hôtes virtuels +basés sur des adresses IP. Dans ce cas, un serveur Web +n'aura plus de résolution DNS à effectuer pendant +la configuration. Mais à la date de Mars 1997, ces +fonctionnalités n'ont pas été suffisament +largement déployées pourpouvoir être +exploitées par des serveurs en situation critique. <!--#include virtual="footer.html" --> </p> </body>
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]