page contents
侧边栏壁纸
  • 累计撰写 72 篇文章
  • 累计创建 21 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

自建无限前缀私有邮箱完整教程(Cloudflare CloudMail)

广告 广告

一、项目简介

Cloud-Mail 是一款基于 Cloudflare 生态打造的开源、零服务器、低成本自建域名邮箱系统,依托 Cloudflare Workers、D1、KV、R2 等免费服务实现完整邮件收发能力,搭配 Resend 服务完善外发邮件功能。项目采用响应式界面设计,适配电脑与移动端,支持无限邮箱前缀、全域收信、附件存储、权限管理、消息推送等实用能力,个人及小型团队可依托官方免费额度永久使用,数据完全由使用者自主掌控,兼顾隐私性、灵活性与实用性,尤其适合注重隐私隔离、需要多场景区分邮箱账号的用户。

项目相关地址汇总

  1. 项目仓库(源码地址)

    https://github.com/maillab/cloud-mail

注:该地址为境外网页,国内环境可能无法直接访问,可参考官方文档完成部署操作。

  1. 官方文字教程(部署 & 使用文档)

    https://doc.skymail.ink/

    包含界面部署、命令行部署、GitHub Actions 部署、域名配置、功能设置等全流程图文指引,适配新手与进阶用户。

  2. Cloudflare 官方站点(服务控制台入口)

    https://www.cloudflare.com/

    用于创建 Workers、D1、KV、R2 资源,配置域名解析与邮件路由规则。

  3. Resend 官方站点(发信服务入口)

    https://resend.com/

    用于注册账号、添加域名校验、生成 API 密钥,实现邮件外发功能配置。

📌 一、为什么需要自己的私有邮箱?

场景

痛点

私有邮箱价值

注册交易所

垃圾邮件轰炸主邮箱

exchange@ 专门收验证码

注册空投项目

担心隐私泄露

airdrop@ 隔离风险

注册金融机构

需要高安全性

bank@ 独立管理

日常使用

主邮箱被污染

无限前缀随意切换

用 CF 这套方案,你想用啥前缀就用啥前缀:junk@safe@test@xxxx@……无限创建,完全免费!


🛠️ 二、准备工作:Cloudflare 三剑客

首先,我们要开通 Cloudflare 的三个核心服务,它们各司其职:

服务

角色

说明

D1 数据库

超级账本

记录邮件索引、发件人等结构化信息

KV 存储

快捷中转站

存储临时配置,润滑系统运行

R2 对象存储

巨型仓库

免费 10GB 空间,存邮件附件和正文

这三个服务都在 Cloudflare 的免费套餐内,白嫖到底!


🏗️ 三、实操第一步:部署与环境搭建

1. Fork 代码与部署 Worker

  • 前往 CloudMail GitHub:点击前往

  • 点击 Fork,将代码复制到你的 GitHub

  • 回到 Cloudflare 控制台,创建 Workers 应用程序

  • 选择「连接 GitHub 仓库

  • 在高级设置里,将路径设置为 mail worker

  • 点击 部署

2. 绑定自定义域

别用 CF 默认分配的那串长地址,绑定你自己的专属域名。 例如:mail.cunzhangblog.com 这样你的邮箱访问地址就是:https://mail.你的域名.com

3. 配置核心变量

在 Workers 的设置里 → 变量 → 添加以下三个关键变量:

变量名

类型

示例值

说明

domain

JSON

["xxxx.com"]

你的根域名

admin

文本

admin@xxxx.com

你的管理员邮箱

SECRET

文本

一串复杂字符

用于后续初始化后台

⚠️ 注意SECRET 一定要设置得复杂一些,建议用大小写字母+数字+符号组合。


📦 四、第二步:开通存储与绑定

1. 创建 D1 数据库

  • 进入 Cloudflare → Workers 和 Pages → D1 数据库

  • 点击「创建数据库」,起名 cloud-mail-db

  • 创建完成后,记录下数据库 ID

2. 创建 KV 命名空间

  • 进入 KV 命名空间

  • 点击「创建」,起名 cloud-mail-kv

3. 创建 R2 存储桶

  • 进入 R2 对象存储

  • 点击「创建存储桶」,起名 cloud-mail-r2

4. 绑定到 Worker(最关键的一步)

进入你的 Worker → 设置变量绑定

绑定项

变量名

选择的内容

D1 数据库

db

你创建的 D1 数据库

KV 命名空间

kv

你创建的 KV 空间

R2 存储桶

r2

你创建的 R2 存储桶

⚠️ 千万别填错变量名! 大小写均可。


✉️ 五、第三步:开启收信与初始化

1. 设置电子邮件路由

