最近因为要搭建shadowsocks-manager要用到邮件服务,虽然提供了第三方的邮件服务,但是还时想自己动手搭建邮件服务,VPS空着也是空着,随便也可以练一下手,何乐而不为了
好了,废话不多说了
开始搭建前需准备:
- 域名一个(需要解析的)
- postfix
- dovecot
- cycus-sasl
域名解析
作者用的是万网的域名解析,用example.top代替实际域名
记录类型 | 主机记录 | 主机记录 |
---|---|---|
A | @ | vps公网Ip |
A | vps公网Ip | |
MX | @ | mail.example.top |
TXT | @ | v=spf1 inuyi.cspf.mail.example.top ~all |
安装并配置postfix
安装前先检查系统是否已经自带的sendmail服务
yum remove sendmail #//卸载 sendmail 服务
安装postfix
yum install postfix
安装完成后配置postfix,按照以下进行配置,去掉前面的注释
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
yum install dovecot
配置 dovecot
vim /etc/dovecot/dovecot.conf
####修改如下
protocols = imap pop3 lmtp
listen = *
vim /etc/dovecot/conf.d/10-auth.conf
####修改如下
disable_plaintext_auth = no
auth_mechanisms = plain
vim /etc/dovecot/conf.d/10-mail.conf
####修改如下
mail_location = maildir:~/Maildir
vim /etc/dovecot/conf.d/10-ssl.conf
####修改如下,如果启用了ssl,这里就不配置了
ssl = no
安装 cycus-sasl
执行以下命令,安装cycus-sasl
yum install cyrus-sasl-*
配置cycus-sasl
vim /etc/sysconfig/saslauthd
####修改如下
MECH=shadow #指定以本地系统用户名认证
这里要必须要提一下,之前google很多教程,都没有这一步,用foxmail测试的时候,始终无法连接上
有没有人知道为什么要配置这个,还请告知下,谢谢
启动服务
建议都加入开启启动
systemctl start dovecot
systemctl start postfix
systemctl start saslauthd
停止
systemctl stop dovecot
systemctl stop postfix
systemctl stop saslauthd
客户端测试
收件创建一个专门用于测试的账号,创建一个名为service的账号
useradd service
设置密码,输入2次完成即可
passwd service
配置foxmail测试
输入自己的配置信息(因为没有配置证书,不用勾选ssl)
若一切正常,则能顺利的设置成功,后面的发信测试,我就不测试了,有任务问题可以给我留言