Apache 2.4 mod_remoteip pentru colectarea în loguri a ip-urilor reale

Într-unul din proiectele recente am avut de pus pe picioare un setup în AWS.
Una dintre problemele pe care nu le anticipasem a fost că ip-urile vizitatorilordin logurile Apache erau suprascrise cu cel al load balancer-ului.

Căutând soluții am ales ceea ce mi s-a părut a fi cea mai simplă abordare și care satisface cerința fără multe modificări și anume folosirea modulului mod_remoteip din Apache 2.4.x

Pentru asta (serverele rulând Ubuntu) pașii sunt următorii:

$ sudo a2enmod mod_remoteip

Apoi în fișierul /etc/apache2/mods-enabled/remoteip.conf sau direct în /etc/apache2/apache2.conf (după dorința fiecăruia) se adaugă:

 RemoteIPHeader X-Forwarded-For

iar în secțiunea de definire a metodelor de log din /etc/apache2/apache2.conf se schimbă:

LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined

în

LogFormat "%a %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined

Adicătălea din %h în %a.

La final se restartează serverul de apache și din acest moment în loguri ar trebui să apară ip-urile reale ale vizitatorilor.


Posted

in

, ,

by

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

© Alex. Burlacu