一、安装环境
先在服务器后台防火墙处开放端口25,110,143,465,587,993,995,2443
搭建邮局的必要条件是服务器开放了25端口,可以用以下命令测试(需安装telent)
telnet smtp.qq.com 25
安装Docker
curl -fsSL https://get.docker.com | bash
二、运行容器
mkdir -p /opt/mail
cd /opt/mail
cat >> docker-compose.yml <<EOF
services:
posteio:
container_name: mail
image: analogic/poste.io
ports:
- "25:25"
- "2080:80"
- "2443:443"
- "110:110"
- "143:143"
- "465:465"
- "587:587"
- "993:993"
- "995:995"
environment:
- TZ=Asia/Shanghai
- DISABLE_CLAMAV=TRUE
- DISABLE_RSPAMD=TRUE
volumes:
- ./data:/data
EOF
docker compose up -d
如果想要启用病毒扫描和反垃圾邮件可以把下面两个环境变量删掉
容器启动之后可以访问IP:2443访问初始化页面,hostname输入你的域名即可

初始化完成后来到域名列表,选择你的域名

选择创建密钥

记好这个密钥,一会会用到
四、添加DNS
| 主机记录 | 记录类型 | 记录值 | 备注 |
| @ | 服务器IP地址 | ||
| @ | MX | mail.rxzh.cc | 替换成你的域名,优先级10 |
| @ | TXT | v=spf1 ip4:1.1.1.1 ~all | 替换为你的服务器地址,限制发件地址 |
| s20260109518._domainkey | TXT | k=rsa; p=....... | 这里就是上一步生成的密钥,拆开填进去 |
| _dmarc | TXT | v=DMARC1; p=reject |
在你的域名解析处按上述表格添加解析记录

五、上传证书

转到证书页面,可以用Let's Encrypt的证书也可以自己上传证书
上传完成证书需要重启容器来应用证书
docker restart mail
六、测试邮箱
poste.io包含webmail,可以直接访问ip:2443来登录发邮件,账号密码等同后台密码
登上之后访问https://www.mail-tester.com/?lang=zh,会有个邮箱,给这个邮箱发个邮件就可以看到你的邮局得分,同时可以看到还能优化的地方
Comments NOTHING