Почтовый прокси Nginx скрывает IP-адрес клиента

Я успешно настроил почтовый прокси nginx imap / pop3 с auth_http, который месяцами работал нормально. Недавно появился запрос на показ IP-адреса клиента в mail.log при входе в imap.

Поскольку Nginx взаимодействует с Dovecot, IP-адрес в журнале принадлежит серверу Nginx (который в данном случае 127.0.0.1 - поскольку они находятся на одном сервере

Пока я не мог найти решение или обходной путь для этого. Судя по всему, в почтовом блоке nginx невозможно даже ведение журнала.

Ближайшим хитом была поддержка HAProxy в Dovecot ( https://wiki2.dovecot.org/HAProxy ), но я не уверен, что есть похожая в Nginx.

Любая помощь приветствуется.

Спасибо

1
задан 12 September 2017 в 17:52
1 ответ

Обходной путь

Не находя подходящего решения, я скорее создал новый лог-файл в скрипте прокси, который обеспечил приемлемое решение запроса.

Вот выдержка:

$fp = fopen('/var/log/mail_logins.log', 'a');
$now = "[" . (new \DateTime())->format('Y-m-d H:i:s') . "]";
fwrite($fp, $now . " HTTP_AUTH_PROTOCOL: " . $_SERVER["HTTP_AUTH_PROTOCOL"] . ", HTTP_AUTH_USER: " . $_SERVER["HTTP_AUTH_USER"] . ", HTTP_CLIENT_IP: " . $_SERVER["HTTP_CLIENT_IP"]. "\n");
fclose($fp);

Это может кому-нибудь помочь.

1
ответ дан 3 December 2019 в 23:26

Теги

Похожие вопросы