您是否也想搭建一个由您自己购买的域名前缀组成的独一无二的邮箱呢?
例如:114514@yumengovo.com,love@yumengovo.com等等
其中“yumengovo.com”可以是您自己购买的任意域名,而像“love”这些就是您可以自定义,完全由您自行分配的部分
前置条件:您的服务器上游提供商开放了25端口(重要!为了防范垃圾邮件,许多服务商默认会在机房侧封堵25端口,尽管您在服务器上放行了对应端口号,但仍可能无法被外界公开访问)大陆地区还需要:将您的服务器及域名经过合法备案,保证能够被正常访问
建议您直接使用羽梦推荐的服务商:https://www.rainyun.com/yumeng_
(经测试湖北十堰地区25端口可用,价格也非常牛逼的便宜)
第一步,购买服务器
经羽梦实测验证,雨云的湖北十堰和深圳两个地区开放了25端口,能顺利使用SMTP协议收发邮件
其中,湖北十堰电信地区的服务器还能免费申请数个IPv6地址,十分不错,推荐!
建议您使用羽梦的优惠码:yumeng,能获得一张5折优惠券(购买任意服务器均可用)

第二步:购买能正常备案域名,并完成ICP备案
建议在知名服务商处(例如阿里云,腾讯云)购买主流域名,例如:.com、.cn。因为某些冷门域名不能备案。无法正常解析到大陆的服务器
完成备案,具体操作流程请参阅服务器提供商和域名提供商的指引
第三步:安装Docker环境及Docker Compose
不做赘述,建议初学者或新手使用宝塔面板的一键安装,可以免去配置环境和加速源等繁琐步骤
第四步:使用Docker Compose安装Billionmail
您需要选择一个合适的文件夹存放docker-compose.yml和.env文件,例如您可以放在/www/docker_project/billionmail (没有对应的文件夹新建就好)
随后进入命令行,进入刚刚您创建的文件夹内,随后执行:
cd /opt && git clone https://github.com/aaPanel/BillionMail && cd BillionMail && cp env_init .env && docker compose up -d || docker-compose up -d
随后会自动下载docker-compose.yml和.env文件,自动拉取镜像并启动,如果这一步卡住,大概率网络问题,您可能需要配置Docker镜像加速源。
.env参数详见附录,如“安全入口”等,进不去Web端的话请留意这个设置
请修改 .env 文件中的默认信息 BILLIONMAIL_HOSTNAME 为你的域名,例如 mail.domain.com
然后修改您的.env文件以设定后台管理员账户的密码
# Default Billion Mail Username password
ADMIN_USERNAME=此处填写用户名
ADMIN_PASSWORD=此处填写密码
查看访问地址:
bash bm.sh default
- 提示:如果有系统防火墙与安全组,需要放行端口
保存并重建容器,到此,您的Billionmail安装完成
第五步:放行相应端口
以下是端口列表,请在防火墙或安全组放行
| SMTP_PORT | 25 | SMTP协议端口 (不加密) |
| SMTPS_PORT | 465 | 加密SMTP端口(SSL/TLS) |
| SUBMISSION_PORT | 587 | 邮件提交端口(STARTTLS) |
| IMAP_PORT | 143 | IMAP协议端口 |
| IMAPS_PORT | 993 | 加密IMAP端口 |
| POP_PORT | 110 | POP3协议端口 |
| POPS_PORT | 995 | 加密POP3端口 |
第六步,进入Billionmail的Web后台,完成域名解析和用户创建
点击左侧的“域名”——>“添加域名”

如果您购买的域名是example.com,建议填写mail.example.com
记得在您的域名服务商处把您的mail.example.com解析到服务器IP
随后点击右侧的“DNS记录”

根据您那边显示的指引,在域名服务商处完成各项记录的解析,注意:PTR暂时不用考虑
随后,您可针对您的域名申请一张免费的SSL证书,复制私钥和证书填写进去
(建议初学者和新手使用宝塔面板,随便建一个您域名的网站项目,例如:example.com,使用宝塔面板申请一张通配符证书,例如*.example.com,随后复制证书和密钥)

接下来终于到了最令人兴奋的环节了,我们来创建用户(邮箱账户)吧
点击左侧菜单的“邮箱”,您会看到系统自动创建了一些用户,您可以直接全部删除,随后创建您自己的自定义账号了!

第七步:接入各类邮箱APP,或任意兼容SMTP协议的客户端
打开任意邮箱APP,选择“添加其他邮箱(SMTP)”
输入您刚才创建的邮箱账密,即可正常使用!
注意:若无法访问或提示证书错误,请尝试在填写SMTP服务器地址那一栏填入您带mail前缀的那个域名

附录:
Docker Compose .env 配置项说明
.env 文件
| 配置项 | 值 | 描述 |
|---|---|---|
| ADMIN_USERNAME | billion | 默认管理员用户名 |
| ADMIN_PASSWORD | billion | 默认管理员密码 |
| SafePath | billion | 管理安全入口路径 |
| HTTPS_PORT | 443 | 管理界面端口 |
| BILLIONMAIL_HOSTNAME | mail.example.com | Postfix主机名配置 |
| DBNAME | billionmail | PostgreSQL数据库名 |
| DBUSER | billionmail | PostgreSQL用户名 |
| DBPASS | NauF7ysRYyt9HTOiOn4JjIAL3QcRZnzj | PostgreSQL密码 |
| REDISPASS | zKLnZQr3riFpcS2lEy3MOtfncztaCGKp | Redis密码 |
| SMTP_PORT | 25 | SMTP协议端口 (不加密) |
| SMTPS_PORT | 465 | 加密SMTP端口(SSL/TLS) |
| SUBMISSION_PORT | 587 | 邮件提交端口(STARTTLS) |
| IMAP_PORT | 143 | IMAP协议端口 |
| IMAPS_PORT | 993 | 加密IMAP端口 |
| POP_PORT | 110 | POP3协议端口 |
| POPS_PORT | 995 | 加密POP3端口 |
| HTTP_PORT | 80 | 免费证书验证端口 |
| TZ | Etc/UTC | 时区设置(UTC) |
| IPV4_NETWORK | 172.66.1 | 容器内网IPv4网段 |
| FAIL2BAN_INIT | y | 启用fail2ban配置限制 |
HTTP_PORT:
申请 Let's Encrypt 免费证书,需要使用80端口,如果使用其他端口将无法成功申请|
Comments NOTHING