Extrahujte skutečnou IP z pozadí reverzního proxy / nástroje pro vyrovnávání zatížení
Kdykoli použijeme web založený na Apache za reverzním proxy, ve výchozím nastavení bychom ztratili rozumný způsob, jak extrahovat skutečnou IP (nebo alespoň máme velmi dobrou šanci) klienta, který požadavek podal. Je to proto, že náš reverzní proxy nebo load balancer se v mnoha situacích stává klientem a pro Apache to znamená, že vždy uvidíme pouze IP (interní IP, pokud je lokální na naší serverové farmě Apache), která se stane nepoužitelnou, pokud provádíme analýzu na Apache protokoluje nebo rozhoduje o požadavku na základě IP .
Abychom Apache informovali o skutečné IP adrese klienta, musíme načíst modul mod_rpaf. Na počítačích založených na Debianu je to stejně snadné a přímočaré jako spuštění následujícího příkazu a restartování Apache:
sudo apt-get install libapache2-mod-rpaf
To však není případ strojů RHE/RHL. Pomocí následujících kroků nainstalujte modul mod_rpaf na váš počítač založený na RHE/RHL, jako je server CentOS apache.
wget http://drupion.com/sites/default/files/mod_rpaf-0.6.tar_.gz
Všimněte si, že http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz, kde byl soubor z nějakého důvodu původně umístěn, je momentálně vypnutý.
yum install httpd-develtar zxvf mod_rpaf-0.6.tar_.gz
cd mod_rpaf-0.6
apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c
Nyní vytvořte soubor /etc/httpd/conf.d/mod_rpaf.conf s následujícím obsahem:
LoadModule rpaf_module modules/mod_rpaf-2.0.so# konfigurace mod_rpaf
RPAFenable On
RPAFsethostname On
RPAFproxy_ips xxx.xxx.xxx.xxx
RPAFheader X-Forwarded-For
Nezapomeňte nahradit xxx.xxx.xxx.xxx IP adresou vašeho serveru, restartujte Apache a poté zkontrolujte své protokoly, abyste viděli, že nyní vidíte IP adresy vašich návštěvníků, nikoli IP vašeho serveru.