Sophie

Sophie

distrib > * > 2010.0 > * > by-pkgid > a412ceb851151854794ced2a242192bb > files > 3335

howto-html-fr-20080722-1mdv2010.0.noarch.rpm

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>2. Vue d'ensemble de l'utilisation d'un mandataire transparent</title>
<link rel="stylesheet" href="style.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.64.1">
<link rel="home" href="index.html" title="
				Petit guide de mise en place d'un mandataire transparent avec 
				Linux et Squid
		">
<link rel="up" href="index.html" title="
				Petit guide de mise en place d'un mandataire transparent avec 
				Linux et Squid
		">
<link rel="previous" href="ar01s01.html" title="1. Introduction">
<link rel="next" href="ar01s03.html" title="3. Configurer le noyau">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<div class="navheader">
<table width="100%" summary="Navigation header">
<tr><th colspan="3" align="center">2. Vue d'ensemble de l'utilisation d'un mandataire transparent</th></tr>
<tr>
<td width="20%" align="left">
<a accesskey="p" href="ar01s01.html">Précédent</a> </td>
<th width="60%" align="center"> </th>
<td width="20%" align="right"> <a accesskey="n" href="ar01s03.html">Suivant</a>
</td>
</tr>
</table>
<hr>
</div>
<div class="sect1" lang="fr">
<div class="titlepage">
<div><div><h2 class="title" style="clear: both">
<a name="apercu"></a>2. Vue d'ensemble de l'utilisation d'un mandataire transparent</h2></div></div>
<div></div>
</div>
<div class="sect2" lang="fr">
<div class="titlepage">
<div><div><h3 class="title">
<a name="id2451312"></a>2.1. Motivation</h3></div></div>
<div></div>
</div>
<p>
				Lors de l'utilisation d'un mandataire (proxy) 
				« ordinaire », le client indique à son navigateur le 
				nom d'hôte et le numéro de port du serveur mandataire.
				Le navigateur dirige alors ses requêtes vers le serveur 
				mandataire qui les redirige vers les serveurs cibles. Cependant, de 
				temps en temps, on se trouve dans l'une des situations suivantes. 
				Soit :
			</p>
<div class="itemizedlist"><ul type="disc">
<li><p>
						vous voulez obliger les clients de votre réseau à 
						utiliser le serveur mandataire, qu'ils le veuillent ou 
						non ;
					</p></li>
<li><p>
						vous voulez que les clients utilisent le mandataire 
						mais vous ne voulez	pas qu'ils le sachent ;
				</p></li>
<li><p>
						vous voulez que les clients passent par le serveur 
						mandataire, mais vous ne voulez pas faire tout 
						le travail nécessaire à la mise à jour des réglages de
						centaines ou de milliers de navigateurs.
				</p></li>
