如何搭建自己的域名邮箱服务器?Poste.io邮箱服务器搭建教程,Linux+Docker搭建邮件服务器的教程

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/NEXNARPz
  • 阿里云优惠注册地址:https://www.aliyun.com/minisite/goods?userCode=jdjc69nf
  • 雨云优惠注册地址:https://url.vpszj.cn/rainyun_csdn

下面以雨云的为例,注册一个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://url.vpszj.cn/hly_csdn

邀请码:zeruns(走链接送首月5折和8折优惠券)

雨云优惠注册链接:https://url.vpszj.cn/rainyun_csdn

优惠码: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 替换成你自己的域名就可以

主机记录记录类型记录值
mailA你服务器的IP地址
smtpCNAMEmail.vpszj.cn
popCNAMEmail.vpszj.cn
imapCNAMEmail.vpszj.cn
@MXmail.vpszj.cn
@TXTv=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 settingsTLS 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邮箱发邮件到我们搭建的域名邮箱,测试成功。

教程到此结束,如果觉得教程不错的请点个赞,谢谢!

推荐阅读

  • 高性价比和便宜的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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/55640.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

各省份-产业链现代化水平(2001-2022年)

产业链现代化水平是一个综合性指标,它为我们提供了一个多维度的视角来评估各省份在产业链现代化进程中的发展水平。这个指标涵盖了技术创新、产业升级、生产效率、产业结构优化等多个方面,包含原始数据、测算结果以及参考文献。 2001年-2022年各省份-产…

论文翻译 | Generated Knowledge Prompting for Commonsense Reasoning

摘要 整合外部知识是否有利于常识推理,同时保持预训练序列模型的灵活性,这仍然是一个悬而未决的问题。为了研究这个问题,我们开发了生成知识提示,它包括从语言模型生成知识,然后在回答问题时提供知识作为附加输入。我们…

【Java】IntelliJ IDEA开发环境安装

一、下载 官方地址:https://www.jetbrains.com/idea/ 点击Download直接下载 二、安装 双击安装包,点击Next 选择安装路径,点击Next 勾选安装内容 安装完成。 三、创建项目 打开IDEA,填写项目名称,选择项目安装路径…

如何使用ssm实现基于SSM的宠物服务平台的设计与实现+vue

TOC ssm779基于SSM的宠物服务平台的设计与实现vue 绪论 1.1 研究背景 当前社会各行业领域竞争压力非常大,随着当前时代的信息化,科学化发展,让社会各行业领域都争相使用新的信息技术,对行业内的各种相关数据进行科学化&#x…

安全帽头盔检测数据集 3类 12000张 安全帽数据集 voc yolo

