MailBox 一键极速部署域名邮箱系统 - 完美支持 IMAP SMTP POP3(支持TLSv1.3)
简介
开源组件
安装要求
MailBox邮件系统通过脚本方式在线部署,请确保你的服务器允许访问网络。
个人邮箱部署国外 VPS 推荐,支持rDNS:
CloudCone:2核 1G(适合体验型,部署完成后建议关闭 ClamAV 病毒扫描)
CloudCone:2核 2G(完全满足配置要求)
系统:全新的 CentOS 7
、Red Hat 7
架构:aarch64
、x86_64
ARM 服务器部署已经过华为鲲鹏服务器测试通过
端口:25
、8000
、8010
、143
、993
、995
、587
、110
、465
对于腾讯云、阿里云服务器,需在服务器后台单独申请开放25
端口方可正常使用邮件服务。
腾讯云解封25端口:控制台 → 安全管控(头像处) → 25 端口解封
阿里云解封25端口:参考链接 https://developer.aliyun.com/article/701303
服务器性能要求
最低配置:1核 1G RAM
推荐配置:2核 4G RAM 或更高
开始安装
操作顺序:域名解析 → 安装 MailBox → DKIM 设置
请按照以下表格添加域名解析记录,127.0.0.1
替换成你的服务器IP地址,example.com
替换成你的域名地址。
主机记录 | 记录类型 | 记录值 | MX |
A | 127.0.0.1 | ||
@ | MX | mail.example.com | 5 |
@ | TXT | v=spf1 mx -all | |
imap | CNAME | mail.example.com | |
smtp | CNAME | mail.example.com | |
pop | CNAME | mail.example.com | |
_dmarc | TXT | v=DMARC1; p=none |
通过终端使用 root 用户执行安装指令,安装程序提示键入 域名地址 即可快速完成安装!
bash -c "$(curl -sS https://www.cooluc.com/mailbox-install.sh)"


使用命令获取 dkim key
amavisd -c /etc/amavisd/amavisd.conf showkeys

拷贝 dkim key 内容后,前往 DKIM 整理站点生成标准的 DKIM TXT 解析记录值

根据整理后输出信息,前往域名解析处添加 DKIM 域名记录值即可!

到此,MailBox 邮箱系统已经完成安装与配置!
使用方法
根据安装完成提示信息,进入后台管理页面
登录地址:http://mail.example.com:8010/
默认账户:admin
默认密码:www.cooluc.com
邮箱管理 → 添加邮箱
添加邮箱地址 admin@example.com
,设置密码后 保存,即可完成添加。
MailBox 配备 Rainloop 开源网页邮件客户端,进入
http://mail.example.com:8000/
登录即可使用。登录账号为管理后台所添加的邮箱账户。
邮箱账户管理后台 (EwoMail-Admin) & 网页邮箱后台 (Rainloop) 均为固定默认账号密码,请务必登录后台进行密码修改
邮箱账户管理后台地址:http://mail.example.com:8010/
网页邮箱后台地址:http://mail.example.com:8000/?admin
默认账号:admin
默认密码:www.cooluc.com
请务必修改以上两个后台密码!
MailBox 安装程序不设置MySQL root密码,默认为空密码,需自行进行初始 root 密码设置
使用终端执行命令行设置 MySQL root密码
mysqladmin -u root -p password 123456
123456
换成你要设置的密码,过程中会提示 Enter password:
,由于root密码为空,直接回车即可完成设置。
打开win10 邮件,添加账户 - 高级设置

Internet 电子邮件
填写邮件用户名、密码
传入电子邮件服务器:mail.example.com
账户类型:IMAP4
传出(SMTP)电子邮件服务器:smtp.example.com
完成登录
依次打开 设置 - 邮件 - 账户 - 添加账户 - 选择其它

添加邮件账户
填写账户信息 - 下一步
填写主机名、用户名、密码
收件服务器
主机名:mail.example.com
发件服务器
主机名:smtp.example.com
信息填写完毕后,点击下一步进行验证,验证通过即可使用。
维护相关
如果你的邮箱客户端支持 SSL 加密,可以参考下表,使用正确的信息设置你的邮箱客户端。
接收邮件服务器 | 服务器地址 | 端口 | SSL 加密 |
---|---|---|---|
IMAP | imap.example.com | 993 | SSL/TLS |
IMAP | imap.example.com | 143 | STARTTLS |
POP3 | pop.example.com | 110 | STARTTLS |
发送邮件服务器 | 服务器地址 | 端口 | SSL 加密 |
---|---|---|---|
SMTP | smtp.example.com | 465 | SSL/TLS |
SMTP | smtp.example.com | 587 | STARTTLS |
SMTP | mail.example.com | 25 | 无 |

