Cloudflare 临时邮箱基于 Cloudflare 免费服务构建的功能完整的临时邮件服务
🧭 核心功能与特点
该项目旨在提供一个零成本、高性能、功能完整的临时邮箱解决方案,适合个人学习、隐私保护或 AI Agent 集成。其核心优势包括:
- 完全免费:基于 Cloudflare 的免费套餐(Workers、Pages、D1 数据库、Email Routing)构建。
- 高性能解析:使用 Rust WASM 解析邮件,速度快且兼容性好。
- 丰富的功能:
- 支持收发邮件、附件(含图片预览)、DKIM 验证。
- 支持 SMTP 和 IMAP 代理,可接入邮件客户端。
- 集成 Telegram Bot,支持消息推送和管理。
- 支持 AI 邮件识别,自动提取验证码和认证链接。
- 提供完整的 Web 管理后台,支持多角色和域名配置。
- 现代化界面:响应式设计,支持多语言。
- Agent 友好:内置 Skill,AI Agent 可直接消费邮箱服务。
📦 部署到 Cloudflare
部署过程主要分为几个步骤:准备 Cloudflare 资源、配置域名、部署代码。
1. 准备工作
- 一个 Cloudflare 账户。
- 一个你拥有的域名(用于接收邮件,例如
example.com)。 - GitHub 账户(推荐用于自动化部署)。
2. 部署步骤
方式一:通过 GitHub Actions 自动部署(推荐)
- Fork 本仓库到你的 GitHub 账户。
- 在 Cloudflare 创建 D1 数据库:
- 进入 Cloudflare Dashboard → Workers & Pages → D1。
- 创建一个新的 D1 数据库,名称可自定义(如
cf-temp-mail-db)。
- 配置 GitHub Secrets:在你的 Fork 仓库中,进入
Settings→Secrets and variables→Actions,添加以下 Secrets:CF_API_TOKEN:你的 Cloudflare API Token(需有 Workers、Pages、D1 等编辑权限)。CF_ACCOUNT_ID:你的 Cloudflare 账户 ID。D1_DATABASE_ID:你创建的 D1 数据库 ID。
- 配置域名邮件路由:
- 在 Cloudflare Dashboard 中,进入你的域名 → Email → Email Routing。
- 启用 Email Routing,并添加一条 Catch-all 规则,将邮件转发到一个真实的收件地址(用于接收系统通知)或直接路由到 Worker(本项目通常通过 Worker 处理)。
- 触发部署:推送到
main分支,或手动运行 GitHub Actions 中的部署工作流。部署成功后,Worker 和 Pages 项目会自动创建。
方式二:手动部署(适合深入了解)
- 克隆仓库到本地。
- 安装依赖(Node.js、pnpm)。
- 配置
wrangler.toml或通过命令行设置环境变量(如数据库绑定)。 - 使用
pnpm deploy或wrangler deploy分别部署 Worker 和 Pages。
3. 初始配置
部署完成后,你需要:
- 访问 Pages 项目生成的 URL(即邮箱前端)。
- 按照界面引导,完成管理员账号的初始化设置。
- 在管理后台配置域名、邮箱前缀规则、SMTP/IMAP 代理等。
⚙️ 关键组件与配置
- Worker:核心后端,处理邮件的接收、存储、解析和 API 请求。
- Frontend (Pages):Vue 3 构建的用户界面,包含前台和管理后台。
- Mail Parser WASM:Rust 编写的邮件解析模块。
- SMTP/IMAP Proxy Server:一个可选的 Python 代理服务,让用户能用标准邮件客户端(如 Outlook、Thunderbird)连接。
- 数据库 (D1):存储用户信息、邮件元数据和设置。
- 存储 (R2):用于存储邮件附件(可选 S3 兼容存储)。
重要配置:
- 环境变量:需要在 Cloudflare Workers 和 Pages 中设置必要的环境变量,如数据库 ID、R2 存储桶名称、管理员密码等。
- 域名验证:配置完成后,务必通过
nslookup -qt="mx" your-domain.com等命令验证 MX 记录生效。
🚀 使用方式
- Web 界面:访问你的 Pages 项目 URL,即可注册/登录临时邮箱。
- Telegram Bot:按照文档配置 Bot Token 后,可通过 Telegram 接收和发送邮件。
- 邮件客户端:配置好 SMTP/IMAP 代理后,可使用任何标准邮件客户端访问邮箱。
- AI Agent Skill:项目中包含一个 Agent Skill,AI Agent 可通过它直接调用邮箱功能(例如自动验证邮件)。
❓ 常见问题与注意事项
- 费用:项目基于 Cloudflare 免费套餐,通常可以零成本运行。但需注意 Cloudflare 对 Worker 请求、D1 读写和 R2 存储的免费额度限制。
- SMTP/IMAP 代理:Python 代理服务需要单独部署(推荐使用 Cloudflare Workers 或小型服务器)。
- 域名要求:必须拥有一个域名,并成功配置 Cloudflare 的 Email Routing 功能。
- 安全性:本项目仅供学习和个人使用,请勿用于违法行为。部署时建议启用访问密码或 CF Turnstile 人机验证,防止被滥用。
总结
Cloudflare 临时邮箱项目为希望自建临时邮件服务的用户提供了一个低成本、功能强大的解决方案。部署的核心是拥有一个域名并借助 GitHub Actions 将项目自动部署到 Cloudflare。其完整的 Web 界面、API 和 Telegram Bot 支持,使其不仅是一个临时邮箱,更是一个可集成的邮件处理平台。如果你熟悉 Cloudflare 生态,这将是一个非常有趣的实战项目。
项目地址:https://github.com/dreamhunter2333/cloudflare_temp_email
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 极客的赛博空间 | 专注 AI 与技术分享!
评论








