Re: Почтовый прокси сервер (конфиг)

Maxim Dounin mdounin на mdounin.ru
Чт Окт 20 13:49:07 UTC 2011


Hello!

On Thu, Oct 20, 2011 at 08:57:35AM -0400, Craken wrote:

> Здравствуйте! 
> По причине отсутствия документации по
> почтовому модулю, прошу помощи в
> создании конфига! 
> Задача:  требуется прослушивать smtp порт
> на ИПе 1.1.1.1 и проксировать все эти
> соединения на ИП 2.2.2.2!
> Задача не сложная.... нашел вот что:
> 
> mail {
>             server {
>                       listen 1.1.1.1:25;
>                       protocol smtp;
>                   
>                      proxy_pass 2.2.2.2:25;
>             }
> }
> 
> но говорит что нету директивы proxy_pass! По
> логике вещей предполагаю что локейшнов
> тут нету ))))) 

Чтобы "просто слушать порт" nginx не нужен, простой NAT будет 
эффективнее.  Наиболее близкое из того, что можно сделать на 
nginx'е, будет выглядеть как-то так:

http {
    server {
        listen 127.0.0.1:8080;
        location = /mailauth {
            add_header Auth-Status OK;
            add_header Auth-Server 2.2.2.2;
            add_header Auth-Port 25;
            return 204;
        }
    }
}

mail {
    server {
        listen 1.1.1.1:25;
        protocol smtp;
        smtp_auth none;
        auth_http http://127.0.0.1:8080/mailauth;
        xclient off;
    }
}

Но это предполагает, что приходящие клиенты не пытаются 
аутентифицироваться (а если вдруг пытаются, то на бекенд их 
аутентификация не попадёт).

Более или менее документацию можно почитать тут:

http://wiki.nginx.org/MailCoreModule
http://citrin.ru/nginx:ngx_mail_core_module

Maxim Dounin



Подробная информация о списке рассылки nginx-ru