在postfix中使用其他relay的smtp发送邮件

在我们自己搭建的服务器上,经常需要使用postfix/sendmail发送邮件。

如果只是内部使用,使用默认的配置就可以发送成功。但当需要发送给外网客户的时候,经常会遇到邮件无法被正常接收的情况。这是因为我们自身的配置邮件MX域名并不能被对方识别为可信任。

为了解决这种情况,我们可以让MX地址指向当前主机,也可以采用本文介绍的另一种方法:使用第三方relay发送邮件。

首先,你要有一个支持SMTP的邮箱,比如我的是vip.sina.com的。

然后如下配置

sudo vim /etc/postfix/main.cf  
# 添加或修改如下内容
# relay
relayhost = [smtp.vip.sina.com]:25  
smtp_sasl_auth_enable = yes  
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd  
smtp_sasl_security_options = noanonymous

然后,再配置你在这个支持smtp邮箱的用户名和密码

sudo vim /etc/postfix/sasl_passwd  
# 添加
[smtp.vip.sina.com]:25   user@vip.sina.com:pass

接着,更新下配置

sudo postmap /etc/postfix/sasl_passwd  
然后重启服务器

然后再发送邮件,就可以了!

特别注意:发件人邮箱必须和你在配置中指定的保持一致,不然会被拒绝!

 

 

Leave a Reply

Your email address will not be published.