Я успешно настроил почтовый прокси 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.
Любая помощь приветствуется.
Спасибо
Обходной путь
Не найдя подходящего решения, я скорее создал новый файл журнала в прокси-скрипте, который предоставил приемлемое решение для запроса.
Вот отрывок:
$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);
Это может кому-то помочь.