默认情况下,系统会定期进行病毒数据库检查更新,但由于国内网络原因,失败率非常高。
使用终端执行病毒数据库更新命令
freshclam
数据中心为境外节点,如果服务器出现无法下载更新,可以前往 ClamAV 官网下载最新数据库手动上传更新。
前往病毒数据库下载中心,点击 Virus Database 选项,下载 main.cvd | daily.cvd | bytecode.cvd 这三个数据包文件。
下载完成后,使用 SFTP 等工具覆盖
上传到服务器 /var/lib/clamav/
文件夹上,执行以下命令行生效数据库
chown -R clamupdate:clamupdate /var/lib/clamav
systemctl restart amavisd clamd@amavisd
命令执行完成后,数据库即更新到最新,再次执行 freshclam
手动更新命令会提示当前数据库已经是最新!
备份目录:/mailbox/mail
,建议使用 tar 压缩备份确保数据的完整性。
导出数据库:通过 /mailbox/default_info.txt
文件查看 MySQL 数据库密码,使用以下命令导出数据表
mysqldump -umailbox -p密码 mailbox > mailbox.sql
邮件目录恢复:把备份的 mail
文件夹覆盖回 /mailbox/mail
目录上,使用以下命令赋予权限
chown -R vmail.vmail /mailbox/mail
数据库恢复:使用命令导入数据库备份文件
mysql -umailbox -p密码 mailbox < mailbox.sql # mailbox.sql 为之前备份的数据库文件,如果文件不在当前目录,请指定文件绝对路径
如果是重新安装后恢复数据,当前 MySQL 数据库密码同样通过 /mailbox/default_info.txt
文件获得。
目录与数据库恢复完成后,重启服务生效
systemctl restart dovecot postfix
- 当修改程序配置时,使用以下命令重启对应的服务 *
# Nginx
systemctl restart nginx@mailbox
# PHP
systemctl restart php-fpm@mailbox
# MySQL
systemctl restart mariadb.service
# Dovecot
systemctl restart dovecot
# Postfix
systemctl restart postfix
systemctl 参数说明
systemctl stop
-停止服务systemctl restart
-重启服务systemctl reload
-重载服务
编辑配置文件:/etc/amavisd/amavisd.conf
- 大约在
826
行,按以下方式添加新增域名并保存。
# Add dkim_key here.
dkim_key("example1.com", "dkim", "/mailbox/dkim/mail.pem");
dkim_key("example2.com", "dkim", "/mailbox/dkim/mail.pem");
重启 amavisd 生效
systemctl restart amavisd
添加 DKIM 记录值
使用命令获取 dkim key
amavisd -c /etc/amavisd/amavisd.conf showkeys

