首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >邮局系列教程 | 使用poste.io部署自己的邮局

邮局系列教程 | 使用poste.io部署自己的邮局

作者头像
夜梦星尘
发布于 2024-09-12 03:15:00
发布于 2024-09-12 03:15:00
1.3K00
代码可运行
举报
运行总次数:0
代码可运行

1. 前言

Posteio 是一个轻量级的开源邮件服务器程序,旨在简化邮件系统的部署和管理。它支持常见的邮件协议(如 SMTP 和 IMAP),并具有内置的反垃圾邮件、反病毒功能,确保邮件通信的安全性和稳定性。Posteio 易于安装,支持 Docker 容器化部署,非常适合中小型企业和个人用户使用,既能够满足基本的邮件发送与接收需求,又能够通过扩展自定义功能来提升系统的灵活性。

官网:https://poste.io/

文档:Poste.io documentation

2. 准备

部署邮局必须使用25端口开放的服务器,并且夜梦强烈建议你使用支持rDNS的服务器。邮局服务器的准备工作可以看夜梦的这篇文章:邮局系列教程 | Racknerd开启rDNS(PTR反向解析) | 小白向教程

安装docker与docker-compose:【docker】在服务器上安装docker/docker-compose

部署邮局必须使用域名(域名邮箱没有域名那就不叫域名邮箱了)。夜梦推荐在 namesilo 上进行注册,注册时可以使用 1 美元优惠码:yemeng。

由于posteio占用内存较多(如果开启病毒监测和反垃圾邮件的话),夜梦建议你为服务器添加2~4G的swap:手动添加 SWAP

3. 域名解析

3.1 基础解析

在开始部署之前,建议先完成域名的解析。比如夜梦想要使用的域名邮箱后缀为@imoe.email,那么需要解析的内容如下表(将imoe.email、mail.imoe.email改成你自己的域名,将记录IP改成你服务器的IP):

名称

记录类型

记录值

优先级/说明

@

MX

mail.imoe.email

优先级 10,邮件服务器域名

mail

A

你服务器的 IP 地址

邮件服务器 IP 地址

@

TXT

v=spf1 ip4:你的服务器 IP 地址 ~all

SPF 记录,指定允许发送邮件的服务器

s66666666._domainkey.imoe.email.(具体看5.3节创建DKIM密钥)

TXT

v=DKIM1; k=rsa; p=MI...

DKIM 公钥记录,确保邮件真实性

_dmarc

TXT

v=DMARC1; p=none; rua=dmarc@imoe.email

DMARC 记录,处理验证失败的邮件

selector1._domainkey (可选)

CNAME

指向你的 DKIM 公钥别名

可选的 CNAME 记录,用于 DKIM

其中DKIM公钥需要在部署完posteio以后获取!具体看5.3节创建DKIM密钥。这些解析的具体解释如下:

3.1.1 MX 记录(Mail Exchange)

用于指定接收邮件的服务器。

名称

记录类型

记录值

优先级

@

MX

mail.imoe.email

10

mail.imoe.email 是你服务器的主机名,需确保该主机名解析到你的服务器 IP 地址。

3.1.2 A 记录

A 记录将主机名解析为服务器的 IP 地址。

名称

记录类型

记录值

mail

A

你服务器的 IP 地址

mail.imoe.email 指向你托管邮件服务器的 IP 地址。

3.1.3 TXT 记录

SPF、DKIM 和 DMARC 验证有助于确保你的邮件不会被标记为垃圾邮件。

SPF 记录

指定允许通过 imoe.email 域名发送邮件的服务器。

名称

记录类型

记录值

@

TXT

v=spf1 ip4:你的服务器 IP 地址 ~all

如果有多个服务器发送邮件,可以继续添加更多 IP 地址或子网范围。

DKIM 记录

DKIM 记录用于签署邮件,确保其未被篡改。

名称

记录类型

记录值

default._domainkey

TXT

由你生成的 DKIM 公钥(Posteio 或其他邮件服务器生成的)

你需要在你的邮件服务器上生成 DKIM 密钥,并将公钥添加到 DNS 中。

DMARC 记录

DMARC 记录定义如何处理未通过 SPF 和 DKIM 验证的邮件。

名称

记录类型

记录值

_dmarc

TXT

v=DMARC1; p=none; rua=dmarc@imoe.email

3.1.4 CNAME 记录(可选)

