Coding, Web, Hydrology and more.

搭建自己的邮件服务器

0x01 前述

博客建立在腾讯云上,原来用的是腾讯企业邮箱提供的SMTP服务器来收发邮件,起初认为都是腾讯产品,应该不至于出太大问题,也方便管理,另外刚开始用的性能还算可以,就凑合着用了。但是这几天回来一试,发信往往需要3s以上的时间,性能低下到无法忍受,甚至出现了掉信的情况。遂弃用腾讯企业邮箱(说到底还是因为用的免费版,没有充钱),利用Postfix+Dovecot搭建自己的邮件服务器。

0x02 环境

腾讯云 CentOS 7.2

0x03 安装和配置Postfix

首先先删除sendmail:

随后安装Postfix和Cyrus:

修改MTA(默认邮件传输代理):

选择sendmail.postfix对应的选项,回车。

接着检查一下MTA是否配置成功:

出现mta – status is manual字样即说明配置成功。

接下来配置Postfix,

对/etc/postfix/main.cf做如下配置:

修改好了之后使用service postfix start开启postfix,使用chkconfig postfix on将postfix开机启动。

0x04 安装Dovecot

随后进行Dovecot的配置工作,

0x05 域名解析

添加一个子域名mail,A记录解析到服务器IP。

再添加一个MX记录,主机记录为空,记录值为上面解析的二级域名mail.edlinus.cn,优先级10。

0x06 添加用户

0x07 配置SSL

为了客户端与服务器之间通信的安全,可以说配置SSL是配置邮件服务器的必经之路。

在smtp inet n – n – – smtpd行下,加入如下一行打开465端口:

修改ssl证书和密钥的路径以及ssl chiper

0x08 后续处理

上述步骤做完,发现在腾讯云上依旧无法正常收发信,查看mailog之后发现Connection time out,原因在于腾讯云限制了25端口的TCP Traffic,虽说这样有些不太妥当,不过也可以理解,毕竟垃圾邮件滥用25端口后造成IP置信度降低导致以后发信全都进垃圾箱了就为时已晚了。

搜索了一下网络上对于主机提供商封锁25端口的解决方案,发现大部分是通过SMTPS来实现Client-Server之间的通信,也就是将25端口的入流量转到465端口上,但是由于邮局与邮局之间通信规定是25端口,所以25端口出入流量这个问题很难解决,也就是说无法收发信的问题只有通过腾讯云控制台解锁25端口以后才能得以解决。

About the author

EDLinus

[stay(d) for d in ('determined','diligent','devoted')]

 
By EDLinus
Coding, Web, Hydrology and more.

Meta