FreeBSD Jails, Nginx, Apache, mod_rpaf

MuffiXXL

Well-Known Member
Hi,

ich habe hier einen FreeBSD Server, auf dem Jails laufen. Vom Setup her hängen da 2 externe IPs dran, auf lo1 habe ich dann ein internes Subnetz auf 10.0.0.0/29.
Der nginx bekommt also auf einer der öffentlichen IPs requests und leitet die dann an 2 Apaches weiter die im 10.0.0.0/29 Subnetz ebenfalls in Jails hängen.

Jetzt wollte ich eigentlich von nginx aus auch die IPs der Seitenbesucher an die Apaches weitergeben, damit der Apache auch was sinnvolles loggt und um bestimmte Subdomains im Zugriff einzuschränken.
Hierzu setze ich im Nginx für die einzelnen Domains

Code:
                proxy_set_header X-Real-IP  $remote_addr;
                proxy_set_header Host $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

und im Apache habe ich es erstmal mit

Code:
        RPAFenable On
        RPAFsethostname On
        RPAFproxy_ips 10.0.0.2

probiert, allerdings bekam der Apache dann die IP des Hosts für die Requests (der hängt auf 10.0.0.1 an lo1). Daraufhin also

Code:
        RPAFenable On
        RPAFsethostname On
        RPAFproxy_ips 10.0.0.0/29

probiert.

Beides führt mich allerdings nicht zum gewünschten Ziel. Apache bekommt immernoch die interne IP des Hosts und nicht die öffentliche des nginx.

Hat hier jemand einen Tipp für mich?
 
Moin MuffiXXL,

ich habe so ein ähnliches Setup mit einem pound und zwei Indianern dahinter. Ich habe bei mir in der httpd.conf der Apachen folgende Zeile:

Code:
LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

Der pound übermittelt elektrisch die Client IP-Adresse und mit dem o.g. Format schreibt der Apache die Client IP-Adresse ins Logfile, wenn man

Code:
CustomLog /pfad/zum/logfile combined

konfiguriert hat. Keine Ahnung wie nginx das handhabt, aber in der Richtung würde ich suchen.

Gruß c.
 
Gerade erst über den Thread gestolpert: Habe genau so eine Config im Einsatz, denke es fehlt nur noch der Header, den sich mod_rpaf abgreifen soll:

Code:
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 10.0.0.2
RPAFheader X-Forwarded-For
 
Zurück
Oben