nginx メール モジュールは常に PLAIN メソッド AUTH コマンドをバックエンドに渡します

nginx メール モジュールは常に PLAIN メソッド AUTH コマンドをバックエンドに渡します

メール モジュールとバックエンドの Hmail サーバーへのプロキシを備えた nginx を実装しました。認証メソッド 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のすべての機能を使用したいので、別の方法で解決しました。

設定ファイル

ストリーム { /etc/nginx/streams/* を含めます; }

nginx_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 に直接挿入することもできますが、私はこの方法は好きではありません。

関連情報