拷贝 dkim key 内容后,前往 DKIM 整理站点生成标准的 DKIM TXT 解析记录值
发送
或 接收
邮件。
MailBox SSL/TLS 证书位于:/mailbox/ssl/
目录
- postfix:
/mailbox/ssl/postfix
,证书签署域名应为smtp.example.com
或*.example.com
- dovecot:
/mailbox/ssl/dovecot
,证书签署域名应为imap.example.com
或*.example.com
DH密钥交换(请勿修改此文件):/mailbox/ssl/dh2048/dhparam.pem
更换证书后,通过以下命令重启服务使其生效
systemctl restart postfix dovecot
域名证书申请
- 配置 https 访问需要准备一个授信的 SSL 域名证书,可以到 免费申请或使用已有证书。
- 签署的域名:
mail.example.com
- 使用 SFTP 工具在
/mailbox/ssl/
目录上创建nginx
文件夹,把域名证书上传到/mailbox/ssl/nginx/
目录,私钥命名为mail.key
公钥命名为mail.crt
。
修改nginx配置文件
- 使用 SFTP 工具修改
/mailbox/nginx/conf/conf.d/rainloop.conf
文件内容为以下内容(建议修改前先备份,避免修改错误导致无法打开网页邮件)
server {
listen 80;
listen 443 ssl http2;
server_name mail.example.com; # mail 二级域名地址
root /mailbox/www/rainloop/;
index index.html index.htm index.php;
ssl_certificate /mailbox/ssl/nginx/mail.crt; # 域名证书绝对路径
ssl_certificate_key /mailbox/ssl/nginx/mail.key; # 证书私钥绝对路径
ssl_prefer_server_ciphers on;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_dhparam /mailbox/ssl/dh2048/dhparam.pem;
ssl_session_cache builtin:1000 shared:SSL:10m;
add_header Strict-Transport-Security "max-age=63072000" always;
add_header X-Frame-Options SAMEORIGIN;
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
# 自动跳转 https
if ($scheme = http) {
return 301 https://$host$request_uri;
}
location ^~ /data {
deny all;
}
location ~ .*\.php(\/.*)*$ {
include fastcgi.conf;
fastcgi_pass unix:/mailbox/php/var/run/mailbox-fpm.sock;
}
}
修改后台内部跳转地址(用于邮箱管理页面跳转,该修改非必要)
- 编辑文件:
/mailbox/www/admin/core/config.php
- 把
'webmail_url' => 'http://mail.example.com:8000',
修改为'webmail_url' => 'https://mail.example.com',
保存即可。
重启 nginx 服务器生效 https
systemctl restart nginx@mailbox
设置 WebMail SSL/TLS 连接
- 编辑 hosts 文件:
/etc/hosts
,删除127.0.0.1 mail.example.com smtp.example.com imap.example.com
这一行并保存 - 登录 RainLoop 后台面板:
http://mail.example.com/?admin
- 点击
域名
-点击自己的域名
,IMAP和SMTP 加密选择为SSL/TLS
,点击测试,IMAP和SMTP 字体变为绿色则成功,点击更新按钮完成操作!
上述 mail.example.com 均换成自己的域名
终端执行以下命令
sed -i 's/Wants=clamd/\#Wants=clamd/g' /usr/lib/systemd/system/amavisd.service
systemctl daemon-reload
systemctl stop clamd@amavisd
systemctl disable clamd@amavisd
systemctl restart amavisd
rDNS 为可选设置项,未设置 rDNS 国内全邮箱平台依然可正常进入收件箱。rDNS 需要在 ISP(服务提供商)或 运营商进行设置,腾讯云/阿里云 服务器可通过工单形式申请。
设置 rDNS,请把 IP地址
反向解析到 mail.example.com
(example.com为自己的域名)上即可!
bash -c "$(curl -sS https://www.cooluc.com/mailbox-install.sh)"
选择 2
进行卸载。
界面截图















邮箱检测





