Forum Doku Wiki Blog

Forumsarchiv 2009, September
X-Forwarded-For

archivierte Beiträge lesen

  1. (SERVER) X-Forwarded-For von wolli, 06. 09. 2009, 11:04

X-Forwarded-For

Der folgende Beitrag wurde am 06. 09. 2009, 11:04 Uhr von wolli veröffentlicht.

guten morgen,

ich versuche verzweifelt in der httpd.conf den X-Forwarded-For sofern vorhanden anstatt der übergebenen client IP %h zu loggen.

Aber irgendwie klappt das nicht

Hier meine Ansätze

<IfModule log_config_module>
SetEnv xproxy "%h"
SetEnvIf X-Forwarded-For "^.+" xproxy=%{X-Forwarded-For}i

    LogFormat "%{xproxy}i %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    CustomLog logs/access_log common
</IfModule>

Kann mir bitte jemand einen Tipp geben was ich falsch mache
Danke
wolli

X-Forwarded-For

Der folgende Beitrag wurde am 06. 09. 2009, 12:16 Uhr von Edgar Ehritt veröffentlicht.

Hallo Wolli,


mod_log_config kann mit %{FOOBAR}e auch Variablen des environment aufzeichnen. SetEnvIf kann diese bereitstellen. Unterstellt, dass jede Anfrage einen X-Forwarded-For-Header hat, sollte aber %{X-Forwarded-For}i genügen.

LogFormat "%{X-Forwarded-For}i %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" neuformat
CustomLog logs/access_log neuformat



Gruß aus Berlin!
eddi
--
Könnte bitte jemand mal langsam dafür sorgen, dass da draußen nicht dauernd die Filmrolle "Planet der Affen" abgedudelt wird? Danke!

X-Forwarded-For

Der folgende Beitrag wurde am 06. 09. 2009, 15:34 Uhr von wolli veröffentlicht.

> Hallo Wolli,
>
>
> mod_log_config kann mit %{FOOBAR}e auch Variablen des environment aufzeichnen. SetEnvIf kann diese bereitstellen. Unterstellt, dass jede Anfrage einen X-Forwarded-For-Header hat, sollte aber %{X-Forwarded-For}i genügen.
>
> LogFormat "%{X-Forwarded-For}i %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" neuformat
> CustomLog logs/access_log neuformat

>
>
> Gruß aus Berlin!
> eddi

Das ist ja gerade mein Problem
der X-Forwarded-For soll überprüft werden ob er vorhanden ist
wenn ja soll die IP anstatt %h geloggt werden

X-Forwarded-For

Der folgende Beitrag wurde am 06. 09. 2009, 18:09 Uhr von ChrisB veröffentlicht.

Hi,

bitte zitiere vernünftig, nicht einfach alles.

> Das ist ja gerade mein Problem
> der X-Forwarded-For soll überprüft werden ob er vorhanden ist
> wenn ja soll die IP anstatt %h geloggt werden

Na dann schreib zunächst die "normale" IP in eine Umgebungsvariable, und wenn X-Forwarded-For vorhanden ist, überschreibe sie damit. Und dann lasse diese Umgebungsvariable ins Log schreiben.

MfG ChrisB


--
Light travels faster than sound - that's why most people appear bright until you hear them speak.

X-Forwarded-For

Der folgende Beitrag wurde am 06. 09. 2009, 18:11 Uhr von Tom veröffentlicht.

Hello,

> bitte zitiere vernünftig, nicht einfach alles.
>
> > Das ist ja gerade mein Problem
> > der X-Forwarded-For soll überprüft werden ob er vorhanden ist
> > wenn ja soll die IP anstatt %h geloggt werden
>
> Na dann schreib zunächst die "normale" IP in eine Umgebungsvariable, und wenn X-Forwarded-For vorhanden ist, überschreibe sie damit. Und dann lasse diese Umgebungsvariable ins Log schreiben.

Damit würde ihm aber eine wichtige Information verloren gehen.



Liebe Grüße aus dem schönen Oberharz


Tom vom Berg



--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de

X-Forwarded-For

Der folgende Beitrag wurde am 06. 09. 2009, 20:04 Uhr von wolli for Chris veröffentlicht.

> Na dann schreib zunächst die "normale" IP in eine Umgebungsvariable, und wenn X-Forwarded-For vorhanden ist, überschreibe sie damit.

Hallo Chris,

genau das versuche ich umzusetzen was nicht funktioniert
und auch meine ursprünliche Frage war

<IfModule log_config_module>
SetEnv xproxy "%h"
SetEnvIf X-Forwarded-For "^.+" xproxy=%{X-Forwarded-For}i

    LogFormat "%{xproxy}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    CustomLog logs/access_log common
</IfModule>

Wo liegt mein Fehler

wolli

X-Forwarded-For

Der folgende Beitrag wurde am 07. 09. 2009, 23:12 Uhr von Edgar Ehritt veröffentlicht.

Re:
>     LogFormat "%{xproxy}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
>     CustomLog logs/access_log common
> Wo liegt mein Fehler

Ich dachte, das sei bereits klar geworden, dass zwischen %{foobar}i und %{foobar}e ein Unterschied besteht. Weiterhin benennst Du ein LogFormat "combined", zeichnest dann aber LogFormat "common" auf. Wie soll man jemanden Helfen, der bei seinem Problemvortrag so offensichtlich schlampt?

Zeichen sowohl den Header mit %{X-Forwarded-For}i auf, als auch remote host, der direkt den Server kontaktiert, mittels %h, und lass den Umweg über SetEnvIf sein! Aufschlüsseln kannst Du dies nur durch ein Script/Programm, was das Log ausliest.


Gruß aus Berlin!
eddi
--
Könnte bitte jemand mal langsam dafür sorgen, dass da draußen nicht dauernd die Filmrolle "Planet der Affen" abgedudelt wird? Danke!

X-Forwarded-For

Der folgende Beitrag wurde am 06. 09. 2009, 18:10 Uhr von Tom veröffentlicht.

Hello,

> Das ist ja gerade mein Problem
> der X-Forwarded-For soll überprüft werden ob er vorhanden ist
> wenn ja soll die IP anstatt %h geloggt werden

MWn ist das Logformat statisch und wird beim Hochfahren des Servers eingelesen.
Loggen könntest Du also bestenfalls die Client-IP[1] UND die forwarded-for-IP.
Die Auswertung machst Du dann nachher beim Lesen des Logs.

[1] ist entweder die des Proxies oder die des vermeintlichen Clients,
    je nachdem, ob die X-IP auch vorhanden ist.

Verlassen kann man sich auf die Weiterleitung der X-IP sowie nicht. Sie ist für das Routing unerheblich. Sie schützt nur den Dienst (Proxy) etwas vor nicht nachprüfbarer Benutzung.





Liebe Grüße aus dem schönen Oberharz


Tom vom Berg



--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de

© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4