设置Postfix通过另一个邮件服务器中继电子邮件
版本1.0
作者:Falko Timme
此简短指南显示如何设置Postfix以通过另一个邮件服务器中继电子邮件。 如果您在本地网络中运行Postfix邮件服务器并具有动态IP地址,则此功能非常有用,因为大多数动态IP地址今天被列入黑名单。 通过在数据中心(例如您的ISP的邮件服务器)上的静态IP地址上托管的另一个邮件服务器中继您的电子邮件,可以防止您的电子邮件被分类为垃圾邮件。
实现这一目标有很多方法,但这是我所采取的方式。 我不会保证这将为您工作!
1初步说明
要在Postfix邮件服务器上配置中继,您需要在另一个邮件服务器上使用有效的电子邮件帐户(使用用户名和密码)(前提是该邮件服务器使用SMTP-AUTH(应该执行此操作))。 这个其他邮件服务器应该托管在一些数据中心的静态IP地址(例如您的ISP的邮件服务器)中。
在本指南中,我使用smtp.example.com
作为远程邮件服务器,我有一个有效的电子邮件帐户,用户名为someuser
和密码youcl
。
我假设你已经安装了Postfix,因为我不会在这里安装Postfix的详细信息。
2配置Postfix中继
要配置我们的Postfix服务器通过smtp.example.com
中继电子邮件,我们运行
postconf -e 'relayhost = smtp.example.com'
postconf -e 'smtp_sasl_auth_enable = yes'
postconf -e 'smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd'
postconf -e 'smtp_sasl_security_options ='
smtp.example.com
的用户名( someuser
)和密码( youcl
)必须存储在/ etc / postfix / sasl_passwd中
,因此我们这样做:
echo "smtp.example.com someuser:youcl" > /etc/postfix/sasl_passwd
/ etc / postfix / sasl_passwd
必须由root拥有,没有人应该具有对该文件的读取权限,所以我们这样做:
chown root:root /etc/postfix/sasl_passwd
chmod 600 /etc/postfix/sasl_passwd
现在我们必须将/ etc / postfix / sasl_passwd
转换成Postfix可以读取的格式:
postmap /etc/postfix/sasl_passwd
这将创建文件/etc/postfix/sasl_passwd.db
。
所有要做的是重新启动Postfix:
/etc/init.d/postfix restart
而已。 您现在可以通过邮件服务器发送电子邮件并查看邮件日志来进行测试。 您应该会看到所有的电子邮件现在都传递给smtp.example.com
(除本地收件人的邮件外)。
3链接
- Postfix: http : //www.postfix.org