SSL/TLS安全评估:https://myssl.com/
垃圾邮件评测:https://www.mail-tester.com/
版权声明:本文为原创文章,版权归 Cooluc's Blog 所有,转载请注明出处!
本文链接:https://www.cooluc.com/archives/576.html
友情提示:如果博客出现404或链接失效,请留言或者联系博主修复!
101 条评论
提示这个,有问题吗?
curl: (51) Unable to communicate securely with peer: requested domain name does not match the server's certificate.
tar (child): mailbox.tar.xz: Cannot open: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
mailbox.tar.gz 安装文件使用 jsDelivr cdn,前些天开始 jsDelivr 撤出国内CDN ,对国内服务器下载可能造成了困难,你可以重试一下,如果不行再给我反馈,我把文件迁移回国内。
最近咋没上QQ呢?几天不见人影了。。。。。。
??你是谁
你不是群里那个夏梦吗?没见你上线了。。。。。。
不想使用一键安装,如何手动一步步安装
纯手工安装,过程非常繁杂,我没有很好的文章建议。你可以看官方的docs 来配置,也可以搜搜有没有其他类似的手动安装的文章教程
当然你也可以看我的脚本具体是做了什么,脚本内容是明文的,https://www.cooluc.com/mailbox-install.sh
老哥,开源的吗?
docker 镜像有吗?
使用的东西全部是开源的,详见“开源组件列表”,nginx & php 和 核心的 postfix & dovecot 是使用最近的正式版源码编译的,也有提供源码包:https://repo.cooluc.com/mailbox/7/SRPMS/
目前没有做docker 版本
了解,,感谢。
配置好了,发不出去邮件 也收不到!
检查“安装要求” 所需的端口是否放行,如果不知道建议找端口扫描网站逐一检查所需端口
提示这个怎么解决,
安装终止:MySQL 3306 端口被占用,请使用全新系统安装
字面意思,邮箱系统是追求稳定使用的东西,不建议跟其他东西共存使用。这个提示是你服务器已经安装过其他环境、面板或站点之类。
如果你是全新系统安装,也有可能是你安装邮箱时失败或中断过,如果是这种情况卸载一次重新安装可以解决
666,帮我解决大问题了,点个赞
想问问如何修改添加邮箱时候 "错误提示:邮箱地址@前面的字符不能少于3个字数" 少于3字数的限制
编辑文件:/mailbox/www/admin/api/User.class.php
第82行内容:if(strlen($name)<2){ 修改数字2为1 if(strlen($name)<1){
想问一下添加多个域名解析要怎么设置?还有添加了域名之后的ssl证书要如何设置
ssl 证书仅用于邮件客户端的通讯,添加多个域名无需添加额外的ssl证书,客户端如果通过ssl通讯,imap & smtp 地址设置为绑定ssl证书的域名地址就可以。
如:服务器上添加证书的域名为 test.com ,那么所有的添加进来的新增域名都可以在客户端使用 imap.test.com 和 smtp.test.com ,登录的账户是 新增域名的就可以了。
网页上的邮箱域名添加了之后 DKIM 要如何设置?
对于多域名如何设置多个DKIM ,目前还没有真实了解过,不过即使没有设置DKIM,邮箱依然是可以正常使用的。
在官方帮助文档里面找到这个解决方法了
你好,可以把官方帮助文档的连接发我看一下吗?我也想设置第一个邮箱域名
文章已更新,具体查看 “维护相关 - 新增域名 DKIM 设置”
红皮鞋,试试
阿里不给解封25端口!!!
看看我是win几
WEB服务启动失败怎么回事啊?
博主,求个teambition那个教程,做下载找点看着挺好的
在配置WebMail SSL/TLS报SSL isn't supported: (tcp, udp, unix, udg) ,可证书都是正常替换了的
取消本地通讯
编辑 /etc/hosts 文件,删除下面一行内容
127.0.0.1 domain.com mail.domain.com imap.domain.com smtp.domain.com
😀
失踪人口
已加载插件:fastestmirror
base: mirrors.huaweicloud.comextras: mirrors.huaweicloud.comupdates: mirrors.huaweicloud.comLoading mirror speeds from cached hostfile
软件包 libxml2-devel-2.9.1-6.el7.4.aarch64 已安装并且是最新版本
软件包 1:openssl-devel-1.0.2k-19.el7.aarch64 已安装并且是最新版本
软件包 libcurl-devel-7.29.0-57.el7_8.1.aarch64 已安装并且是最新版本
软件包 libicu-devel-50.2-4.el7_7.aarch64 已安装并且是最新版本
软件包 libxslt-devel-1.1.28-5.el7.aarch64 已安装并且是最新版本
软件包 libc-client-2007f-16.el7.aarch64 已安装并且是最新版本
无须任何处理
amavis Installation failed
错误:amavis 安装失败,请检查是否使用全新 centos 7 系统安装。
这是啥意思啊 华为云centos7.6的系统
仅支持x86_64 的CentOS 7 ,你这个是ARM服务器
明白
其他都正常只有WebMail SSL/TLS连接 测试时不会显示绿色
WebMail TLS 是需要更换ssl证书的 也就是使用https 访问webmail 才可以设置 SSL/TLS连接
我用刚买的SSL泛域名证书测试了下 也是不行的
不知道你所指的ssl是不是普通的ssl证书
就是普通的域名ssl证书,你尝试备份 /mailbox/ssl/ 目录下的证书,然后把你的泛域名证书替换掉下面两个证书文件。
私钥:/mailbox/ssl/private.key
公钥:/mailbox/ssl/certs.crt
重启服务:systemctl restart postfix dovecot
另外 webmail 也做https 访问(重要),看看行不行,因为我这边测试它是正常的,很难凭空判断问题出在哪里。
域名证书务必包含完整证书链(CA证书、中间证书等等、、颁发机构提供的证书链必须要全部写入 /mailbox/ssl/certs.crt )
我使用的是你这边提供的地址 申请的泛域名
我现在也是这个情况,在https://freessl.cn/申请的泛域名证书,就是测试不行
部署官方版本可解决
我的这里面有教程,要实在不行就跟着我这个走一遍吧
听说博主是个美女,所以先收藏了