阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

使用Docker搭建poste,自建邮件服务器

1,003次阅读
一条评论

共计 2973 个字符,预计需要花费 8 分钟才能阅读完成。




自建邮件服务可以不受发件量限制,批量发件成本更低,但部署相对复杂,而且容易进垃圾箱。不过现在越来越多的服务商已经开发好了产品,支持一键部署等方式,极大降低了部署和使用难度。这次给各位小伙伴安利一款开源邮件服务 poste.

关于 poste

poste 是一款开源邮件服务软件,可以很方便的搭建: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 端口及邮件发送
  • 建议内存 2Gb 以上
  • 干净的 IP, 没有被墙, 没有被标记为垃圾 IP
  • 提前安装好 Docker

关于 Docker 安装可参考这篇文章《Linux 安装 Docker 与 Docker 常用命令》,如果您使用的 CentOS 7 系统,也可以直接使用 xiaoz 提供的 Docker 一键安装脚本。

#CentOS 一键安装 Docker
wget https://raw.githubusercontent.com/helloxz/shell/master/install_docker.sh && bash install_docker.sh

Docker 部署 poste

Docker 部署 poste,几乎不会影响你服务器上现有的服务,复制下面的命令执行:

docker run -d \
    -p 880:80 -p 8443:443 -p 25:25 -p 110:110 -p 143:143 -p 465:465 -p 587:587 -p 993:993 -p 995:995 -p 4190:4190 \
    -e TZ=Asia/Shanghai \
    -v /data/mail-data:/data \
    --name "mailserver" \
    -h "mail.your-domain.com" \
    --restart=always \
    -t analogic/poste.io

参数含义如下:

  • 880/8443是 WEB 访问端口,为了避免和本地已有 WEB 服务(nginx 等)冲突,所以这里使用的 880/8443 作为 WEB 端口
  • TZ=Asia/Shanghai:设置容器为上海时区
  • /data/mail-data:本地数据目录,根据实际情况修改为服务器目录
  • mail.xxx.com:改成你自己的域名
  • --restart=always:容器异常时自动拉起

如果部署遇到 25 端口被占用,可通过 netstat -apn|grep 25 查看是否是 postfix 导致,CentOS 7 可卸载 postfix:

# 卸载 postfix
yum -y remove postfix

部署后访问 https://IP:8443/ 根据提示完成初始化设置。

DNS 设置

前往 DNS 服务商处,按照如下要求设置域名解析,否则邮件服务无法正常使用,其中:

  • your-domain.com:为你自己的域名
  • 1.2.3.4:为你的邮件服务器 IP
主机名 记录类型 记录值
mail.your-domain.com A 1.2.3.4
smtp.your-domain.com CNAME mail.your-domain.com
pop.your-domain.com CNAME mail.your-domain.com
imap.your-domain.com CNAME mail.your-domain.com
your-domain.com MX mail.your-domain.com
your-domain.com txt v=spf1 mx ~all

设置 DKIM 验证

在 poste 后台 – Virtual domains – 点击对应域名 – DKIM key – 创建 key,并按照要求设置 txt 记录解析。

设置 PTR 反向解析

PTR 记录,是电子邮件系统中的邮件交换记录的一种;另一种邮件交换记录是 A 记录(在 IPv4 协议中)或 AAAA 记录(在 IPv6 协议中)。PTR 记录常被用于反向地址解析。——摘自百度百科

域名解析到 IP 被称为正向解析,而 IP 指向到域名,则被称为反向解析,反向解析需要在主机服务商处进行操作,具体请咨询主机服务商。

比如 UltraVPS 可以直接在后台面板添加 PTR 反向解析,将 IP 指向到您的邮件服务器,如mail.your-domain.com

添加 SPF/DKIM/PTR 解析,可提高邮件可信度,从而降低邮件进入垃圾箱的几率,必不可少的关键步骤。

设置 TLS SSL

假如您的邮件域名为 mail.your-domain.com,需要对这个域名申请 SSL 证书,可参考《使用 acme.sh 申请 ZeroSSL 泛域名证书,Let’s Encrypt 替代品》 或者在其它服务商申请 SSL 证书。

获得 SSL 证书后,打开 poste 后台 – System settings – TLS Certificate – 选择证书文件进行上传,见截图。

