Sziasztok,
adott egy KVM host, rajta Haproxy. A Haproxy a guestek felé továbbít. A régebbi vendég OS-eken a apcheok esetén rpaf van, így szépen bekerülnek a naplóba a valós IP-k.
Most lett egy új vendég gép, Centos 7. Itt már mod_remoteip-t kell használni, de nem bírom rávenni, hogy tényleg kapjam az IP-ket.
Haproxyban foreadfor bekapcsolva, mint a többi gépnél.
Kb. 6 féle tutorialt néztem már végig, de ez a remoteip modul nem akarja az igazat. LogFormat belőve, modul betöltve, RemoteIPInternalProxy-nak megadva a Haproxy IP-je.
Vendég gépen PHP-ból kilistáztam a küldött headereket, benne van az X-Forwarded-For az eredeti IP-vel.
Van esetleg valakinek egy működő konfja erre?
Előre is köszönöm!
- 5146 megtekintés
Hozzászólások
tuti hogy be van töltve a modul az apache-ba? (apache2ctl -M)
// Happy debugging, suckers
#define true (rand() > 10)
- A hozzászóláshoz be kell jelentkezni
[root@mail httpd]# /usr/sbin/apachectl -M | grep remoteip
[Sat May 21 19:38:44.135439 2016] [so:warn] [pid 4838] AH01574: module remoteip_module is already loaded, skipping
remoteip_module (shared)
# set REMOTE_ADDR to the client's IP instead of the proxy's IP
RemoteIPHeader X-Forwarded-For
RemoteIPInternalProxy 192.168.122.1
# set HTTPS if the original request was a HTTPS request
SetEnvIf X-Forwarded-Proto "^https$" HTTPS
LogFormat "%a %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
- A hozzászóláshoz be kell jelentkezni
A RemoteIPHeader -t hova raktad?
// Happy debugging, suckers
#define true (rand() > 10)
- A hozzászóláshoz be kell jelentkezni
Most épp a VirtualHost konfigban van (IfModule mod_remoteip.c bent van, csak a drupal leszedi a kacsacsőröket), de volt már a modul konban és a https.confban is.
Egyik sem ment.
- A hozzászóláshoz be kell jelentkezni
Nézzünk meg egy query-t ilyen logformattal: "%h %a %{c}a %{X-Forwarded-For}i %l %u %t \"%m\" \"%r&\" \"%q&\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" pid=%{pid}P tid=%{tid}P time_ms=%D"
Illetve mivel nem írtál ip-ket, talán a RemoteIPTrustedProxy lesz a barátod
// Happy debugging, suckers
#define true (rand() > 10)
- A hozzászóláshoz be kell jelentkezni
A Trusted is megvolt már :D
Ez a logformat sem adott pozitív eredményt.
Most csináltam egy ilyet is:
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" proxy
SetEnvIf X-Forwarded-For "^.*\..*\..*\..*" forwarded
CustomLog "/var/log/httpd/nemfor.log" combined env=!forwarded
CustomLog "/var/log/httpd/for.log" proxy env=forwarded
A nemfor.log tele lett, a for.log üres. Mintha a remoteip modul egyáltalán nem csinálna semmit.
- A hozzászóláshoz be kell jelentkezni
Grrrr, PEBKAC.
A httpd.confban volt egy LogFormat sor, ami felülírt bármit, amit a VirtualHost konfba beraktam.
Köszi a segítséget! :)
- A hozzászóláshoz be kell jelentkezni
ugyan, a lényeg hogy megoldódott:)
// Happy debugging, suckers
#define true (rand() > 10)
- A hozzászóláshoz be kell jelentkezni