nginx SMTP代理


使用nginx做郵件代理,需要在nginx.conf添加一下配置:

#Mail Proxy  
mail {  
         auth_http  IP:port/xxx;  
         pop3_capabilities  "TOP"  "USER";  
         #smtp_capabilities  "no";  
         smtp_capabilities "SIZE 10485760" ENHANCEDSTATUSCODES 8BITMIME DSN;  
  
         #POP3 Auth  
         server {  
            listen     110;  
            protocol   pop3;  
            proxy      on;  
            pop3_auth plain;  
         }  
  
         #SMTP Auth  
         server {  
              listen 25;  
              protocol smtp;  
              proxy on;  
              #xclient off;  
              smtp_auth login plain;  
         }  
}  

auth_http 是驗證郵箱賬號和密碼是否正確,官網采用的是PHP方式,如果想不驗證,直接添加一下server配置即可:

 server {
        listen       port;
        server_name  ip;
        
        location = /auth { add_header Auth-Status OK; add_header Auth-Server 221.176.9.170; # 郵箱的IP add_header Auth-Port 25; # 郵箱的端口 return 204; }
    }

 

對於smtp 郵箱代理,如果郵件服務器需要驗證用戶名和密碼,則需要在此步完成,如果auth_http 返回驗證通過,實際沒有驗證,則會導致因為郵件服務器無法驗證用戶而發不了郵件,可以通過在郵件服務器設置白名單解決。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM