搜索
❏ 站外平台:

权威指南:构建个人私有云,拿回你的数据隐私的控制权!

作者: Roudy Jhausse 译者: LCTT zpl1025

| 2015-03-25 21:48   评论: 37 收藏: 12 分享: 59    

外发(中继)邮件

但是我们不能把邮件给它发送出去,除非我们自己从服务器发送。现在我们将让postfix为我们转发邮件,但是这个只有成功登录才可以,这是为了保证邮件是由服务器上的某个有效帐号发出来的。要做到这个,我们要打开一个特殊的,全程SSL连接的,SASL鉴权的邮件提交服务。在文件/etc/postfix/master.cf里设置下面的参数:

submission inet n       -       -       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o smtpd_sasl_type=dovecot
  -o smtpd_sasl_path=private/auth
  -o smtpd_sasl_security_options=noanonymous
  -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject_non_fqdn_recipient,reject_unauth_destination

然后重启postfix服务:

service postfix reload

现在,让我们试试从一台不同的机器连接这个服务,确定一下postfix现在能够正常中继我们自己的而不是其他任何人的邮件:

openssl s_client -connect cloud.jhausse.net:587 -starttls smtp
EHLO cloud.jhausse.net

注意一下服务器建议的'250-AUTH PLAIN'功能,在从端口25连接的时候不会出现。

MAIL FROM:asdf@jkl.net
rcpt to:bob@gmail.com
554 5.7.1 <bob@gmail.com>: Relay access denied
QUIT

这个没问题,postfix在不认识我们的时候是不会中继邮件的。所以,首先让我们先鉴定一下自己的身份。要这样做,我们首先需要生成一个鉴权字符串:

echo -ne '\000roudy@jhausse.net\000mypassword'|base64

然后让我们尝试再次通过服务器发送邮件:

openssl s_client -connect cloud.jhausse.net:587 -starttls smtp
EHLO cloud.jhausse.net
AUTH PLAIN DGplYW5AMTk4NGNsb3VQLm5ldAA4bmFmNGNvNG5jOA==
MAIL FROM:asdf@jkl.net
rcpt to:bob@gmail.com

现在postfix应该能正常接收。最后完成这个测试,来检查一下我们的虚拟别名能正常工作,给postmaster@jhausse.net发送一封邮件然后确认一下它会被送到roudy@jhausse.net

telnet cloud.jhausse.net 25
EHLO cloud.jhausse.net
MAIL FROM:youremail@domain.com
rcpt to:postmaster@jhausse.net
data
Subject: Virtual alias test

Dear postmaster,
Long time no hear! I hope your MX is working smoothly and securely.
Yours sincerely, Roudy
.
QUIT

让我们检查一下邮件是否被正常送到正确的收件箱了:

openssl s_client -crlf -connect cloud.jhausse.net:993
1 login roudy@jhausse.net "mypassword"
2 LIST "" "*"
3 SELECT INBOX
* 2 EXISTS
* 2 RECENT
4 LOGOUT

到这里,我们已经拥有一个能正常工作的邮箱服务器了,能收发邮件。我们可以配置自己的设备来使用它。

PS:不要忘记再次试试通过端口25往自己架设的服务器上的帐号发送邮件,来验证你已经没有被postgrey阻挡了。

LCTT 译者
zpl1025 🌟🌟🌟🌟
共计翻译: 61.0 篇 | 共计贡献: 1659
贡献时间:2014-02-12 -> 2018-08-28
访问我的 LCTT 主页 | 在 GitHub 上关注我


返回顶部

分享到微信

打开微信,点击顶部的“╋”,
使用“扫一扫”将网页分享至微信。