内网中有服务器需要通过nginx服务器作为代理,连接外网的smtp服务器发送邮件。查看nginx作为邮件正向和反向代理,均配置过于繁杂。想起来,外网的smtp服务器是采用ssl协议,本质上属于tcp流。因此,在nginx上配置tcp端口转发就可以解决这个问题了。
在nginx的nginx.conf上添加以下配置。
stream {
server {
listen 465;
proxy_pass smtp.xxxx.com:465;
}
}
这样邮件服务器直接配置为${nginx_server}:465,就可以发送邮件了。