侧边栏壁纸
博主头像
liveJQ博主等级

沒有乐趣,何来开始

  • 累计撰写 163 篇文章
  • 累计创建 66 个标签
  • 累计收到 2 条评论

用域名搞个自己的邮箱

liveJQ
2020-07-20 / 2 评论 / 0 点赞 / 6,714 阅读 / 1,698 字

前言

unRAID不像群晖那样有自己的MailServer和MailPlus应用,而且它们配置也极为简单方便,仅需再添加一条MX记录(ddns默认已有一条A记录)即可搞定解析问题。BTW,其实只要开放了相应的端口,然后启用你所添加的账户,不添加MX也是可以收发邮件的,只不过很有可能会被当作垃圾邮件而已 🙂

准备资源

  1. 域名:当然了,要想拥有自己的邮箱,那你首先得有自己的域名。这里推荐DNSPod,TXT/MX/CNAME等记录可以任意添加;花生壳的话限制较多,需要额外的开通费用。优点是服务比较即时周到,提交的工单问题会很快得到回应和解答,小白福音(我的第一个域名就是从这里开始滴)。
  2. 服务器:在服务器上搭建好docker环境,如果是群晖或unRAID,那就更省事了。

开始搭建

这里使用 Poste.io 来作为Mail Server,自带客户端,专注于安全(发送的邮件都经过特殊密钥加密)。有Free版和Pro版,Free版功能上基本够我们个人使用了。

docker命令

docker run -d --net="bridge" -p 50030:80 -p 51443:443 -p 25:25 -p 465:465 -p 110:110 -p 143:143 -p 587:587 -p 993:993 -p 995:995 --name "Posteio" -v /opt/posteio/data/:/data -v /etc/localtime:/etc/localtime:ro -h "livejq.xyz" -e "HTTPS=OFF" --restart=always analogic/poste.io

不指定时区默认跟宿主机器相同,使用桥接模式,映射相关容器端口,50030是Web访问端口,设置data存储位置,容器使用宿主机器时间,设置livejq.xyz为邮件服务器的主机名,关掉HTTPS(因为我用NGINX代理做加密,默认是ON开启的)。

本人是在unRAID上面运行此条命令,仅做参考,根据所使用的场景自由增减。

MailServer配置

初始化管理员账户

20200720_start_configuration.jpg

添加你的域名(@后面的名字)

20200720_new_virtural_domain.jpg

这表示你可以定义多个你自己的邮箱,只要都指向这个邮件服务器

为上面的域名生成DKIM密钥

20200720_get_dkim_dns_record.jpg

例如:_s20378._domainkey.livejq.xyz IN TXT "k=rsa;p=MIIBIjANBgk......QAB"表示你需要添加一条TXT记录,记录为_s20378._domainkey,记录值为双引号中的内容。

添加你的邮箱(定义@前面的名字)

20200720_create_email_domain.jpg

注意:这里的用户名和密码是使用这个邮箱时所需要提供的凭证(例如:在第三方客户端上添加你的这个邮箱),刚才的管理员账户只是用来登录Web管理页面的。

配置解析

解析问题除了上面提到的DKIM的TXT记录和默认必须存在的A记录以外,你还得添加MX(Mail Exchanger)记录用来帮忙传递你的邮件。不过一般人也没有多余的服务器,通常由MailServer自己来搞定,所以MX同样指向A记录那个值 😋

Poste.io还需要你设置一个SPF的TXT记录,记录值为spf1 mx〜all,可以简单地告诉接收你邮件的服务器,哪些服务器有被授权传递你的邮件,这能够在一定程度上防止“中间人”的恶意篡改。DMARC也是TXT记录,可不添加,主要作用是汇报一些服务器信息,方便管理员查看。

解析汇总

@	    A	    123.456.789.123
@	    MX	    cloud.livejq.xyz
cloud	    CNAME	    livejq.xyz
@	    TXT	    spf1 mx〜all
_dmarc	    TXT	    v=DMARC1; p=none; rua=mailto:随便一个邮箱地址
_s20378._domainkey	    TXT	    k=rsa;p=MIIBIjANBgk......QAB
//以下可选,方便一些客户端配置
imap	    CNAME	    livejq.xyz
pop	    CNAME	    livejq.xyz
smtp	    CNAME	    livejq.xyz

配置结果

检查端口情况

20200720_check_port_status.jpg

用QQ邮箱客户端发送邮件

20200720_mail_success.jpg

20200720_qq_mail_success.jpg

参考资料

  1. Poste.io文档
0

评论区