IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

Probleme avec parametre X-Forwarded-For


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Bahan
    Inscrit en
    Avril 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Avril 2006
    Messages : 147
    Par défaut Probleme avec parametre X-Forwarded-For
    Bonjour à toutes et à tous.

    Je suis assez novice là-dedans, donc j'espère que ma question ne paraîtra pas trop idiote ^_^.

    Voilà mon problème actuel :

    J'ai trouvé sur le net la définition suivante pour ce paramètre X-Forwarded-For :

    The general format of the header is:

    X-Forwarded-For: client1, proxy1, proxy2

    where the value is a comma+space separated list of IP addresses, the
    left-most being the farthest downstream client, and each successive proxy
    that passed the request adding the IP address where it received the request
    from. In this example, the request passed proxy1, proxy2, and proxy3 (proxy3
    appears as the client).
    Si je comprends bien ce qui est marqué :
    • client1 = adresse IP du client c'est-à-dire du user lambda comme vous et moi quand nous allons sur un site web ?
    • proxy1 = adresse IP du premier proxy par lequel passe le client et qui utilise déjà le paramètre X-Forwarded-For
    • proxy2 = adresse IP du second proxy par lequel passe le client et qui utilise déjà le paramètre X-Forwarded-For


    Est-ce que j'ai bon à ce niveau ? Où est-ce que je suis dans l'erreur ^_^ ?

    De plus, sur le site d'Apache (http://httpd.apache.org/docs/2.2/mod/mod_proxy.html), j'ai trouvé le paragraphe suivant :

    Reverse Proxy Request Headers

    When acting in a reverse-proxy mode (using the ProxyPass directive, for example), mod_proxy_http adds several request headers in order to pass information to the origin server. These headers are:

    X-Forwarded-For The IP address of the client.
    X-Forwarded-Host The original host requested by the client in the Host HTTP request header.
    X-Forwarded-Server The hostname of the proxy server.

    Be careful when using these headers on the origin server, since they will contain more than one (comma-separated) value if the original request already contained one of these headers. For example, you can use %{X-Forwarded-For}i in the log format string of the origin server to log the original clients IP address, but you may get more than one address if the request passes through several proxies.

    See also the ProxyPreserveHost and ProxyVia directives, which control other request headers.
    Ce qui m'intéresse notamment c'est le fait que si j'ai plusieurs proxy utilisant déjà le paramètre X-Forwarded-For, quand je vais l'utiliser moi, j'aurais toutes les IP, et pas seulement celle de mon user.

    Aussi je me demandais comment faire pour ne prendre en compte que l'IP du user et pas celles des proxy qui utilise déjà XFF et par lequel il passe.

    Je ne peux pas récupérer l'IP du client de la manière habituelle car je suis derrirère un load balancer . (ah ces équipements réseau )

    Cdt.

    Bahan

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Citation Envoyé par Bahan Voir le message
    Est-ce que j'ai bon à ce niveau ? Où est-ce que je suis dans l'erreur ^_^ ?
    Voui, c'est bien ça.

    Citation Envoyé par Bahan Voir le message
    Aussi je me demandais comment faire pour ne prendre en compte que l'IP du user et pas celles des proxy qui utilise déjà XFF et par lequel il passe.
    C'est bien simple : tu récupères l'IP la plus à gauche dans la valeur de l'en-tête X-Forwarded-For. En fait, là où la doc Apache n'est pas claire c'est qu'on a l'impression qu'Apache ne mettra dans cet en-tête que l'IP de la machine qui fait réellement la requête HTTP, à savoir éventuellement l'IP du proxy.

    En fait, la question c'est qu'est-ce que tu veux faire de cette info ? Je m'explique : pour des raisons de sécurité, la plupart des boîtes utilisent un proxy pour autoriser leurs employés à aller sur le Web, et ce proxy ne met pas cet en-tête X-Forwared-For pour éviter que l'adresse IP interne de l'utilisateur ne soit vue de l'extérieur (qui, soit dit entre nous, est une information fort peu intéressante car très certainement en 192.168.X.X, donc pas très précise). Donc, souvent dans ce cas, si tu récupères un X-Forwarded-For, tu auras l'IP du proxy et pas celle du client.

Discussions similaires

  1. Probleme avec parametre operateur
    Par ogrilus dans le forum Langage
    Réponses: 9
    Dernier message: 21/12/2011, 08h46
  2. [10G][PL/SQL] probleme avec %ROWCOUT et structure for
    Par Jean_pierre dans le forum Oracle
    Réponses: 2
    Dernier message: 21/03/2007, 13h18
  3. probleme avec generic host process for win32 services
    Par thesorrow dans le forum Windows XP
    Réponses: 2
    Dernier message: 15/03/2007, 10h29
  4. Ksh, problème avec une simple boucle for
    Par herzleid dans le forum Linux
    Réponses: 4
    Dernier message: 22/03/2006, 14h45
  5. Probleme avec le signe & contenu dans un parametre d'une
    Par Ludo_xml dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 22/08/2005, 15h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo