はじめに

Apacheの前段にリバースプロキシを設置すると、accessログのIPアドレスに リバースプロキシのアドレスが記録されてしまいます。
例えば、リバースプロキシとApacheを同じOS上にインストールすると、accessログのIPアドレスはすべて127.0.0.1と記録されてしまいます。
mod_extract_forwardedをいれることで、送信元のアドレスが記録されるようになります。


設定

Nginxでリバースプロキシを設定し、Apacheと共存させる | abeerforyou.comの文書の3. Apacheにモジュール追加の部分がよいと思います。
$ curl -O http://www.openinfo.co.uk/apache/extract_forwarded-2.0.2.tar.gz
$ tar xvfz extract_forwarded-2.0.2.tar.gz
$ cd extract_forwarded
# apxs -i -c -a mod_extract_forwarded.c
# ls -l /etc/httpd/modules/ | grep ex
# emacs /etc/httpd/conf/httpd.conf

---編集内容 ここから---
LoadModule proxy_module modules/mod_proxy.so
↑ コメントアウト。mod_extract_forwarded.soの起動に必要。

LoadModule extract_forwarded_module modules/mod_extract_forwarded.so
↑ apxs -i -c -a mod_extract_forwarded.cすると/etc/httpd/conf/httpd.confに自動で追加されてると思います

MEForder refuse,accept
MEFrefuse all
MEFaccept 127.0.0.1 192.168.0.1
---編集内容 ここまで---

LoadModule proxy_module modules/mod_proxy.so
のコメントアウトを忘れてhttpdを起動すると
# /sbin/service httpd restart
httpd を停止中:                                            [  OK  ]
httpd を起動中: httpd: Syntax error on line 203 of /etc/httpd/conf/httpd.conf: Cannot load /etc/httpd/modules/mod_extract_forwarded.so into server: /etc/httpd/modules/mod_extract_forwarded.so: undefined symbol: proxy_hook_scheme_handler
                                                           [失敗]
と怒られます。 

MEFrefuseの書くIPアドレスはApacheの前段に設置するリバースプロキシのアドレスになります。
リバースプロキシを複数設置している場合は、上記のように半角スペースをあけてIPアドレスを書きます。
MEFrefuse all
と書くと、どこからのアクセスも許容します。
プロキシが増えていくことを考えるとallでいいんじゃないかな…という気がします。

mod_extract_forwardedのドキュメントはOpenInfo Web Siteにあります。