前言
自建邮件服务可以不受发件量限制,批量发件成本更低,但部署相对复杂,而且容易进垃圾箱。不过现在越来越多的服务商已经开发好了产品,支持一键部署等方式,极大降低了部署和使用难度。
关于Poste
Poste.io 是一款提供免费与付费版本的邮件服务软件,可以很方便的搭建:SMTP + IMAP + POP3 + 反垃圾邮件 + 防病毒 + Web 管理 + Web 电子邮件,支持以下特性。 SPF、DKIM、DMARC、SRS 的原生实现,带有简单的向导 用于检测木马、病毒、恶意软件的防病毒引擎 ( ClamAV ) 内置垃圾邮件过滤器( RSPAMD ) HTTPS 上的Webmail 客户端(Roundcube) 通过Sieve 脚本进行电子邮件重定向、自动回复和其他过滤(电子邮件所有者管理,每个操作都可以编写脚本) 用于限制邮箱空间或电子邮件数量的配额 系统管理员、域管理员、电子邮件所有者具有不同权限的Web 管理。 内置Microsoft 产品的自动发现功能,Thunderbird… 帮助正确设置域和邮件服务器的诊断 SMTP - 端口 25、465 (TLS)、587 POP3 - 端口 110、995 (TLS) IMAP - 端口 143、993 (TLS) SSL TLS无处不在!没有个人数据、电子邮件、登录信息通过互联网未加密。 默认情况下,所有密码都存储为加盐SHA512哈希(5000 轮)。攻击者将很难破解您的密码。 整个邮件服务器容器由 Docker 与其他应用程序隔离。
准备工作
一台VPS,有独立IP 支持25端口及邮件发送 建议内存1Gb以上 干净的IP,没有被墙,没有被标记为垃圾IP 提前安装好Docker Docker 安装步骤见 Linux 安装 Docker Engine 与 Docker Compose。
已有 Postfix 时处理端口占用(CentOS / YUM 示例)
已有 Postfix 占用邮件端口、且准备由 Poste.io 接管邮件服务时,可以卸载 Postfix。未安装 Postfix 的环境跳过此步:
| |
一键快速部署命令
| |
部署后访问 https://IP:8888/,根据提示完成初始化设置。本例通过 DISABLE_CLAMAV 和 DISABLE_RSPAMD 关闭病毒扫描与垃圾邮件过滤,以减少资源占用。
参数对应上面的部署命令:
| 参数 | 作用 |
|---|---|
-p 8888:8888、HTTPS_PORT=8888 | 将 HTTPS 管理页面设为 8888 端口并映射到宿主机 |
DISABLE_CLAMAV=TRUE | 禁用 ClamAV 病毒扫描 |
DISABLE_RSPAMD=TRUE | 禁用 Rspamd 垃圾邮件过滤 |
TZ=Asia/Shanghai | 使用上海时区 |
-v ~/mail-data:/data | 将邮件数据持久化到宿主机 ~/mail-data |
-h mail.yourdomain.com | 邮件服务器域名,替换为自己的域名 |
--restart unless-stopped | 容器退出时自动重启,手动停止后保持停止状态 |
修复某些页面HTTPS端口变443问题
| |
参考:Poste.io 部署参数。