1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
|
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>mod_remoteip - Serveur Apache HTTP</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body>
<div id="page-header">
<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>
<p class="apache">Serveur Apache HTTP Version 2.5</p>
<img alt="" src="../images/feather.gif" /></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
<div id="path">
<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.5</a> > <a href="./">Modules</a></div>
<div id="page-content">
<div id="preamble"><h1>Module Apache mod_remoteip</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_remoteip.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_remoteip.html" title="Fran�ais"> fr </a></p>
</div>
<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Remplace l'adresse IP et le nom d'h�te apparents du client
pour la requ�te par l'adresse IP pr�sent�e par un mandataire ou un
r�partiteur de charge via les en-t�tes de la requ�te.
</td></tr>
<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur�de�Module:</a></th><td>remoteip_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">Fichier�Source:</a></th><td>mod_remoteip.c</td></tr></table>
<h3>Sommaire</h3>
<p>Ce module permet de traiter l'h�te distant qui a initi� la
requ�te en tant qu'h�te distant original du point de vue de httpd �
des fins d'autorisation et de connexion, m�me si cet h�te distant se
trouve derri�re un r�partiteur de charge, un serveur frontal, ou un
serveur mandataire.</p>
<p>Le module remplace les adresse IP et nom d'h�te apparents
distants (du client) pour la requ�te par l'adresse IP indiqu�e dans
l'en-t�te de requ�te configur� via la directive
<code class="directive">RemoteIPHeader</code>.</p>
<p>Une fois remplac�e comme indiqu�, cette adresse IP apparente est
utilis�e pour les fonctionnalit�s <code class="directive"><a href="../mod/mod_authz_host.html#require host"><Require host></a></code> et <code class="directive"><a href="../mod/mod_authz_host.html#require ip"><Require ip></a></code> de
<code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code> ; elle est aussi affich�e par
<code class="module"><a href="../mod/mod_status.html">mod_status</a></code>, et enregistr�e via les directives
<code>%a</code> et <code>%h</code> du module
<code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code>. Elle permet aussi d'identifier la
machine en essayant de lui attribuer une identit� inetd via le
module <code class="module"><a href="../mod/mod_ident.html">mod_ident</a></code> et en fonction de la configuration
de la directive <code class="directive"><a href="../mod/mod_ident.html#identitycheck">IdentityCheck</a></code>.</p>
<div class="warning">Il est essentiel de n'activer cette
fonctionnalit� que pour les requ�tes en provenance des serveurs
interm�diaires (mandataires, etc...) auxquels le serveur peut faire
confiance, car il est trivial pour le client distant d'usurper
l'identit� d'un autre client.</div>
</div>
<div id="quickview"><h3 class="directives">Directives</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif" /> <a href="#remoteipheader">RemoteIPHeader</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#remoteipinternalproxy">RemoteIPInternalProxy</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#remoteipinternalproxylist">RemoteIPInternalProxyList</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#remoteipproxiesheader">RemoteIPProxiesHeader</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#remoteiptrustedproxy">RemoteIPTrustedProxy</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#remoteiptrustedproxylist">RemoteIPTrustedProxyList</a></li>
</ul>
<h3>Sujets</h3>
<ul id="topics">
<li><img alt="" src="../images/down.gif" /> <a href="#processing">Traitement des adresses distantes</a></li>
</ul><h3>Voir aussi</h3>
<ul class="seealso">
<li><code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code></li>
<li><code class="module"><a href="../mod/mod_status.html">mod_status</a></code></li>
<li><code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code></li>
<li><code class="module"><a href="../mod/mod_ident.html">mod_ident</a></code></li>
</ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="processing" id="processing">Traitement des adresses distantes</a></h2>
<p>Apache identifie le client par la valeur remote_ip de la
connexion, et de cette valeur d�coulent les valeurs remote_host et
remote_logname de la connexion. Ces champs jouent un r�le
dans l'authentification, l'autorisation et la connexion, ainsi que
dans d'autres traitements effectu�s par d'autres modules
chargeables.</p>
<p>mod_remoteip remplace la v�ritable remote_ip par la remote_ip
indiqu�e par exemple par un mandataire chaque fois que le serveur
effectue une �valuation du client, et r�initialise les valeurs de
remote_host et remote_logname afin de d�clencher une nouvelle
requ�te dns ou ident sur l'adresse IP distante.</p>
<p>Lorsque la valeur de l'en-t�te comporte plusieurs adresses IP
distantes s�par�es par des virgules, celles-ci sont trait�es de la
droite vers la gauche. Le traitement s'arr�te lorsque l'adresse IP
distante courante n'est pas digne de confiance pour pr�senter
l'adresse IP pr�c�dente. Le champ d'en-t�te est alors mis � jour de
fa�on � ne contenir que cette liste d'adresses non confirm�es, ou
bien, si toutes les adresses IP sont dignes de confiance, cet
en-t�te est tout bonnement supprim� de la requ�te.</p>
<p>Lors du remplacement de l'adresse IP distante, le module stocke
la liste des h�tes interm�diaires dans un m�mo
remoteip-proxy-ip-list, que l'on peut faire enregistrer par
<code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code> en utilisant le symbole de format
<code>%{remoteip-proxy-ip-list}n</code>. Si l'administrateur doit
stocker ceci dans un en-t�te additionnel, la m�me valeur peut aussi
�tre enregistr�e sous la forme d'un en-t�te en utilisant la
directive <code class="directive">RemoteIPProxiesHeader</code>.</p>
<div class="note"><h3>Adresses IPv4 converties au format IPv6</h3>
Avec httpd, d'une mani�re g�n�rale, toute adresse IPv4 convertie au
format IPv6 est enregistr�e sous sa forme IPv4.</div>
<div class="note"><h3>Adresses internes (priv�es)</h3>
Tous les blocs d'adresses internes 10/8, 172.16/12, 192.168/16,
169.254/16 and 127/8 (ainsi que les adresses IPv6 en dehors du bloc
public 2000::/3 block) ne sont �valu�es par mod_remoteip que lorsque
des mandataires internes (intranet)
<code class="directive">RemoteIPInternalProxy</code> sont enregistr�s.</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="RemoteIPHeader" id="RemoteIPHeader">RemoteIPHeader</a> <a name="remoteipheader" id="remoteipheader">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�finit le champ d'en-t�te qui contiendra les adresses IP
du client</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RemoteIPHeader <var>en-t�te</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_remoteip</td></tr>
</table>
<p>La directive <code class="directive">RemoteIPHeader</code> indique �
<code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code> de traiter la valeur de
l'<var>en-t�te</var> sp�cifi� comme l'adresse IP du client, ou comme
une liste d'adresses IP clients interm�diaires, en fonction de la
configuration des directives
<code class="directive">RemoteIPInternalProxy</code> et
<code class="directive">RemoteIPTrustedProxy</code>. Si ces deux derni�res
directives ne sont pas utilis�es, <code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code>
traitera tout h�te pr�sentant une valeur d'IP
<code class="directive">RemoteIPHeader</code> comme h�te de confiance.</p>
<div class="example"><h3>Exemple � usage interne (r�partiteur de
charge)</h3><p><code>
RemoteIPHeader X-Client-IP
</code></p></div>
<div class="example"><h3>Exemple dans le cas d'un mandataire</h3><p><code>
RemoteIPHeader X-Forwarded-For
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="RemoteIPInternalProxy" id="RemoteIPInternalProxy">RemoteIPInternalProxy</a> <a name="remoteipinternalproxy" id="remoteipinternalproxy">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�clare les adresses IP intranet clients comme dignes de
confiance pour pr�senter la valeur RemoteIPHeader</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RemoteIPInternalProxy
<var>ip-mandataire</var>|<var>ip-mandataire/sous-r�seau</var>|<var>nom-h�te</var> ...</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_remoteip</td></tr>
</table>
<p>La directive <code class="directive">RemoteIPInternalProxy</code> permet
d'ajouter une ou plusieurs adresses (ou blocs d'adresses) auxquelles
on peut faire confiance pour pr�senter une valeur RemoteIPHeader
valide de l'adresse IP du client. A la diff�rence de la directive
<code class="directive">RemoteIPTrustedProxy</code>, toute adresse IP
pr�sent�e dans cet en-t�te, y comprises les adresses intranet
priv�es, sont consid�r�es comme dignes de confiance lorsqu'elles
sont indiqu�es par ces mandataires.</p>
<div class="example"><h3>Exemple � usage interne (r�partiteur de
charge)</h3><p><code>
RemoteIPHeader X-Client-IP<br />
RemoteIPTrustedProxy 10.0.2.0/24<br />
RemoteIPTrustedProxy passerelle.domaine-local
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="RemoteIPInternalProxyList" id="RemoteIPInternalProxyList">RemoteIPInternalProxyList</a> <a name="remoteipinternalproxylist" id="remoteipinternalproxylist">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�clare les adresses IP intranet clients comme dignes de
confiance pour pr�senter la valeur RemoteIPHeader</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RemoteIPInternalProxyList <var>nom-fichier</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_remoteip</td></tr>
</table>
<p>La directive <code class="directive">RemoteIPInternalProxyList</code>
permet de sp�cifier un fichier parcouru au d�marrage du serveur pour
construire une liste d'adresses (ou blocs d'adresses), auxquelles
on peut faire confiance pour pr�senter une valeur RemoteIPHeader
valide de l'adresse IP du client.</p>
<p>Le caract�re '<code>#</code>' indique une ligne de commentaires,
sinon, toutes les lignes s�par�es par un caract�re <code>nouvelle
ligne</code> ou
tous les �l�ments d'une ligne s�par�s par un espace sont trait�s de
la m�me fa�on qu'avec la directive
<code class="directive">RemoteIPInternalProxy</code>.</p>
<div class="example"><h3>Exemple � usage interne (r�partiteur de
charge)</h3><p><code>
RemoteIPHeader X-Client-IP<br />
RemoteIPTrustedProxyList conf/mandataires-de-confiance.lst
</code></p></div>
<div class="example"><h3>contenu de conf/mandataires-de-confiance.lst</h3><p><code>
# Nos mandataires internes de confiance<br />
10.0.2.0/24 # Tout le monde dans le groupe de test<br />
passerelle.domaine-local # Le frontal r�partiteur de charge
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="RemoteIPProxiesHeader" id="RemoteIPProxiesHeader">RemoteIPProxiesHeader</a> <a name="remoteipproxiesheader" id="remoteipproxiesheader">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�clare le champ d'en-t�te qui contiendra toutes les
adresses IP interm�diaires</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RemoteIPProxiesHeader <var>Nom_en-t�te</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_remoteip</td></tr>
</table>
<p>La directive <code class="directive">RemoteIPProxiesHeader</code> permet
de sp�cifier l'en-t�te dans lequel <code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code> va
collecter une liste de toutes les adresses IP clients interm�diaires
auxquelles on pourra faire confiance pour r�soudre la v�ritable
adresse IP distante. Notez que les adresses interm�diaires
<code class="directive">RemoteIPTrustedProxy</code> sont enregistr�es dans
cet en-t�te, alors que toute adresse interm�diaire
<code class="directive">RemoteIPInternalProxy</code> est omise.</p>
<div class="example"><h3>Exemple</h3><p><code>
RemoteIPHeader X-Forwarded-For<br />
RemoteIPProxiesHeader X-Forwarded-By
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="RemoteIPTrustedProxy" id="RemoteIPTrustedProxy">RemoteIPTrustedProxy</a> <a name="remoteiptrustedproxy" id="remoteiptrustedproxy">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�clare les adresses IP intranet clients comme dignes de
confiance pour pr�senter la valeur RemoteIPHeader</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RemoteIPTrustedProxy
<var>ip-mandataire</var>|<var>ip-mandataire/sous-r�seau</var>|<var>nom-h�te</var> ...</code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_remoteip</td></tr>
</table>
<p>La directive <code class="directive">RemoteIPTrustedProxy</code> permet
d'ajouter une ou plusieurs adresses, ou blocs d'adresses, auxquelles
on peut faire confiance pour pr�senter une valeur RemoteIPHeader
valide de l'adresse IP du client. A la diff�rence de la directive
<code class="directive">RemoteIPInternalProxy</code>, toutes les adresses IP
intranet ou priv�es indiqu�es par de tels mandataires, y compris les
blocs d'adresses 10/8, 172.16/12, 192.168/16, 169.254/16 et 127/8
(ou situ�e en dehors du bloc IPv6 public 2000::/3), ne sont pas
dignes de confiance en tant qu'adresses IP distantes, et se situent
� gauche dans le contenu de l'en-t�te
<code class="directive">RemoteIPHeader</code>.</p>
<div class="example"><h3>Exemple d'adresse de confiance (r�partiteur de
charge</h3><p><code>
RemoteIPHeader X-Forwarded-For<br />
RemoteIPTrustedProxy 10.0.2.16/28<br />
RemoteIPTrustedProxy proxy.example.com
</code></p></div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="RemoteIPTrustedProxyList" id="RemoteIPTrustedProxyList">RemoteIPTrustedProxyList</a> <a name="remoteiptrustedproxylist" id="remoteiptrustedproxylist">Directive</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D�clare les adresses IP intranet clients comme dignes de
confiance pour pr�senter la valeur RemoteIPHeader</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>RemoteIPTrustedProxyList <var>nom-fichier</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_remoteip</td></tr>
</table>
<p>La directive <code class="directive">RemoteIPTrustedProxyList</code>
permet de sp�cifier un fichier parcouru au d�marrage du serveur pour
construire une liste d'adresses (ou blocs d'adresses), auxquelles
on peut faire confiance pour pr�senter une valeur RemoteIPHeader
valide de l'adresse IP du client.</p>
<p>Le caract�re '<code>#</code>' indique une ligne de commentaires,
sinon, toutes les lignes s�par�es par un caract�re nouvelle ligne ou
tous les �l�ments d'une ligne s�par�s par un espace sont trait�s de
la m�me fa�on qu'avec la directive
<code class="directive">RemoteIPTrustedProxy</code>.</p>
<div class="example"><h3>Exemple d'adresse de confiance (r�partiteur de
charge</h3><p><code>
RemoteIPHeader X-Forwarded-For<br />
RemoteIPTrustedProxyList conf/mandataires-de-confiance.lst
</code></p></div>
<div class="example"><h3>conf/mandataires-de-confiance.lst contents</h3><p><code>
# Mandataires externes identifi�s<br />
192.0.2.16/28 #groupe wap phone de mandataires<br />
proxy.isp.example.com #un FAI bien connu
</code></p></div>
</div>
</div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_remoteip.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_remoteip.html" title="Fran�ais"> fr </a></p>
</div><div id="footer">
<p class="apache">Copyright 2012 The Apache Software Foundation.<br />Autoris� sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<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>
</body></html>
|