Linux系统+Docker搭建 Poste.io
电子邮件服务器,搭建属于自己的域名邮箱服务器,可以无限收发电子邮件(Email)!
视频教程: https://www.bilibili.com/video/BV11p1mYaEpM/
前言
什么是域名邮箱?
域名邮箱是指使用自己的域名作为邮箱地址的电子邮件服务。这种形式的邮箱(例如, admin@zeruns.tech )不仅增强了个人或企业的品牌识别度,而且传递出更为专业和正式的形象。相比于常见的免费邮箱服务,域名邮箱提供了更多定制化选项和安全特性,非常适合商业环境。
Poste.io简介
Poste.io 是一个开源的电子邮件服务器解决方案,它提供了一个简单而强大的邮件服务器环境,适用于个人用户、小型企业或组织。Poste.io 的目标是提供易于安装、配置和管理的电子邮件解决方案,并且尽可能减少复杂性。
以下是 Poste.io 的一些主要特点和功能:
- 易于安装和配置:Poste.io 提供了一个简化的安装和配置过程,使用户能够快速设置和启动邮件服务器。
- Web 用户界面:它提供了一个直观的 Web 用户界面,使用户能够轻松管理邮件服务器、创建和管理邮箱账户、设置域名等。
- 邮箱功能:Poste.io 支持标准的电子邮件功能,包括收发邮件、邮件夹管理、邮件搜索、自动转发、自动回复等。
- 安全性:Poste.io 使用各种安全措施来保护你的电子邮件和服务器,包括加密通信、防垃圾邮件过滤、反病毒扫描等。
- 邮件过滤和规则:你可以设置邮件过滤器和规则,根据自定义条件自动处理邮件,例如将特定类型的邮件自动分类到特定文件夹。
- 多域名支持:Poste.io 允许你管理多个域名和相关的邮箱账户,方便你为不同组织或团队创建和管理独立的邮箱。
站长交流群: 767557452
域名注册
什么是域名?
域名可以通俗地理解为互联网上的"门牌号码"或"地址"。每个网站在互联网上都有一个唯一的地址,这个地址就是域名。比如,人们常常访问的"baidu.com","blog.zeruns.tech"等都是域名。它们由一串字符组成,通常包括字母、数字和连接符"-",并由"."分隔成几部分。域名的作用是让人们能够更容易地访问和记住网站,而不需要记住复杂的IP地址。同时,域名也具有一定的商业价值,可以作为企业或个人在互联网上的标识和品牌形象。
注册域名
- 腾讯云优惠注册地址: https://curl.qcloud.com/rbDL8jYd
- 阿里云优惠注册地址: https://www.aliyun.com/minisite/goods?userCode=jdjc69nf
- 雨云优惠注册地址: https://www.rainyun.com/zeruns_?s=blog
下面以雨云的为例,注册一个 zeruns.top
的域名。
在云产品里找到域名服务。
点击域名注册,搜索你要注册的域名。
根据提示输入信息
填写完信息后点击立即注册,然后等待审核完成就行
如果你用的境内的服务器那还需要进行域名备案。
备案的流程就不细说,自己去了解一下就行。
温馨提示:购买3个月的 腾讯云 或 阿里云 等大厂云服务器可以免费提供代备案服务,购买雨云的 湖北 或 宁波 的云服务器也可以免费提供代备案服务。
准备
重要事项:要部署自己的邮箱服务器,请先确认服务器的25端口是开放的,入站出站都是OK的才行,目前国内部分服务器厂商或机房是封禁25端口的,可以提工单或找客服询问是否开放25端口或能否申请开放25端口!
这个邮箱服务器除了要用25端口外还需要80和443这些网页服务的端口,所以不能安装网页服务器软件,如果要同时存在就要docker设置端口映射将邮箱服务器的80和443端口映射到其他端口,然后用反向代理,设置比较复杂,所以不会的还是邮箱服务器单独一个服务器吧。
如果你使用的域名未备案的只能使用境外服务器,如果需要延迟相对低一点的可以选择 中国香港 。
我这里推荐 雨云 的 湖北 十堰云服务器,和 皓量云擎 的 宁波 云服务器,这两个是我实测没有封25端口的。
- 雨云 湖北十堰 8272CL 高防高性能云服务器测评: https://blog.vpszj.cn/archives/2084.html
- 北少云 河南 8272CL 云服务器性能测评: https://blog.vpszj.cn/archives/2150.html
- 皓量云擎 宁波 E5-2667v4 云服务器性能测评: https://blog.zeruns.tech/archives/821.html
- 野草云 香港BGP大带宽VPS测评: https://blog.vpszj.cn/archives/2211.html
- 其他性价比高的服务器推荐: https://blog.vpszj.cn/archives/41.html
下面教程我就用 皓量云擎 的 宁波 云服务器来演示,首先注册个账号先:
皓量云擎优惠注册地址 : https://www.haoliangyun.com/?aff=zeruns&source=blog
邀请码:zeruns(走链接送首月5折和8折优惠券)
雨云优惠注册链接: https://www.rainyun.com/zeruns_?s=blog
优惠码:zeruns(走链接送首月5折优惠券)
注册账号后点击 计算 → 云服务器 → 购买云服务器
区域选 华东-宁波 ,配置一般选2核2G就够了(如果是公司企业之类的,邮件量和业务量大就建议选更高的配置,硬盘最好也要大点),系统镜像选 Debian12 ,点击 下一步 。
选择带宽,默认的5Mbps就够了(如果是公司企业之类的,邮件量和业务量大就建议选更高的带宽),继续点击 下一步 。
这里可以设置服务器的密码,默认自动生成就行,继续点击 下一步 ,然后确认并提交订单。
购买后即可在云服务器这里看到你买的云服务器,点击 管理 。
接着就可以看到云服务器的信息了,在这里可以重装/切换系统、重置密码等,可以升级配置。
连接服务器
下载安装并打开ssh客户端软件,ssh客户端软件推荐putty或mobaxterm。
我这里用mobaxterm,在SSH客户端中输入你的服务器的IP地址,还有SSH端口,然后点击好的或者打开。
然后输入账号并按回车,账号一般默认为 root ,接着输入密码并按回车确定,输入密码时不会显示出来。
温馨提示:在SSH终端中按住鼠标左键选择文字,然后松开鼠标,再在空白处单击一下,这样就把选中的文字复制了;在SSH终端单击右键即为粘贴。
验证是否开放25端口
判断25端口可用方法是在服务器上执行: telnet smtp.qq.com 25
若输出是: Trying 43.129.255.54... telnet: connect to address 43.129.255.54: Connection timed out
则可以放弃部署邮局了。
若输出是以下内容,则证明该服务器25端口正常的,可以进行部署邮局。接着输入 quit
并回车退出。
Trying 183.47.101.192...
Connected to smtp.qq.com.
Escape character is '^]'.
220 newxmesmtplogicsvrszb16-1.qq.com XMail Esmtp QQ Mail Server.
这个邮箱服务器需要的端口有:25、80、443、110、143、465、587、993、995
大厂的服务器要记得都去服务器控制台的安全组/防火墙那里开放这些端口!
设置域名解析
按照以下内容配置即可。mail.vpszj.cn 替换成你自己的域名就可以
| 主机记录 | 记录类型 | 记录值 | |:----:|:-----:|:---------------:| | mail | A | 你服务器的IP地址 | | smtp | CNAME | mail.vpszj.cn | | pop | CNAME | mail.vpszj.cn | | imap | CNAME | mail.vpszj.cn | | @ | MX | mail.vpszj.cn | | @ | TXT | v=spf1 mx ~all |
如下图所示:
安装Docker
回到ssh终端,输入下面的指令。
用apt包管理器来安装:
# 安装docker,如果遇到问是否继续的就输入y来确定
apt install docker.io
设置docker开机自启和启动docker
=====================
systemctl enable docker \&\& systemctl start docker
检查是否安装成功,若安装成功会显示 Docker version x.x.x
======================================
`docker -v
`
若没安装成功就试试下面的安装脚本:
# 安装docker
curl -sSL https://get.daocloud.io/docker | sh
设置docker开机自启和启动docker
=====================
systemctl enable docker \&\& systemctl start docker
检查是否安装成功,若安装成功会显示 Docker version x.x.x
======================================
`docker -v
`
如果还是不行就尝试下面链接的手动安装教程吧
docker手动安装教程: https://url.zeruns.tech/YkABB
Docker换镜像源(如果下面的镜像源地址失效了就自行寻找新的)
# 创建或修改 /etc/docker/daemon.json 文件
apt install nano && nano /etc/docker/daemon.json
然后输入下面内容:(输入完后按Ctrl+O,然后回车保存,接着按Ctrl+X退出编辑器)
============================================
{
"registry-mirrors": \["https://docker.1ms.run",
"https://dockerhub.icu",
"https://docker2.awsl9527.cn"
\]
}
重启docker服务
==========
`systemctl restart docker.service
`
安装和配置Poste.io
本次部署poste.io,我们采用docker的方式。
在SSH终端里执行下面的命令:
命令中的 /home/mail
是邮箱系统的配置文件和数据存放目录路径,可以自行修改。
-h
后面的域名 mail.vpszj.cn
改成你自己要部署的域名
docker run -d \
--net=host \
-e TZ=Asia/Shanghai \
-v /home/mail:/data \
--name "mailserver" \
-h "mail.vpszj.cn" \
-t analogic/poste.io:latest
容器启动后,在浏览器地址栏输入 https://服务器IP/admin/install/server
或者是 https://你的域名/admin/install/server
进入配置页面。
在这个页面,我们输入你邮箱的域名,管理员邮箱地址,以及生成密码(也可以自己手动输入)后提交即可。切记记录一下邮箱的域名和管理员账户。
进入后台,找到 System settings → TLS certificate ,点击 issue free letsencrypt.org certificate
进行申请SSL证书(申请SSL证书后浏览器地址栏会变小绿锁,不会显示不安全了)。
申请完后,我们前台再次访问邮箱域名。 我这里是 mail.vpszj.cn
他会自动跳转到邮箱的登录页面。输入之前设置管理员账号和密码并登陆。
然后我们在 Virtual domains 点击域名,申请DKIM
申请完成后,需要按照页面提示更新DNS记录,新建一个TXT记录即可。
接下来我们测试发信。我们新建邮件,随便编辑一些内容我发给我的QQ邮箱,可以看到邮件该有的功能页面都有,挺齐全了。
QQ邮箱视角:收到了(如果你没找到,不妨试着看看垃圾箱~)
给这个邮局新增账号也很简单,只需要去后台的 Email accounts 这里,Create a new email即可。
测试QQ邮箱发邮件到我们搭建的域名邮箱,测试成功。
教程到此结束,如果觉得教程不错的请点个赞,谢谢!
附
如果需要与宝塔和其他网站服务共存,docker命令可以参考下面的,将80和443端口映射到其他端口,然后用反向代理
docker run -d \
-p 25:25 \
-p 81:80 \
-p 433:443 \
-p 110:110 \
-p 143:143 \
-p 465:465 \
-p 587:587 \
-p 993:993 \
-p 995:995 \
-e TZ=Asia/Shanghai \
-v /www/wwwroot/mail:/data \
--name "mailserver" \
-h "mail.vpszj.cn" \
-t hub.vpszj.top/analogic/poste.io
推荐阅读
- 高性价比和便宜的VPS/云服务器推荐: https://blog.vpszj.cn/archives/41.html
- 免代码搭建博客网站!超详细个人博客搭建教程: https://blog.zeruns.tech/archives/783.html
- 我博客网站又遭受CC攻击了,记录一下: https://blog.zeruns.tech/archives/819.html
- 我的世界服务器搭建教程: https://blog.zeruns.tech/tag/mc/
- Linux搭建Discuz论坛网站,网站搭建教程: https://blog.zeruns.tech/archives/681.html
- 机械革命imini Pro820迷你主机评测和拆解: https://blog.zeruns.tech/archives/813.html