Extracción de IP real detrás del proxy inverso/equilibrador de carga
Cada vez que usamos un sitio basado en Apache detrás de un proxy inverso, perderíamos por defecto una forma sensata de extraer la IP real (o al menos tendríamos una muy buena posibilidad de hacerlo) del cliente que realiza la solicitud. Esto se debe a que nuestro proxy inverso o balanceador de carga en muchas situaciones se convierte en el cliente y para Apache esto significa que solo veremos la IP (la IP interna si es local para nuestra granja de servidores Apache) que se vuelve inútil si estamos haciendo análisis en el Apache registra o toma decisiones para la solicitud en función de la IP.
Para que apache sepa la ip del cliente real, podemos usar el módulo mod_rpaf que debe cargarse. En máquinas basadas en Debian, es tan fácil y sencillo como ejecutar el siguiente comando y reiniciar Apache:
sudo apt-get install libapache2-mod-rpaf
Sin embargo, ese no es el caso con las máquinas RHE/RHL. Utilice los siguientes pasos para instalar el módulo mod_rpaf en su máquina basada en RHE/RHL, como el servidor apache de CentOS.
wget http://drupion.com/sites/default/files/mod_rpaf-0.6.tar_.gz
Tenga en cuenta que http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz, donde el archivo originalmente estaba ubicado por algún motivo, está desactivado actualmente.
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
Ahora cree el archivo /etc/httpd/conf.d/mod_rpaf.conf con el siguiente contenido:
LoadModule rpaf_module módulos/mod_rpaf-2.0.so# configuración mod_rpaf
RPAFenable On
RPAFsethostname On
RPAFproxy_ips xxx.xxx.xxx.xxx
RPAFheader X-Forwarded-For
Asegúrese de reemplazar xxx.xxx.xxx.xxx con la dirección IP de su servidor, reinicie Apache y luego revise sus registros para ver que ahora está viendo las IP de sus visitantes en lugar de la IP de su servidor.