夜梦这篇文章里面不做演示。如果你需要别名解析,比如为 DKIM 记录创建别名,可以使用 CNAME 记录。不过如果只是基本的邮件服务,不一定需要配置 CNAME 记录。

名称

记录类型

记录值

selector1._domainkey (DKIM 验证)

CNAME

你的 DKIM 公钥别名,若需要

3.2 协议解析(可选)

为了使用 IMAP、SMTP、POP 协议确保邮件的发送和接收,你需要在 DNS 中添加相应的 A 记录或 CNAME 记录,这样客户端才能正确连接到你的邮件服务器。这些记录通常会指向你的邮件服务器的主机名,例如 mail.imoe.email。以下是需要添加的 DNS 记录:

3.2.1 A 记录

这些记录将 IMAP、SMTP、POP 等子域名解析到你邮件服务器的 IP 地址。

名称

记录类型

记录值

imap

A

你服务器的 IP 地址

smtp

A

你服务器的 IP 地址

pop

A

你服务器的 IP 地址

3.2.2 CNAME 记录

你也可以使用 CNAME 记录将 imapsmtppop 这些子域名解析为 mail.imoe.email,如果不想分别设置 A 记录。

名称

记录类型

记录值

imap

CNAME

mail.imoe.email

smtp

CNAME

mail.imoe.email

pop

CNAME

mail.imoe.email

3.2.3 服务端口配置(客户端)
  • IMAPimap.imoe.email,使用端口 143(非加密)或 993(SSL)。
  • SMTPsmtp.imoe.email,使用端口 25(非加密)、465(SSL)、587(STARTTLS)。
  • POPpop.imoe.email,使用端口 110(非加密)或 995(SSL)。

邮件服务器可以支持 IMAP、SMTP、POP 协议,客户端能够正确连接到服务器并处理邮件。

4. 部署

创建文件夹:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mkdir -p /root/data/docker_data/posteio
cd /root/data/docker_data/posteio

创建配置文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
vim docker-compose.yml

英文输入法下按 i 进入编辑模式后,将下面的配置文件编辑好粘贴进去。配置文件中禁用反病毒功能(DISABLE_CLAMAV=TRUE)与禁用反垃圾邮件功能(DISABLE_RSPAMD=TRUE),可以大幅减低内存和CPU占用,请根据需求选择是否禁用。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
version: '3.7'

services:
  mailserver:
    image: analogic/poste.io
    hostname: mail.imoe.email
    ports:
      - "25:25"
      - "110:110"
      - "143:143"
      - "587:587"
      - "993:993"
      - "995:995"
      - "4190:4190"
      - "465:465"
      - "80:80"      # 添加 80 端口,用于 Let's Encrypt 验证
      - "443:443"    # 启用 HTTPS
    environment:
      - LETSENCRYPT_EMAIL=admin@imoe.email
      - LETSENCRYPT_HOST=mail.imoe.email
      - VIRTUAL_HOST=mail.imoe.email
   #   - DISABLE_CLAMAV=TRUE    # 反病毒,根据需求禁用
   #   - DISABLE_RSPAMD=TRUE    # 反垃圾邮件,根据需求禁用
      - TZ=Asia/Shanghai
      - HTTPS=ON               # 启用 HTTPS
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - ./mail-data:/data      # 确保持久化数据卷

esc 后,输入:wq 保存退出。运行:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
docker-compose up -d

然后就可以访问mail.imoe.emailmail.yourdomain.com)进入WEB界面了。

5. 使用

5.1 注册

访问web界面提示隐私错误不用管,直接进入即可。

注册管理员用户:

注册完就可以进入管理员界面了:

5.2 配置Let’s encrypt证书

配置Let’s encrypt证书:

对着输入,换成你自己的域名:

点击save changes保存。不出意外的话是不会出意外的,申请一切正常。

5.3 创建 DKIM 密钥

点击进入域名的配置页面:

点击创建DKIM密钥:

添加DNS解析,这里的解析就是3.1 基础解析的第四条:

5.4 webmail使用

点击右上角的webmail,登录用户名和登录密码和管理后台一致。

使用界面,简洁明了:

6. 问题记录

