Итак, NGINX в качестве прокси для Apache. Необходимо обеспечить передачу HTTP заголовков на Apache с реальными IP адресами. Обеспечить это мне удалось сделать только на NGINX v.1.10.3, Apache v.2.4.7 и модулем для Apache2 remote_ip. C модулем rpaf это сделать не удалось, увы.
Начнём с конфиги NGINX. В секции server помимо всего прочего прописываем параметры проксирования, например:
proxy_pass http://192.168.1.8:8080/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
Далее настраиваем Apache2. Включаем модуль remote_ip.
a2enmod remoteip
и
/etc/init.d/apache2 restart
Если всё получилось, то осталось добавить в файл конфигурации виртуального хоста следующее:
<IfModule remoteip_module>
RemoteIPHeader X-Forwarded-For
RemoteIPTrustedProxy 192.168.1.8
</IfModule>
Этого должно хватить. На более старой версии NGINX и при помощи модуля rpaf добиться желаемого результата не получилось.