使用云服务器搭建自己的邮件服务

 随着移动互联网的普及,邮件服务的使用场景越来越少。但有一个场景需要邮箱,那就是注册账号。下来我们介绍一下如何搭建自己的邮件服务器。

准备工作

 邮件服务器之间采用 SMTP 协议进行通信,云服务器想要接收邮件,需要打开25这个端口,并允许访问25号端口。

 邮件服务使用特殊的 DNS,需要进行配置。这里涉及到了两次映射,为了方便叙述,假设我的邮箱名字是:[email protected]。第一次映射通过添加MX记录类型,将邮箱@后面的主机映射到域名上,如下图所示,添加一个 MX 记录。

 第二次映射将上面的域名映射到我们云主机的 IP

安装邮件服务

 本文使用 postfix 作为邮件服务器,因为它的特殊设定,需要先检查云主机的 hostname ,将 hostname 设置为邮件服务器的主机名。

1
sudo hostnamectl set-hostname example.com

 安装 postfix ,执行下面的命令,弹窗会让你选择 configuration 和你的 mail name

1
2
sudo apt-get update
sudo apt-get install postfix -y

 安装完成之后,检查一下服务是否启动,如果没有启动,可以执行postfix start

1
sudo ss -lnpt | grep master

 邮件服务器搭建完毕,学习过计算机网络的读者应该知道,smtp 只是邮件服务器之间的传输协议,读取邮件还需要 pop3 或者 imap 协议。如果想读取邮件,还需要安装其他软件。需要说明的是:如果你的 Ubuntuuser1 的用户,那么邮件服务器就有[email protected]的账户。

1
sudo apt-get install mailutils

接收邮件测试

 接下来我们用 qq 邮箱给刚搭好的邮件服务器发送测试邮件,当在云服务器上执行 mail 时,提示收到了新邮件,选择1就显示邮件的内容。

 细心的小伙伴可能已经发现,邮件的内容是 base64 编码后的,无法直接读取。这时可以执行decode,选择消息,进行解码。

postfix 还能发送邮件,但是前提是云服务器25号端口出的流量是开启的。可以在云服务器上自己测试,看端口25是不是通的。对于 postfix 发送邮件感兴趣的可以自行搜索资料哦~

1
telnet  mx1.qq.com 25
使用 Hugo 构建
主题 StackJimmy 设计