
我已經實作了一個帶有郵件模組的nginx,以及後端Hmail伺服器的代理程式。我意識到無論我如何禁用 auth-methods 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
流{包括/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 中,但我不喜歡這種方式。