前言
iRedMail 的功能太多,也过于依赖 VPS 的性能,若是 VPS 的性能不太强悍,持续运行的话,内存也就爆表了,那这样就会直接导致邮件的丢失。
所以,今天为大家介绍另外一个开源的邮件服务器系统 —— EwoMail!这是一家由国内公司开发并开源的基于 Linux 的邮件服务系统,集成了众多优秀稳定的组件,支持电脑和手机客户端,非常适合邮箱功能需求少的个人、以及企业进行使用。
据官方所说,非常的稳定,在不改动邮件服务器软件配置的情况下,简单的故障,你只需要重启服务器即可恢复。
视频演示
准备工作
1、VPS 一台,推荐内存 512M 以上,安装 Centos7/8 64 位系统
(视频中使用的:搬瓦工 VPS – 完美支持本期视频 查看:搬瓦工库存监控)
2、最好支持 PTR 记录,也就是反向解析!不明白问 VPS 客服。具体为什么,请看这期视频
3、VPS 能够使用邮箱服务端口:25,143,993,995,587,110,465,具体可以咨询 VPS 客服
4、域名一个,托管到 CF (仅仅为了解析更新快一点,不托管也行)
5、关于域名的选择,若是保证邮局的稳定性,也有关系(详情请看本期视频)
搭建 EwoMail 邮局
一、添加 PTR 记录
前提是你的 VPS 支持反向解析。简单来说,添加了反向解析,就是告诉对方的邮件服务器,你是一个专业的邮件服务器,不是垃圾。(防止丢邮件、邮件进入对方垃圾箱等)
以下截图以 搬瓦工后台 为例:(当然,博客中的 一款便宜 VPS 也是支持反向解析以及邮局端口的)
找到 VPS 后台,找到类似 PTR Records、Reverse DNS 等类似关键词的选项,设置反向解析
今天的演示域名为 mail8.us
我们在 PRT 里面设置 mail.mail8.us
二、设置 VPS
1、关闭 Selinux
找到 VPS 文件 /etc/sysconfig/selinux
找到 SELINUX=enforcing 改为 SELINUX=disabled
2、设置 Swap 分区
以下我们使用一键脚本,来设置 CentOS 的 Swap 分区,若是你的内存超过 2G ,可以不进行设置
curl -O https://raw.githubusercontent.com/stilleshan/code/main/shell/swap.sh && chmod +x swap.sh && ./swap.sh
3、设置 VPS 主机名
找到 VPS 文件:/etc/hostname
修改里面的内容为 mail
找到 VPS 文件:/etc/hosts
添加以下内容:
127.0.0.1 mail.xxx.com smtp.xxx.com imap.xxx.com mail # xxx.com 改为你的邮箱的主域名
至此,VPS 的设置完毕!
三、安装 EwoMail
1、更新
首先更新,并安装相关组件
yum update -y yum install -y wget
2、查找安装命令
打开 这个网站 ,在里面填入你的域名(主域名),获取自动安装代码
复制安装命令到 VPS,进行安装。
3、安装完成请注意
若是你的 VPS 内存非常小,比如 512M,安装完毕以后,请立即执行:systemctl stop clamd@amavisd
,马上关闭杀毒软件,不然 VPS 很大概率无法响应!
安装 EwoMail 以后,会默认开启系统的防火墙,并开启以下的常用端口:
8000/tcp 8010/tcp 7000/tcp 7010/tcp 8020/tcp 993/tcp 995/tcp 587/tcp 465/tcp 143/tcp 110/tcp 25/tcp 22/tcp 80/tcp 443/tcp
若是 SSH 登录端口并非 22 端口,或是其他软件需要放行端口,请参阅以下命令:
systemctl status firewalld #状态 systemctl start firewalld # 启动 systemctl stop firewalld # 关闭 firewall-cmd --zone=public --list-ports # 查看所有打开的端口 firewall-cmd --zone=public --add-port=80/tcp --permanent # 永久开启80端口 firewall-cmd --reload #重新载入防火墙
查看安装的域名和数据库密码(由于后期邮局数据的备份!!!!!)
cat /ewomail/config.ini
4、设置 EwoMail
关闭邮件杀毒软件,可以有效的降低内存的占用,关闭后不影响垃圾邮件的检测。当然你的 VPS 内存大于 4G,可以忽略!
找到 VPS 文件:/etc/amavisd/amavisd.conf
在文件的最尾部加入以下代码:
@bypass_virus_checks_maps = (1);
找到 VPS 文件:/usr/lib/systemd/system/amavisd.service
在文件中找到 [email protected]
,在前面加上 #
符号,注释掉这行代码
修改并保存完毕以后,依次在 VPS 执行以下命令:
systemctl daemon-reload systemctl stop clamd@amavisd systemctl disable clamd@amavisd systemctl restart amavisd
四、域名解析
1、整理 DKIM 信息
SSH 界面,输入以下命令:
amavisd -c /etc/amavisd/amavisd.conf showkeys
复制下图中红色框中内容
打开 这个网站 ,整理 DKIM 信息。
记录整理过的 DKIM 信息,解析的时候会用到!
2、添加解析记录
来到 CF DNS 的解析页面,添加如下解析:(必须关闭黄色小云朵 – 代理状态关闭)
若是明白,直接看也就明白了,若是不明白,推荐对照视频,一步一操作,共计 八项 解析记录
需要的字符串:
v=spf1 ip4:127.0.0.1 -all #SPF 记录值 127.0.0.1 改为你的 VPS IP dkim._domainkey #DKIM 记录名称 _dmarc #DMARC 记录名称 v=DMARC1; p=none; #DMARC 记录值
五、EwoMail 最后的设置
1、检查服务
分别打开 http://mail.xxx.xxx:8010(管理后台账号: admin 密码:ewomail123) 和 http://mail.xxx.xxx:8000 (邮局前台,账号密码在后台创建),看服务是否正常
2、添加邮箱
找到 邮箱管理 – 邮箱添加,按照下图添加你需要的邮箱,没有数量的限制!!!!
必须保证邮箱的格式,例如 [email protected]
(mail8.us 为你的主域名)
3、设置后台参数
找到左边栏的 系统管理,在里面很直观,大家可以根据自己的需求进行更改!
4、登录邮箱
打开 http://mail.xxx.xxx:8000,来到邮箱登录界面,输入你刚才创建的邮箱地址以及密码,进行登录。
提示:邮局前台的管理页面地址 http://mail.xxx.xxx:8000/?admin
默认账号:admin
默认密码:ewomail123
5、垃圾邮件匹配度测试
打开 这个网站,复制文本框中的邮件地址,用刚才的邮箱,给这个邮件地址发送一封邮件,等待 10秒 ,确定对方收到信件以后,点击 “查看你的邮件得分”
满分的邮箱,对于我们来说,已经能够正常的进行使用了。请不要大量的发送垃圾邮件,不然会污染你的域名以及 VPS 的 IP!
多域名的设置
对于一款企业邮局,以及域名邮箱来说,仅仅只支持一个域名是很鸡肋的。
以下是多域名的设置办法,博客步骤简短,长话短说,若是搞不明白,请 观看本期视频
找到 VPS 文件:/etc/amavisd/amavisd.conf
在里面查找 dkim_key(
字段,我这边是 830 行,随着更新,行数或许会变动
复制这一整行内容,在下一行插入一样内容,并修改该行的域名为你需要增加的主域名,需要几个邮件域就增加几个!
对照刚才的主域名的 DNS 解析,对该副域名进行解析,也是增加 八项 解析!不明白,请看本期视频
等待几分钟,待解析生效以后,在 VPS 输入以下两条命令,进行检测:
service amavisd restart amavisd -c /etc/amavisd/amavisd.conf testkeys # 若是成功,每个域名的后面会有 => pass 的提示
打开刚才的邮局后台 http://mail.xxx.xxx:8010,在左侧栏的 邮箱管理 – 邮箱域名 里面,加入你需要添加的域名的主域。
然后来到左侧栏的 邮箱管理 – 邮箱添加,根据刚才添加的方式添加相对于的邮箱。
据官方所说,是没有数量限制的,不管是邮箱,还是邮箱域名!
添加完成,再次测试这个域名,还是满分邮箱!!!
开启 SSL 访问和发送
1、邮局前台开启 SSL 访问
我们注意到访问邮局后台和前台的时候,都是不安全的访问,这是因为我们没有加入 SSL ,也就是域名证书。
接下来,我们开启 SSL 的证书访问。
找到 VPS 文件 /ewomail/nginx/conf/vhost/rainloop.conf
,改个名字,备份它!
找到 VPS 文件 /ewomail/nginx/conf/vhost/rainloop.conf.ssl
,改名为 rainloop.conf
依次执行下面命令(需要更改里面的用户名、KEY以及域名,请看视频)
yum install -y curl socat curl https://get.acme.sh | sh export CF_Key="请复制KEY到这里,不要删除引号" # 设置 CF KEY export CF_Email="[email protected]" # CF 的用户名 ~/.acme.sh/acme.sh --register-account -m [email protected] ~/.acme.sh/acme.sh --issue --dns dns_cf -d *.mail8.us ~/.acme.sh/acme.sh --installcert -d *.mail8.us --key-file /etc/ssl/private/dovecot.pem --fullchain-file /etc/ssl/certs/dovecot.pem service nginx restart systemctl restart postfix dovecot
重启之后,刷新邮局,或是访问 https://mail.xxx.xxx:8000,这样就会开启 SSL 的访问。
2、邮局后台开启 SSL 访问
和刚才一样,找到 /ewomail/nginx/conf/vhost/ewomail-admin-ssl.conf
替换 /ewomail/nginx/conf/vhost/ewomail-admin.conf
文件,特别需要注意里面的端口!不是太明白,请看本期视频
邮箱客户端配置
邮箱的配置尤为简单,下面的图片 来自官方的文档。
域名的证书过期了,这个怎么处理呢😁