公司动态
1Panel + Docker Mailserver + Roundcube 完整自建邮局部署教程
环境前置说明软件版本服务器系统推荐Ubuntu 22.04 / Debian 12 / CentOS Stream 9面板1Panel 最新稳定版邮件服务docker-mailserver标准 docker 镜像最稳定开源邮件容器网页邮箱Roundcube Webmail必备条件自有域名、公网服务器、固定公网 IP不要家用宽带动态 IP服务器端口放行面板防火墙 / 阿里云 / 腾讯云安全组都要放表格端口协议用途25TCPSMTP 发信核心465TCPSMTP SSL 加密发信587TCPSMTP STARTTLS 发信143TCPIMAP 明文收信993TCPIMAPS 加密收信客户端主流80/443TCPRoundcube 网页邮箱、SSL 证书申请重要提醒国内云厂商默认封禁25 端口阿里云 / 腾讯云需要提交工单申请解封 25 端口否则外网发邮件会全部失败。不想解封 25 可只用 465/587 收发。推荐默认开放25端口服务器http://svps.click/cart?fid2一、安装 1Panel 面板1. 一键安装命令Ubuntu / Debianbash运行curl -sSL https://resource.1panel.top/install.sh | sudo bashCentOS / Rockybash运行curl -sSL https://resource.1panel.top/install.sh | sudo bash安装完成后保存输出的面板地址、账号、密码、入口端口。 访问面板初始化安装运行环境Docker、Docker Compose1Panel 自带应用商店一键安装 1Panel → 应用商店 → 搜索Docker→ 安装 Docker Docker Compose二、域名 DNS 解析配置最关键一步错了邮件百分百进垃圾箱 / 发不出假设你的主域名shturl.cc/lp邮局主机名发信域名shturl.进入域名服务商后台阿里云 DNS、Cloudflare、腾讯云添加以下记录1A 记录表格主机记录记录类型记录值TTLmailA服务器公网 IP5 分钟2MX 记录邮件接收标识表格主机记录类型优先级记录值MX10shturl.cc/lp3SPF 记录防伪造TXT主机记录TXT 值plaintextvspf1 a mx ip4:你的服务器公网IP ~all4DKIM 记录邮件签名docker-mailserver 后续生成值再填主机记录格式mail._domainkey类型 TXT等部署完邮件容器拿到密钥再填写5DMARC 记录合规防垃圾邮件TXT主机记录_dmarcTXT 值plaintextvDMARC1; pnone; ruamailto:postmastershturl.; fo1Cloudflare 用户MX、TXT 记录关闭代理灰色云朵只能 DNS 直连代理会导致邮件异常三、部署 Docker Mailserver1. 点击 1Panel 侧边栏容器找到mailserver容器点击右侧的终端图标进入容器命令行。输入以下命令创建邮箱账户将adminshturl.com和密码替换为你自己的# 语法: setup email add 邮箱地址 密码 setup email add adminshturl.com yourstrongpassword2. 生成 DKIM 密钥必须配置 DNS容器终端执行docker exec -it mailserver setup config dkim生成的 DKIM 文件路径/opt/mailserver/config/opendkim/keys/shturl./mail.txt打开这个文件复制vDKIM1; krsa; pxxxxxxx一整串内容 回到域名 DNS填入mail._domainkey的 TXT 记录值等待解析生效一般 10~30 分钟3. 常用管理命令汇总容器终端执行# 查看所有邮箱用户 docker exec mailserver setup email list # 修改邮箱密码 docker exec -it mailserver setup email password adminshturl. 新密码 # 查看邮件运行日志排错必备 docker logs -f mailserver五、1Panel 部署 Roundcube 网页邮箱1Panel → 应用商店 → 搜索Roundcube→ 一键安装填写安装参数六、DNS 解析检测 邮件收发测试1检测 DNS 记录是否生效终端执行安装工具apt install dnsutilsbash运行# 检测MX记录 nslookup -typemx shturl. # 检测SPF nslookup -typetxt shturl. # 检测DKIM nslookup -typetxt mail._domainkey.shturl.三条记录都能正常返回内容代表 DNS 配置无误2网页登录 Roundcube 测试收发访问shturl.cc/N1CziMqHXh40Z登录账号adminshturl. 之前设置的密码给自己邮箱发一封邮件测试本地收发向 QQ 邮箱、163 邮箱发送邮件测试外发使用 QQ 邮箱反向发信给自己邮局测试接收外网邮件3排查发信进垃圾箱问题确认 25 端口解封、SPF/DKIM/DMARC 全部配置正确服务器 IP 没有黑名单记录查询网站mxtoolbox.com检测 IP 黑名单发件邮箱尽量不要纯数字、设置完整的邮箱签名七、日常维护与优化数据备份定时打包/opt/mailserver/maildata邮件存储目录1Panel 计划任务设置每日备份容器更新bash运行cd /opt/mailserver docker-compose pull docker-compose up -d服务器内存小于 2G关闭 ClamAV 杀毒yml 中 ENABLE_CLAMAV0降低内存占用切勿使用国内厂商默认 25 端口封禁的机器裸跑 25 端口外发必然失败常见报错解决Roundcube 无法登录邮箱检查 IMAP 端口 993 放行、证书正常、邮箱账号密码无误外部邮件发不出去云服务器安全组 面板防火墙放行所有邮件端口、工单解封 25 端口DKIM 校验失败复制 txt 内容不要带换行、云朵关闭代理、等待 DNS 解析生效容器启动失败检查 ssl 文件路径挂载正确文件权限可读