Centos7搭建邮件服务器

最近因为要搭建shadowsocks-manager要用到邮件服务,虽然提供了第三方的邮件服务,但是还时想自己动手搭建邮件服务,VPS空着也是空着,随便也可以练一下手,何乐而不为了
好了,废话不多说了

开始搭建前需准备:

  1. 域名一个(需要解析的)
  2. postfix
  3. dovecot
  4. cycus-sasl

域名解析

作者用的是万网的域名解析,用example.top代替实际域名

记录类型 主机记录 主机记录
A @ vps公网Ip
A mail vps公网Ip
MX @ mail.example.top
TXT @ v=spf1 inuyi.cspf.mail.example.top ~all

安装并配置postfix

安装前先检查系统是否已经自带的sendmail服务

1
yum remove sendmail           #//卸载 sendmail 服务

安装postfix

1
yum install postfix

安装完成后配置postfix,按照以下进行配置,去掉前面的注释

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
myhostname=mail.example.top             #这里要换成你自己的邮箱服务器
mydomain=example.top #这里换成你自己的主机服务器
myorigin = $mydomain
inet_interfaces = all #可以接收所有域名的邮件
inet_protocols = ipv4 #全部小写,否则报错
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,mail.$mydomain, www.$mydomain, ftp.$mydomain
local_recipient_maps =
mynetworks =0.0.0.0/0 #设置内网ip
relay_domains = $mydestination
home_mailbox = Maildir/
#以下内容直接粘贴到底部
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_sasl_authenticated,reject_unauth_destination,permit_mynetworks
smtpd_client_restrictions = permit_sasl_authenticated

安装并配置dovecot

执行以下命令,安装dovecot

1
yum install dovecot

配置 dovecot

1
2
3
4
vim /etc/dovecot/dovecot.conf
####修改如下
protocols = imap pop3 lmtp
listen = *

1
2
3
4
vim /etc/dovecot/conf.d/10-auth.conf
####修改如下
disable_plaintext_auth = no
auth_mechanisms = plain
1
2
3
4
vim /etc/dovecot/conf.d/10-mail.conf

####修改如下
mail_location = maildir:~/Maildir
1
2
3
4
vim /etc/dovecot/conf.d/10-ssl.conf

####修改如下,如果启用了ssl,这里就不配置了
ssl = no

安装 cycus-sasl

执行以下命令,安装cycus-sasl

1
yum install cyrus-sasl-*

配置cycus-sasl

1
2
3
vim /etc/sysconfig/saslauthd
####修改如下
MECH=shadow #指定以本地系统用户名认证

这里要必须要提一下,之前google很多教程,都没有这一步,用foxmail测试的时候,始终无法连接上
有没有人知道为什么要配置这个,还请告知下,谢谢

启动服务

建议都加入开启启动

1
2
3
systemctl  start  dovecot
systemctl start postfix
systemctl start saslauthd

停止

1
2
3
systemctl  stop dovecot
systemctl stop postfix
systemctl stop saslauthd

客户端测试

收件创建一个专门用于测试的账号,创建一个名为service的账号

1
useradd service

设置密码,输入2次完成即可

1
passwd service

配置foxmail测试

输入自己的配置信息(因为没有配置证书,不用勾选ssl)

若一切正常,则能顺利的设置成功,后面的发信测试,我就不测试了,有任务问题可以给我留言

来一杯咖啡可好