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