进入 Cloudflare 域名管理页面 → 电子邮件路由

  • 点击「添加记录并启用

  • 在路由规则中,将 Catch-all 地址 的操作设置为「发送至 Worker

  • 目标选择你的 cloud-mail Worker

这样,无论别人往你域名的什么前缀发信,你都能收到!

2. 初始化后台

访问以下地址: https://你的域名/api/init/你的SECRET

例如:https://mail.xxxx.com/api/init/web3beihai

看到 {"success":true},恭喜你,账本建好了!

现在直接访问你的域名,注册并登录你的管理员账号(用之前设置的 admin 邮箱)。


📤 六、第四步:对接 Resend 实现完美发信

Cloudflare 默认只能收信,想发信,咱们得请出 Resend

1. 注册 Resend

前往 Resend 官网 注册账号。

2. 添加域名

  • 在 Resend 中添加你的域名(如 xxxx.com

  • 系统会提供 DNS 验证记录

  • 回到 Cloudflare DNS 设置中,添加这些记录

⚠️ 特别提醒:如果自动没有添加上,一定要手动去添加!这条 _dmarc 的 TXT 记录(内容:v=DMARC1; p=none;)一定也要添加上,这能防止你的邮件被对方当成垃圾邮件丢进回收站。

3. 生成 API Key

  • 在 Resend 中生成 API Key

  • 回到 CloudMail 后台 → 「邮件设置

  • 填入 Resend Token

配置完成后,你就可以用任意前缀发送邮件了!


🔔 七、第五步:绑定电报机器人(可选)

为了不再频繁刷新网页,咱们把电报(Telegram)机器人挂上,新邮件实时推送!

操作步骤:

  1. @BotFather 申请机器人 Token

  2. @userinfobot 获取你的 Telegram ID

  3. 在 CloudMail 后台「系统设置」中:

    • 开启 Telegram 推送

    • 填入 Token

    • 填入你的 ID

    • 填入你的 Worker 自定义域

⚠️ 记得去 Telegram 给你的机器人发个 /start!否则它没权限给你弹窗。

配置完成后,每封新邮件都会实时推送到你的手机,再也不用盯着网页刷新了。


💡 八、实测体验

村长亲自走了一遍流程,体验如下:

优点:

  • 完全免费:Cloudflare 所有服务都在免费额度内

  • 无限前缀:想用什么邮箱前缀就用什么

  • 主权自持:数据在你自己的 CF 账户里

  • 能收能发:配合 Resend 完美实现发信

  • 电报提醒:新邮件秒推送到手机

需要注意:

  • ⚠️ 配置步骤稍多,需要耐心

  • ⚠️ 发信依赖 Resend(免费额度足够个人使用)

  • ⚠️ 需要有一个自己的域名


❓ 九、常见问题(FAQ)

Q1:这套方案完全免费吗?

A:是的。Cloudflare 的 D1、KV、R2、Workers 都在免费套餐内,个人使用完全够用。Resend 也有免费额度(每月 3000 封邮件),正常使用绰绰有余。

Q2:能创建多少个邮箱前缀?

A:无限个。只要有人往你的域名发邮件,任何前缀都会自动创建对应的邮箱。你也可以在后台手动创建。

Q3:能发邮件吗?

A:能。通过对接 Resend 实现发信功能。配置完成后,你可以用任意前缀发送邮件。

Q4:收信有延迟吗?

A:基本秒收。Cloudflare 的电子邮件路由非常快,配合电报推送,基本是即收即推。

Q5:安全吗?数据会被泄露吗?

A:数据完全存储在你自己的 Cloudflare 账户中,CF 是国际顶级云服务商,安全性有保障。关键数据(邮件正文、附件)都在 R2 里,只有你有权限访问。

Q6:没有域名可以用吗?

A:不行。这套方案需要你拥有一个自己的域名。

Q7:配置复杂吗?

A:步骤较多,但村长的教程已经拆解得非常清晰了。跟着一步步走,半小时内能搞定。如果遇到问题,可以在电报群里问我。

Q8:电报机器人收不到推送怎么办?

A:检查以下几点:

  • 确认给机器人发送过 /start

  • 确认 Token 和 ID 填写正确

  • 确认 Worker 自定义域地址正确

Q9:Resend 的免费额度够用吗?

A:Resend 免费套餐每月 3000 封邮件。对个人用户来说,完全够用。如果超过,可以考虑付费或寻找其他发信方案。

Q10:可以迁移已有邮件到这套系统吗?

A:目前 CloudMail 主要面向新邮件,暂不支持批量导入历史邮件。建议从今天开始作为主邮箱使用。

0
广告 广告

评论区