安全帽头盔检测数据集 3类 12000张 安全帽数据集 voc yolo 安全帽头盔检测数据集介绍 数据集名称 安全帽头盔检测数据集 (Safety Helmet and Person Detection Dataset) 数据集概述 该数据集专为训练和评估基于YOLO系列目标检测模型(包括YOLOv5、YOLOv6、YOLOv7…

【C++ STL】手撕vector,深入理解vector的底层

vector的模拟实现 前言一.默认成员函数1.1常用的构造函数1.1.1默认构造函数1.1.2 n个 val值的构造函数1.1.3 迭代器区间构造1.1.4 initializer_list 的构造 1.2析构函数1.3拷贝构造函数1.4赋值运算符重载 二.元素的插入,删除,查找操作2.1 operator[]重载函数2.2 push_back函数:…

Redis篇(面试题 - 连环16炮)(持续更新迭代)

目录 目录 目录 (第一炮)一、Redis?常用数据结构? 1. 项目里面到了Redis,为什么选用Redis? 2. Redis 是什么? 3. Redis和关系型数据库的本质区别有哪些? 4. Redis 的线程模型…

4 思科模拟器的介绍和使用

4 思科模拟器的介绍和使用 思科的IOS给我们提供了三大模式 设备开机后,进入的模式是【用户模式】 Router表示设备的名称 “>”表示用户模式 在用户模式输入"?" 可列出在用户模式可以使用的命令 第二种模式是特权模式,输入enable进入特权模式&…

【C++】入门基础介绍(上)C++的发展历史与命名空间

文章目录 1. 前言2. C发展历史2. 1 C版本更新特性一览2. 2 关于C23的一个小故事: 3. C的重要性3. 1 编程语言排行榜3. 2 C在工作领域中的应用 4. C学习建议和书籍推荐4. 1 C学习难度4. 2 学习书籍推荐 5. C的第一个程序6. 命名空间6. 1 namespace的价值6. 2 namespace的定义6. …

如何解决 MySQL ERROR 1040 (08004): Too many connections ?

MySQL 是最流行的开源关系数据库管理系统之一,它也是开发人员中非常常用的数据库。即便它高度健壮和可伸缩性极强,像任何软件一样,它也可能出现错误。我们会经常遇到一个错误,特别是在高流量系统中,error 1040 (08004)…

DenseNet算法:口腔癌识别

本文为为🔗365天深度学习训练营内部文章 原作者:K同学啊 一 DenseNet算法结构 其基本思路与ResNet一致,但是它建立的是前面所有层和后面层的密集连接,它的另一大特色是通过特征在channel上的连接来实现特征重用。 二 设计理念 三…

XSP16受电端取电快充协议芯片的应用及工作原理

受电端取电快充协议芯片XSP16是一款集成PD2.0/3.0、PD3.1、QC2.0/3.0、华为FCP/SCP、三星AFC等全协议芯片,这使得它能够适应不同品牌和设备的需求。支持大电流、大功率140W28V/5A给设备快速供电,该芯片采用小 QFN16_3*3mm封装,芯片支持电压向…

【网络篇】计算机网络——应用层详述(笔记)

目录 一、应用层协议原理 1. 进入应用层 2. 网络应用程序体系结构 (1)客户-服务器体系结构(client-server architecture) (2) P2P 体系结构(P2P architecture) 3. 进程间通讯 …

dll动态库加载失败导致程序启动报错以及dll库加载失败的常见原因分析与总结

目录 1、问题说明 2、dll库的隐式加载与动态加载 2.1、dll库的隐式加载 2.2、dll库的显式加载 3、使用Process Explorer查看进程加载的dll库信息以及动态加载的dll库有没有加载成功 3.1、使用Process Explorer查看进程加载的dll库信息 3.2、使用Process Explorer查看动态…

C语言语句、语句分类及注释

文章目录 一、语句和语句分类二、注释🍕注释是什么?为什么写注释?1. /**/的形式2. //的形式3. 注释会被替换 三、随机数的生成1.rand函数2.srand函数3.time函数4.设置随机数的范围 四、C99中的变长数组五、问题表达式解析表达式1表达式2表达式…

redis中的数据类型(Set与ZSet)

(一)set set在我们目前有两个意思,首先就是这里使用的集合,第二个是我们的set和get方法 因为set是一个集合,所以他具有集合的一些特点: 1.集合中的元素无序 2.集合中的元素是不可重复的 3.集合间是可…

2.点位管理开发(续)及设计思路——帝可得后台管理系统

目录 前言一、页面原型二、修改1、页面展示2、新增 3 、总结思路 前言 提示&#xff1a;本篇继续点位管理的改造 一、页面原型 页面展示新增 二、修改 1、页面展示 页面修改&#xff1a;修改标签换行、顺序顺序、地址过长时换行问题&#xff1b; <el-table v-loading…

大厂笔试现已经禁用本地IDE怎么看

如果我说本来面试做题这种事情就是反人类你相信吗&#xff1f; 这个罪恶的源头就是 Google&#xff0c;说是为了选择高素质的计算机编程水平的人才&#xff0c;然后把面试就变成了考试&#xff0c;最大的受益者当然是印度人了。 当把一个考察过程变成标准化的考试过程&#x…

电脑失声,一招搞定

早已习惯了Edge浏览器的“大声朗读”功能&#xff0c;今天值班&#xff0c;值班室用的两台电脑只配有耳机&#xff0c;没有音箱&#xff0c;顿时感觉不适。 先找了一个带功放的老音箱&#xff0c;发现少了电箱到功放的音频线。 一顿搜索&#xff0c;在找到音频线的同时&#…

【案例】平面云

教程案例视频&#xff1a;Unity Shader Graph - 云教程 开发平台&#xff1a;Unity 2022 开发工具&#xff1a;Unity ShaderGraph   一、效果展示 二、ShaderGraph 路线图 三、案例分析 核心思路&#xff1a;使用 Noise&#xff08;噪声&#xff09;模拟云层状态   3.1 说明…