</ul></div>
<p>
				C'est ici que le mandataire transparent entre en scène. Une 
				requête <span class="foreignphrase"><i class="foreignphrase">web</i></span> peut être interceptée de façon transparente par le 
				mandataire. Pour autant que le sache le client, il est en train 
				de parler au serveur d'origine, alors qu'il communique 
				en réalité avec le mandataire. (Notez que la transparence ne 
				s'applique qu'au client ; le serveur sait qu'un serveur 
				mandataire est mis en œuvre et voit son adresse IP, et 
				non celle de l'utilisateur.
				De plus, Squid a la possibilité de transmettre un en-tête 
				<tt class="literal">X-Forwarder-For</tt> au serveur, afin que 
				celui-ci puisse déterminer l'adresse IP réelle du client).
			</p>
<p>
				Les routeurs Cisco peuvent être utilisés comme mandataires 
				transparents ainsi que de multiples commutateurs. D'une manière 
				assez épatante, Linux peut être configuré comme routeur, et 
				servir de mandataire transparent en redirigeant les connexions 
				TCP vers des ports locaux.
				Cependant, il est nécessaire de s'assurer que le serveur 
				mandataire soit au courant de cette redirection, afin 
				qu'il puisse se connecter aux véritables serveurs de 
				destination. Il existe deux moyens généraux pour cela :
			</p>
<div class="itemizedlist"><ul type="disc">
<li><p>
				Tout d'abord, lorsque le serveur mandataire n'est pas capable 
				d'agir en tant que mandataire transparent, vous pouvez
				utiliser un petit démon astucieux appelé Transproxy qui siège 
				devant le mandataire et s'occupe de tous les détails triviaux à 
				votre place. Transproxy a été écrit par John Saunders, et peut 
				être trouvé sur <a href="http://www.transproxy.nlc.net.au/" target="_top">http://www.transproxy.nlc.net.au/</a>.
				Transproxy ne sera pas présenté plus en détail dans ce 
				document.
			</p></li>
<li><p>
				Une solution plus propre est d'utiliser un serveur mandataire 
				directement capable d'agir en tant que mandataire transparent.
				Celui sur lequel nous allons nous pencher est Squid. Squid est 
				un serveur mandataire pour Unix, dont les sources sont 
				publiques, et qui est capable de mémoriser les pages 
				<span class="foreignphrase"><i class="foreignphrase">web</i></span>. On peut le trouver sur 
				<a href="http://www.squid-cache.org" target="_top">http://www.squid-cache.org</a>.
			</p></li>
</ul></div>
<p>
				Il est également possible, au lieu de rediriger les connexions 
				vers des ports locaux, de les rediriger vers des ports distants. 
				Ceci sera traité dans <a href="ar01s06.html" title="6. Mandataire transparent pour une machine distante">Section 6, « Mandataire transparent pour une machine distante »</a>. Les 
				lecteurs intéressés par ce sujet devraient aller directement à 
				cette section. Les lecteurs qui souhaitent mettre en 
				place sur une même machine la redirection et le mandataire 
				peuvent faire l'impasse sur cette section.
			</p>
</div>
<div class="sect2" lang="fr">
<div class="titlepage">
<div><div><h3 class="title">
<a name="apercu-etendue"></a>2.2. Étendue du document</h3></div></div>
<div></div>
</div>
<p>
			
				Ce document se concentre sur la version 2.4 de Squid ainsi que 
				sur la version 2.4 du noyau. Ces versions sont les plus récentes 
				versions stables au moment de son écriture (août 2002). Il 
				devrait également s'appliquer à la plupart des noyaux 2.3 les 
				plus récents.
				Si vous souhaitez utiliser des versions antérieures de Squid ou 
				de Linux, vous pouvez vous référer à <a href="http://users.gurulink.com/drk/transproxy/" target="_top">http://users.gurulink.com/drk/transproxy/</a>. 
				Notez que ce site a déménagé.
				
			</p>
<p>
			
			 Si vous utilisez une version de développement du noyau ou de Squid, vous
			 serez livré à vous-même. Ce document peut vous aider mais c'est 
			 vous qui voyez.
			 
			 </p>
<p>
			
				Notez que ce document ne traitera que des mandataires HTTP. 
				Je reçois une foule de messages au sujet de la mise en place de 
				mandataires FTP transparents. Squid ne possède pas cette 
				capacité. Il semblerait qu'un programme nommé 
				Frox le puisse. Je ne l'ai pas essayé, donc j'ignore s'il
				fonctionne bien. Vous pourrez le trouver sur <a href="http://frox.sourceforge.net/" target="_top">http://frox.sourceforge.net/</a>.
				
			</p>
<p>

				Ce document se consacre essentiellement à Squid. Cependant, 
				Apache peut aussi être utilisé comme mandataire avec mémoire des 
				pages. (Si vous hésitez sur le serveur mandataire à adopter, je 
				vous recommande Squid. En effet, Squid a été pensé dès le départ 
				comme serveur mandataire. Apache, de son côté, ne s'est 
				vu rajouter les fonctionnalités de mandataire qu'après coup). Si 
				vous désirez utiliser Apache au lieu de Squid, suivez toutes les 
				instructions de ce document relatives au noyau et aux règles 
				iptables. Ne tenez pas comptes des sections spécifiques à Squid, 
				et allez voir les sources et le mode d'emploi du module 
				mandataire transparent pour Apache sur <a href="http://lupo.campus.uniroma2.it/progetti/mod_tproxy/" target="_top">http://lupo.campus.uniroma2.it/progetti/mod_tproxy/</a>.
				(Merci à Cristiano Paris
				<tt class="email">&lt;<a href="mailto:c%20POINT%20paris%20CHEZ%20libero%20POINT%20it">c POINT paris CHEZ libero POINT it</a>&gt;</tt> pour sa 
				contribution sur ce point).

			</p>
</div>
<div class="sect2" lang="fr">
<div class="titlepage">
<div><div><h3 class="title">
<a name="https"></a>2.3. HTTPS</h3></div></div>
<div></div>
</div>
<p>
				Enfin, en ce qui concerne la mise en place d'un mandataire 
				transparent pour HTTPS (par exemple, pour les pages <span class="foreignphrase"><i class="foreignphrase">web</i></span> 
				utilisant SSL, TSL, et cætera), <span class="emphasis"><em>vous ne pouvez pas le
				faire</em></span>. Ne le demandez même pas. Pour comprendre 
				pourquoi, effectuez une recherche avec les mots clefs 
				« attaque de l'intermédiaire caché » 
				(<span class="foreignphrase"><i class="foreignphrase">man-in-the-middle attack</i></span>). 
				Remarquez que, de toutes manières, vous n'avez probablement pas 
				réellement besoin de rediriger les requêtes HTTPS vers Squid, 
				dans la mesure où celui-ci ne mémorise pas les pages sécurisés.
			</p>
</div>
<div class="sect2" lang="fr">
<div class="titlepage">
<div><div><h3 class="title">
<a name="authentification"></a>2.4. Authentification auprès du mandataire</h3></div></div>
<div></div>
</div>
<p>
				Il n'est pas possible de s'authentifier auprès d'un mandataire 
				transparent. Voyez la <a href="http://www.squid-cache.org/Doc/FAQ/FAQ.html" target="_top">FAQ 
				Squid</a> pour (un peu) plus de détails.
			</p>
</div>
</div>
<div class="navfooter">
<hr>
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left">
<a accesskey="p" href="ar01s01.html">Précédent</a> </td>
<td width="20%" align="center"><a accesskey="u" href="index.html">Niveau supérieur</a></td>
<td width="40%" align="right"> <a accesskey="n" href="ar01s03.html">Suivant</a>
</td>
</tr>
<tr>
<td width="40%" align="left" valign="top">1. Introduction </td>
<td width="20%" align="center"><a accesskey="h" href="index.html">Sommaire</a></td>
<td width="40%" align="right" valign="top"> 3. Configurer le noyau</td>
</tr>
</table>
</div>
</body>
</html>