很多时候你不会有自建独立email server的机会,那么需要通过gmail或者qq企业邮箱的账号来往外发信。
场景如下:
那么我们需要在IDC内网建一个Postfix邮件转发服务器,所有内网的服务器都通过这台服务器来发送邮件,不需要认证。
Postfix基本已经缺省安装了。
首先编辑/etc/postfix/main.cf,将本地服务器的网段加入,这样同网段的服务器发邮件就不需要再认证了:
...
mynetworks = 172.16.0.0/16, 127.0.0.1/32
...
检查一下/etc/ssl/certs/ca-certificates.crt是否存在。 如果不存在,就去更新一下:
curl http://curl.haxx.se/ca/cacert.pem -o /etc/pki/tls/certs/ca-bundle.crt
如果是Gmail,在/etc/postfix/main.cf最后追加:
#以下是Gmail的配法
relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
smtp_sasl_security_options =
smtp_use_tls = yes
smtp_tls_CAfile = /etc/pki/tls/certs/ca-bundle.crt
如果是QQ企业邮箱,在/etc/postfix/main.cf最后追加:
#以下是qq企业邮箱的配法
relayhost = [smtp.exmail.qq.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_use_tls = yes
smtp_tls_CAfile = /etc/pki/tls/certs/ca-bundle.crt
编辑/etc/postfix/sasl_passwd
vi /etc/postfix/sasl_passwd
[smtp.exmail.qq.com]:25 ttt@bbb.com:1111111
或者
[smtp.gmail.com]:587 username:password
然后执行
postmap /etc/postfix/sasl_passwd
最后reload Postfix
service postfix reload
这样一个转发邮局就配好了,采用tls加密,安全且不会碰到黑名单问题。