惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
酷 壳 – CoolShell
酷 壳 – CoolShell
WordPress大学
WordPress大学
小众软件
小众软件
博客园 - 司徒正美
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Jina AI
Jina AI
Hugging Face - Blog
Hugging Face - Blog
博客园 - Franky
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
量子位
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
雷峰网
雷峰网
云风的 BLOG
云风的 BLOG
M
MIT News - Artificial intelligence
F
Fortinet All Blogs
T
Tailwind CSS Blog
Martin Fowler
Martin Fowler
I
InfoQ
The GitHub Blog
The GitHub Blog
有赞技术团队
有赞技术团队
The Cloudflare Blog
罗磊的独立博客

膨胀自留地

使用CloudFlare标记管理功能优雅的使用谷歌分析 四天轻松版北京旅游攻略 Adsense税务居住地证明申请教程:如何申请中国税收居民身份证明以及Google Adsense更新新加坡税务信息教程 常见的 VPS 优化措施 HTML实现table表格移动端自动转为卡片样式 个人网站接入 Google 登录 如何从 GitHub 永久删除泄露的 .env 文件 Cloudflare设置www的域名跳转到不带www的域名 顶级iOS神器!全面解开App Store限制,AssPP Pro保姆级教程 BroadcastChannel将你的 Telegram Channel 转为微博客 Medama开源轻量级网站统计(分析)系统 白嫖一个网站监控面板:uptime-kuma 部署TraffMonetizer利用闲置VPS挂机赚钱 Counterscale-使用CloudflareWorkers部署的免费网站数据统计工具,界面类似umami 封装一个最简单的Axios,避免过度封装! 使用Cron定时更新Hosts解决Gihub无法访问问题 容器化MariaDB/Mysql实现定时备份 JetBrains全家桶许可证服务器怎么找,JetBrains激活教程 图片加速接口:缓存图片,加速访问,解决防盗链 MySQL模糊查询再也不用like+%了,全文索引介绍及使用简介 为什么这么多人推荐你办理流量卡?流量卡怎么赚钱?怎么避坑? 借助Cloudflare Worker实现Google Analytics反代加速,规避广告屏蔽插件的拦截 etcd入门之在Centos上安装部署 Grafana在linux下安装和基本使用入门 Prometheus介绍、安装和基本功能快速入门 无需加速器,油猴插件解锁xbox云游戏 阿里云盘自动每日签到,无需部署,无需服务器 自定义VSCode终端主题样式 一行 CSS 代码实现响应式布局 – 使用 Grid 实现的响应式布局 加不加「/」?Nginx location 路径与 proxy_pass 的规律
如何使用Cloudflare Email Routing创建域名邮箱免费发送邮件
2024-04-28 · via 膨胀自留地

#极限操作 2024-04-28 16:42:00 | 全文 1207 字,阅读约需 3 分钟 | 加载中... 次浏览

👋 相关阅读


用过 CloudFlare 的都知道,他家的 mail 服务是可以将接收到的邮件转发到指定邮箱用来实现域名邮箱的收件服务的,但是这种方式只可以接收,不能发送邮件。

偶然间看到一个开源项目,实现了使用域名部署临时邮箱,研究了一下发现,发件服务使用的是 CloudFlare 的 Worker 实现的,个人能力有限,网上搜索了一番,总结了几篇文章的教程,成功的实现了域名邮箱的发件。

绑定域名

首先需要将域名绑定到 CloudFlare 上,这一步想必不用多说了吧,会的都会。

启用电子邮件路由

官方教程:https://developers.cloudflare.com/email-routing/get-started/enable-email-routing/

1、进入 CloudFlare 控制台,选择网站,找到你想要添加域名邮箱的域名,点击进入

图片alt

2、点击侧边栏 电子邮件》电子邮件路由,然后点击开始使用

图片alt

3、设置域名邮箱前缀和转发邮箱

图片alt

4、验证转发邮箱,我这里直接用的登录 CloudFlare 的邮箱,直接显示已验证

图片alt

5、添加解析记录

图片alt

创建 Worker

Work 代码从这里复制即可:https://gist.github.com/ihsangan/6111b59b9a7b022b5897d28d8454ad8d

直接粘贴部署,一气呵成,不需要修改什么

准备 DKIM 私钥(可选,非必须)

DKIM 是一种电子邮件认证技术,可以验证邮件的发送者身份。

在终端执行下面的命令,生成 DKIM 私钥,参考 Adding-a-DKIM-Signature

openssl genrsa 2048 | tee private_key.pem | openssl rsa -outform der | openssl base64 -A > private_key.txt

echo -n "v=DKIM1;p=" > dkim_record.txt && openssl rsa -in private_key.pem -pubout -outform der | openssl base64 -A >> dkim_record.txt

这两条命令会生成 3 个文件:

  • private_key.pem:私钥文件
  • private_key.txt:私钥文件,base64 编码
  • dkim_record.txt:DKIM 记录

其中 private_key.txt 文件中的内容就是 DKIM_PRIVATE_KEY 的值,如果想要配置的话,发件的时候需要这个值。

配置域名解析

1、进入 Cloudflare 托管域名控制台,选择你的域名 -> 点击 DNS,接下来,需要添加 3 条 TXT 记录并修改 1 条 TXT 记录

图片alt

新增的如下:

类型 名称 备注
TXT _dmarc v=DMARC1; p=reject; adkim=s; aspf=s; rua=mailto:YYY; ruf=mailto:YYY pct=100; fo=1; 固定值,直接粘贴
TXT mailchannels._domainkey v=DKIM1;p=MIIEpQIBAAKCAQEA... 这一条可以不配置,值为上一步 dkim_record.txt 文件的内容
TXT _mailchannels v=mc1 cfid=yesmore.workers.dev 将其中的 yesmore 修改为你的 Worker 账号名称,不知道的可以参考下边截图

图片alt

需要修改的如下(TXT记录值为 example.com 即你的域名的那条):

类型 名称 备注
TXT example.com v=spf1 include:_spf.mx.cloudflare.net include:relay.mailchannels.net ~all 把值替换为这个

最后一共 4 条 TXT 记录:

图片alt

如果配置了 DKIM,可以在 dkim-record-checker 验证 DKIM 记录是否配置成功。

验证发送

方法一:打开网页 https://<sender-name>.<your-name>.workers.dev/submit 根据表单填写内容吗,验证是否可以正常发送

图片alt

方法二:使用 API 发送

请求地址 https://<sender-name>.<your-name>.workers.dev 请求方法 POST 请求体:

{
  "from": {
      "email": "sender@example.com",
      "name": "发送者"
  },
  "personalizations": [
    {
      "to": [
        {
          "email": "example@gmail.com",
          "name": "接收者"
        }
      ]
    }
  ],
  "subject": "邮件标题",
  "content": [
    {
      "type": "text/plain",
      "value": "邮件内容"
    }
  ]
}

成功的话会返回一个 null,失败的话会返回报错信息,根据报错信息 google 一下

图片alt

VIA

oiov/vmail: 📫 An open source temporary email tool. 只需一个域名部署临时邮箱,支持收发邮件,多域名邮箱配置,密码找回。 https://github.com/oiov/vmail

如何使用Cloudflare Email Routing 免费发送邮件 - 软件分享 - LINUX DO https://linux.do/t/topic/47025

vmail/docs/send-tutorial.md at main · oiov/vmail https://github.com/oiov/vmail/blob/main/docs/send-tutorial.md


×