在发件时显示“你的 DKIM 签名无效”,夜梦还不清楚啥原因……知道的小伙伴可以和夜梦聊聊,感谢!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-9-11 2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
深入解析SMTP、POP3与IMAP4协议:原理、命令与应用
邮件协议是电子邮件通信的核心机制,保障着邮件的可靠传输和接收。主流的SMTP(简单邮件传输协议)、POP3(邮局协议第三版)和IMAP(互联网消息访问协议)构成了现代邮件系统的基础支撑。本文将从工作原理、常用端口、命令交互、性能优劣以及安全性五个维度,深入解析这三大协议的技术特性。
TurboEx技术分享
2025/06/30
1720
深入解析SMTP、POP3与IMAP4协议:原理、命令与应用
Docker 搭建开源强大的邮局,poste.io
重要:要部署自己的邮局,请先确认服务器的25端口是开放的,入站出站都是OK的才行,阿里云腾讯云的服务器25端口默认都是封的。不太好解封。所以要试玩搭建poste.io 最好用一个国外的机器
huolong
2023/09/13
9.1K0
Docker 搭建开源强大的邮局,poste.io
使用Docker搭建poste,自建邮件服务器
自建邮件服务可以不受发件量限制,批量发件成本更低,但部署相对复杂,而且容易进垃圾箱。不过现在越来越多的服务商已经开发好了产品,支持一键部署等方式,极大降低了部署和使用难度。这次给各位小伙伴安利一款开源邮件服务poste.
星哥玩云
2022/08/13
7.5K0
使用Docker搭建poste,自建邮件服务器
iRedMail -开源邮件服务器解决方案
huolong
2024/01/11
1.3K0
自建邮局poste.io踩坑填坑(文末有彩蛋)
要自建邮局,要有web管理界面,要原生支持docker,还不能占用太多的资源,挑来挑去,就剩下这款poste.io能用了。
若海
2023/07/05
7.7K1
[叶子]在自己的服务器上搭建自己的邮箱
这可能是我写的文章中为数不多的有全程完整截图的、不是在完工后再来回忆的文章,但并不是因为我一开始就打算写这篇教程,而是搭建邮箱这玩意我做了”双份“——先在我自己的服务器上面给我自己搭建,确认成功了、各项功能都正常了我才在 @gaoice 的服务器上面搭建,并同时边搭建边截图,之所以我写这个,是因为我在给自己的服务器搭建的时候走了太多的弯路,过程太曲折,以至于在完工之后我觉得有必要写这么一篇文章来记录这个过程。但是我并不打算在这篇文章里面详细讲我走的弯路的具体情况,这篇文章主要还是讲搭建这件事本身。
冰漪叶
2022/10/24
10.4K0
[叶子]在自己的服务器上搭建自己的邮箱
【宝塔邮局管理器】使用教程
安装完Redis服务后设置密码,设置密码时不要使用&%这类特殊符号 会导致负载状态显示异常,可使用英文+数字组合密码
西里国际站
2023/04/19
3.3K0
【宝塔邮局管理器】使用教程
邮局系列教程 | Racknerd开启rDNS(PTR反向解析) | 小白向教程
RackNerd的服务器价格便宜,而且开放所有端口(包括25端口),所以非常适合用来搭建自己的邮局系统。这篇文章夜梦将介绍如何在RackNerd服务器上开启rDNS(PTR反向解析),这是搭建邮局的重要一步。相信通过这篇教程,你一定可以轻松地完成rDNS的配置的~
夜梦星尘
2024/08/20
8220
邮局系列教程 | Racknerd开启rDNS(PTR反向解析) | 小白向教程
Docker搭建免费邮箱服务器
EwoMail是基于Linux的开源邮件服务器,支持一键搭建,集成了众多优秀稳定的组件,是一个快速部署、简单高效、安全稳定的邮件解决方案,支持电脑和手机的客户端,适合个人或邮箱功能需求少的企业。
Petrochor
2022/06/07
4K0
Docker搭建免费邮箱服务器
Pmail——仅用一分钟就可以搭建好一个邮箱服务器
作者的github地址如下:https://github.com/Jinnrry/PMail readme里有明确说 PMail是一个追求极简部署流程、极致资源占用的个人域名邮箱服务器。单文件运行,包含完整的收发邮件服务和Web端邮件管理功能。只需一台服务器、一个域名、一行代码、一分钟部署时间,你就能够搭建出一个自己的域名邮箱。
huolong
2023/10/26
22.6K11
Pmail——仅用一分钟就可以搭建好一个邮箱服务器
一封伪造邮件引发的“探索”(涉及钓鱼邮件、SPF和DKIM等)
0x00. 引言 我用swaks 发送一封以我们公司CTO为显示发件人(腾讯企业邮箱)的伪造邮件给我的一个同事,邮件的内容就是让这位同事去CTO的办公司一趟,没想到这位同事真的去了,然后一脸懵逼的回来了。 恶作剧算是完了,但是这让我开始研究伪造邮件是为什么产生的,腾讯企业邮为什么没有拦截。 0x01. 关于伪造邮件的一些总结 1) 邮件服务商之间转发邮件是不需要认证的,也就是说MTA 到MTA之间转发邮件是不需要认证的,这是SMTP协议本身定义的。 所以协议钓鱼邮件就可以伪称来自某某MTA发送钓鱼邮件;
FB客服
2018/02/28
6.4K0
一封伪造邮件引发的“探索”(涉及钓鱼邮件、SPF和DKIM等)
企业邮件安全防护实践
邮件系统作为一种有效的内外部工作沟通平台,在企业内得到广泛使用。同时,广告邮件、垃圾邮件、钓鱼邮件等问题就成了企业邮件安全头号难题。所以我们的企业安全人员以往更多关注反垃圾邮件,向对数据保密,反钓鱼方向演进。
FB客服
2019/10/24
3.8K0
企业邮件安全防护实践
Swaks伪造邮件发件人绕过SPF
设置正确的 SPF 记录可以提高邮件系统发送外域邮件的成功率,也可以一定程度上防止别人假冒你的域名发邮件。
黑白天安全
2020/07/23
7.5K0
Swaks伪造邮件发件人绕过SPF
Linux搭建开源企业邮箱系统EwoMail
EwoMail是基于Linux的开源邮件服务器软件,集成了众多优秀稳定的组件,是一个快速部署、简单高效、多语言、安全稳定的邮件解决方案,帮助你提升运维效率,降低 IT 成本,兼容主流的邮件客户端,同时支持电脑和手机邮件客户端。
星哥玩云
2022/09/15
7.4K0
Linux搭建开源企业邮箱系统EwoMail
轻量折腾计划1,搭一个域名邮箱来玩玩
这是一个系列,初期预计将有9-10篇左右的文章,旨在记录我折腾腾讯云的轻量应用服务器的相关过程,欢迎感兴趣的读者关注。
NNT
2021/07/22
4.5K1
轻量折腾计划1,搭一个域名邮箱来玩玩
Docker搭建免费邮箱服务器
EwoMail是基于Linux的开源邮件服务器,支持一键搭建,集成了众多优秀稳定的组件,是一个快速部署、简单高效、安全稳定的邮件解决方案,支持电脑和手机的客户端,适合个人或邮箱功能需求少的企业。
子润先生
2021/06/23
40K1
利用宝塔邮局管理器加rainloop搭建自己的邮箱
注:需要提前在域名服务商解析mail(可以不为mail)域名到服务器,例:mail.mxisc.cn
铭心
2024/12/20
8240
利用宝塔邮局管理器加rainloop搭建自己的邮箱
搭建 EwoMail 邮件服务器
EwoMail 是一款简单易用的邮件服务器,本文记录服务器配置方法。 EwoMail 简介 基于Linux下的邮件服务器软件,安全稳定,无需专人维护 基于Web现代化的邮箱管理后台、WebMail,无需安装任何客户端 简单易用,支持多语言切换,详细的使用手册,容易上手 官方网站:http://www.ewomail.com/ 服务器配置方法 本文使用 docker 安装 EwoMail 服务器 docker hub 链接:https://hub.docker.com/r/bestwu/ewoma
为为为什么
2022/08/06
13.7K1
搭建 EwoMail 邮件服务器
关于钓鱼邮件的学习笔记
所以事前我们需要准备一个钓鱼网站,为了能让钓鱼网站在公网访问,还需要一个VPS,若想获得更好的伪装效果,还需要一个用于伪装的域名。VPS和域名都到手后,还可以搭建属于自己的邮服用于SMTPRelay。使用恶意附件的话,还需要准备一个恶意样本,能做免杀的话就更好了,接收shell的话,同样需要一个VPS。
FB客服
2020/03/24
3K0
关于钓鱼邮件的学习笔记
CS学习笔记 | 25、邮件防御
Cobalt Strike 不是什么工作情况都能胜任的工具,因此就需要我们根据不同的情况去做一些辅助工作。
TeamsSix
2020/10/10
1.1K0
推荐阅读
相关推荐
深入解析SMTP、POP3与IMAP4协议:原理、命令与应用
更多 >
交个朋友
加入腾讯云官网粉丝站
蹲全网底价单品 享第一手活动信息
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档