Назад | Перейти на главную страницу

mod_rpaf с apache error_log

Я использую mod-rpaf с Apache 2.4, и он работает правильно (показывает реальный IP-адрес клиента) в моем журнале доступа Apache ... но не в моем error_log. В моем журнале ошибок просто отображается IP-адрес клиента прокси-сервера (в данном случае мой балансировщик нагрузки)

Вот пример того, что я вижу в своем error_log, где 123.123.123.123 - это IP-адрес моего балансировщика нагрузки / прокси.

==> / usr / local / apache2 / logs / error_log <== [Вт, 05 июня, 20: 24: 31.027525 2012] [access_compat: error] [pid 9145: tid 140485731845888] [клиент 123.123.123.123: 20396] AH01797: клиент отклонен конфигурацией сервера: /wwwroot/private/secret.pdf

Тот же самый запрос дает следующее в моем access_log где 456.456.456.456 - это реальный IP-адрес клиента (а не IP-адрес балансировщика нагрузки).

456.456.456.456 - - [05/Jun/2012:20:24:31 +0000] "GET /wwwroot/private/secret.pdf HTTP/1.1" 403 228 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:12.0) Gecko/20100101 Firefox/12.0"

Вот моя запись httpd.conf:

# RPAF
LoadModule rpaf_module  modules/mod_rpaf-2.0.so
RPAFenable On
RPAFproxy_ips 127.0.0.1 123.123.123.123
RPAFsethostname On
RPAFheader X-Forwarded-For

Что мне нужно сделать, чтобы в моем Apache error_log отображались реальные IP-адреса?

mod-rpaf требует лишь незначительного изменения источника, чтобы он работал с apache 2.4, который я нашел здесь http://vova-zms.blogspot.com/2012/07/install-modrpaf-with-apache-24.html

просто замените remote_ с участием client_ в mod_rpaf-2.0.c

также http://blog.77jp.net/mod_rpaf-install-apache-2-4

визуализируйте здесь простые изменения: https://gist.github.com/teriyakisan/2716030

mod-remoteip на самом деле не так надежен, как mod-rpaf (пока)

Также есть улучшенные копии mod-rpaf на github, например, здесь https://github.com/y-ken/mod_rpaf/ который имеет государственную поддержку https и удаляет часть устаревшей поддержки

Я подумал, что формат журнала ошибок выглядит странно, и я не думал, что есть способ изменить его в 2.2, поэтому я проверил документы для 2.4.

Кажется, сейчас ErrorLogFormat директива, и ваш журнал ошибок находится в формате по умолчанию, который был обновлен и значительно улучшен с момента выхода версии 2.2.

Apache 2.4 теперь включает mod_remoteip который не поддерживает mod_rpaf. Я подозреваю, что mod_rpaf не обновлен для работы с Apache 2.4 и директивой ErrorLogFormat. Самая последняя версия на страница загрузки с 2008 года.

Вы должны использовать mod_remoteip вместо mod_rpaf с Apache 2.4.