SSL 提供商会自动将中级证书合并到了证书文件(比如腾讯云),因此中级证书那个选项可以和证书一致,然后点保存,保存后需要重启容器生效:docker restart mailserver

登录与管理

启用 SSL 后,可通过域名进行访问:https://mail.your-domain.com:8443/,默认是登录 webmail,可以在 webmail 发信、收信等操作。

如果需要登录系统管理,可将地址修改为https://mail.your-domain.com:8443/admin/login

邮件跑分测试

邮件跑分可以使用 https://www.mail-tester.com/ 这个工具,会检测你邮件存在的问题,并给出一定优化建议。当然这个工具得分并非绝对准确,结果只供参考。

个人建议

在准备自建邮件服务之前,有一些注意事项需要知晓,以下是一些个人经验总结,希望有所帮助。

  • 使用可信度较高的域名后缀,如.com/.net/.org,尽量避免使用各种奇怪的小众后缀
  • 使用英文字母的域名,尽量避免使用纯数字域名
  • 域名注册时间越长越好,最低注册时间建议大于 7 天
  • 使用一个干净的 IP,可通过 https://poste.io/dnsbl 查询
  • IP 支持 PTR 反向解析,需咨询主机商

最后

poste 相比其它自建邮件服务已经算比较简单的了,但步骤依然比较多。目前给其它小伙伴搭建的 poste,测试过一天发送 1w 邮件完全没有问题,但如果长期大量发送垃圾邮件,估计离拉黑也不远了,所以建议大家还是悠着点玩儿。

poste 官网:https://poste.io/

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计2973字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(一条评论)
验证码
mikesolar
2023-04-28 22:07:34 回复

捉个虫,需要加上-e “HTTPS_PORT=4433” 和-e “HTTP_PORT=8080″,并设置-p 8080:8080和-p 4433:4433

 Windows  Firefox  中国陕西省咸阳市电信
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19348
评论数
4
阅读量
7804725
文章搜索
热门文章
开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南 大家好,我是星哥。之前介绍了腾讯云的 Code...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板 1Panel:小白轻松构建 Web 服务与面板加固指南 哈喽,我是星哥,经常有人问我不...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
【1024程序员】我劝你赶紧去免费领一个AWS、华为云等的主机

【1024程序员】我劝你赶紧去免费领一个AWS、华为云等的主机

【1024 程序员】我劝你赶紧去免费领一个 AWS、华为云等的主机 每年 10 月 24 日,程序员们都会迎来...
星哥带你玩飞牛NAS-5:飞牛NAS中的Docker功能介绍

星哥带你玩飞牛NAS-5:飞牛NAS中的Docker功能介绍

星哥带你玩飞牛 NAS-5:飞牛 NAS 中的 Docker 功能介绍 大家好,我是星哥,今天给大家带来如何在...
你的云服务器到底有多强?宝塔跑分告诉你

你的云服务器到底有多强?宝塔跑分告诉你

你的云服务器到底有多强?宝塔跑分告诉你 为什么要用宝塔跑分? 宝塔跑分其实就是对 CPU、内存、磁盘、IO 做...
我用AI做了一个1978年至2019年中国大陆企业注册的查询网站

我用AI做了一个1978年至2019年中国大陆企业注册的查询网站

我用 AI 做了一个 1978 年至 2019 年中国大陆企业注册的查询网站 最近星哥在 GitHub 上偶然...
告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

  告别 Notion 焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁” 引言 在数字笔记工...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号 AI 知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率 大家好,我是星哥,...
每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年 0.99 刀,拿下你的第一个顶级域名,详细注册使用 前言 作为长期折腾云服务、域名建站的老玩家,星哥一直...
150元打造低成本NAS小钢炮,捡一块3865U工控板

150元打造低成本NAS小钢炮,捡一块3865U工控板

150 元打造低成本 NAS 小钢炮,捡一块 3865U 工控板 一块二手的熊猫 B3 工控板 3865U,搭...
12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换,告别多工具切换

12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换,告别多工具切换

12.2K Star 爆火!开源免费的 FileConverter:右键一键搞定音视频 / 图片 / 文档转换...
仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

还在忍受动辄数百兆的“全家桶”监控软件?后台偷占资源、界面杂乱冗余,想查个 CPU 温度都要层层点选? 今天给...