Serveur Apache HTTP Version 2.4
Description: | Remplace l'adresse IP 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. |
---|---|
Statut: | Base |
Identificateur�de�Module: | remoteip_module |
Fichier�Source: | mod_remoteip.c |
Ce module permet de traiter le client qui a initi� la requ�te en tant que client original du point de vue de httpd � des fins d'autorisation et de connexion, m�me si ce client se trouve derri�re un r�partiteur de charge, un serveur frontal, ou un serveur mandataire.
Le module remplace l'adresse IP du client
pour la connexion par l'adresse IP indiqu�e dans
l'en-t�te de requ�te configur� via la directive
RemoteIPHeader
.
Une fois sa valeur modifi�e comme indiqu�, cette adresse IP client est
utilis�e pour la fonctionnalit� Require ip
de
mod_authz_host
; elle est aussi affich�e par
mod_status
, et enregistr�e via les cha�nes de formatage
%a
des modules mod_log_config
et core
.
L'adresse IP client sous-jacente de la connexion est enregistr�e via la cha�ne de
formatage %{c}a
.
Par d�faut, Apache identifie le client via la valeur client_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 journalisation, ainsi que dans d'autres traitements effectu�s par d'autres modules chargeables.
mod_remoteip remplace l'adresse IP client de la connexion par l'adresse IP client indiqu�e par exemple par un mandataire ou un r�partiteur de charge pour toute la dur�e de la requ�te. Un r�partiteur de charge pourra ainsi �tablir une connexion keepalive de longue dur�e avec le serveur, chaque requ�te conservant alors l'adresse IP client correcte bien que l'adresse IP client sous-jacente du r�partiteur de charge reste inchang�e.
Lorsque la valeur de l'en-t�te comporte plusieurs adresses IP client 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 client 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.
Lors du remplacement de l'adresse IP client, 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
mod_log_config
en utilisant le symbole de format
%{remoteip-proxy-ip-list}n
. 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 RemoteIPProxiesHeader
.
RemoteIPInternalProxy
sont enregistr�s.Description: | D�finit le champ d'en-t�te qui contiendra les adresses IP du client |
---|---|
Syntaxe: | RemoteIPHeader en-t�te |
Contexte: | configuration du serveur, serveur virtuel |
Statut: | Base |
Module: | mod_remoteip |
La directive RemoteIPHeader
indique �
mod_remoteip
de traiter la valeur de
l'en-t�te 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
RemoteIPInternalProxy
et
RemoteIPTrustedProxy
. Si ces
deux derni�res directives ne sont pas utilis�es,
mod_remoteip
traitera tout h�te pr�sentant une adresse non
interne dans l'en-t�te RemoteIPHeader
comme h�te de confiance.
mod_remoteip
traitera tout h�te pr�sentant une adresse non interne
dans l'en-t�te RemoteIPHeader
comme h�te de
confiance.RemoteIPHeader X-Client-IP
RemoteIPHeader X-Forwarded-For
Description: | D�clare les adresses IP intranet clients comme dignes de confiance pour pr�senter la valeur RemoteIPHeader |
---|---|
Syntaxe: | RemoteIPInternalProxy
ip-mandataire|ip-mandataire/sous-r�seau|nom-h�te ... |
Contexte: | configuration du serveur, serveur virtuel |
Statut: | Base |
Module: | mod_remoteip |
La directive RemoteIPInternalProxy
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
RemoteIPTrustedProxy
, 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.
RemoteIPHeader X-Client-IP RemoteIPInternalProxy 10.0.2.0/24 RemoteIPInternalProxy gateway.localdomain
Description: | D�clare les adresses IP intranet clients comme dignes de confiance pour pr�senter la valeur RemoteIPHeader |
---|---|
Syntaxe: | RemoteIPInternalProxyList nom-fichier |
Contexte: | configuration du serveur, serveur virtuel |
Statut: | Base |
Module: | mod_remoteip |
La directive RemoteIPInternalProxyList
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.
Le caract�re '#
' 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
RemoteIPInternalProxy
.
RemoteIPHeader X-Client-IP RemoteIPInternalProxyList conf/trusted-proxies.lst
# Nos mandataires internes de confiance 10.0.2.0/24 # Tout le monde dans le groupe de test passerelle.domaine-local # Le frontal r�partiteur de charge
Description: | D�clare le champ d'en-t�te qui contiendra toutes les adresses IP interm�diaires |
---|---|
Syntaxe: | RemoteIPProxiesHeader Nom_en-t�te |
Contexte: | configuration du serveur, serveur virtuel |
Statut: | Base |
Module: | mod_remoteip |
La directive RemoteIPProxiesHeader
permet
de sp�cifier l'en-t�te dans lequel mod_remoteip
va
collecter une liste de toutes les adresses IP clients interm�diaires
auxquelles on pourra faire confiance pour r�soudre l'adresse IP
client de la requ�te. Notez que les adresses interm�diaires
RemoteIPTrustedProxy
sont enregistr�es dans
cet en-t�te, alors que toute adresse interm�diaire
RemoteIPInternalProxy
est omise.
RemoteIPHeader X-Forwarded-For RemoteIPProxiesHeader X-Forwarded-By
Description: | D�clare les adresses IP clientes de l'intranet dignes de confiance pour pr�senter la valeur RemoteIPHeader |
---|---|
Syntaxe: | RemoteIPTrustedProxy
ip-mandataire|ip-mandataire/sous-r�seau|nom-h�te ... |
Contexte: | configuration du serveur, serveur virtuel |
Statut: | Base |
Module: | mod_remoteip |
La directive RemoteIPTrustedProxy
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
RemoteIPInternalProxy
, 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
RemoteIPHeader
.
RemoteIPHeader X-Forwarded-For RemoteIPTrustedProxy 10.0.2.16/28 RemoteIPTrustedProxy proxy.example.com
Description: | D�clare les adresses IP intranet clients comme dignes de confiance pour pr�senter la valeur RemoteIPHeader |
---|---|
Syntaxe: | RemoteIPTrustedProxyList nom-fichier |
Contexte: | configuration du serveur, serveur virtuel |
Statut: | Base |
Module: | mod_remoteip |
La directive RemoteIPTrustedProxyList
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.
Le caract�re '#
' 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
RemoteIPTrustedProxy
.
RemoteIPHeader X-Forwarded-For RemoteIPTrustedProxyList conf/trusted-proxies.lst
# Mandataires externes identifi�s
192.0.2.16/28 #groupe wap phone de mandataires
proxy.isp.example.com #un FAI bien connu