nginx 메일 모듈은 항상 PLAIN 메소드 AUTH 명령을 백엔드에 전달합니다.

nginx 메일 모듈은 항상 PLAIN 메소드 AUTH 명령을 백엔드에 전달합니다.

메일 모듈을 사용하여 nginx를 구현하고 Hmail 서버 백엔드에 대한 프록시를 구현했습니다. 인증 방법 PLAIN을 어떻게 비활성화하더라도 깨달았습니다. nginx는 그것을 무시하고 있습니다.

대신 smtp_auth 로그인을 강제로 사용하려면 어떻게 해야 합니까? Hmail 서버는 AUTH_PLAIN 메커니즘을 지원하지 않습니다.


auth_http  localhost:8080/auth.pl;

 server {
        # not working as always AUTH_PLAIN
        listen    25;
        protocol  smtp;
        smtp_auth login;
#       starttls on;
        timeout 5s;
        proxy on;
        xclient off;
        proxy_smtp_auth on;
    }

답변1

사실 저는 다른 방법으로 문제를 해결했습니다. NGIX와 MAILCOW의 모든 기능을 사용하고 싶어서 이 방법을 사용했습니다.

NGINX.conf

스트림 { include /etc/nginx/streams/*; }

/etc/nginx/streams/mailcow_proxy.conf

server {
listen [::]:25 ipv6only=off;
listen [::]:143 ipv6only=off;
listen [::]:587 ipv6only=off;
listen [::]:993 ipv6only=off;
proxy_pass 10.11.12.13:$server_port;
proxy_protocol on;
}

결론

인증을 수행하기 위해 nginx를 방해하는 대신, 필요한 대로 그리고 일반적으로 직접 연결되는 경우와 마찬가지로 메일 서버에 직접 전달하기만 하면 됩니다.

nginx.conf에 직접 삽입하는 방법을 사용할 수도 있지만 저는 이 방법을 좋아하지 않습니다.

관련 정보