临时邮箱教程

此为临时邮箱,如果你会给你的域名一直续费,那么你可以一直用你自己的域名邮箱,如果你只是年抛域名(用了一年直接抛弃)那么请不要拿它注册重要的平台,因为我知道很多域名二次续费很贵,各位在购买域名的时候,也请看看续费域名的价格,当然如果是年抛,就无所谓了

教程看前说明

目前这篇教程只会分成两部分

域名购买

域名的购买,你可以在腾讯云、阿里云或者能提供域名注册的云服务商购买,我这里还是用腾讯云,因为我的实名信息在上面已经有了,买起来方便,这次起个域名etca.me如果你要长期使用该域名,可要看清楚续费价格了哦~

我这里就挑便宜的,买个年抛域名来写教程,域名购买我可不教了,实在不会就查查吧!

开始前的准备

域名准备

一个域名,我在此使用NameCheap白嫖的学生域名

Cloudflare账号

如果你没有,就请去赛博大善人这注册一个账号,注册没什么验证的,很方便

Connect, protect, and build everywhere

cloudflare_temp_email 项目地址

GitHub - dreamhunter2333/cloudflare_temp_email: CloudFlare free temp domain email 免费收发 临时域名邮箱 支持附件 IMAP SMTP TelegramBot

CloudFlare free temp domain email 免费收发 临时域名邮箱 支持附件 IMAP SMTP TelegramBot

项目原作者: @awsl

项目原文档: 临时邮箱文档

请记得给项目点个star!

第一部分,将域名托管到Cloudflare

第一部分,是教你如何把域名托管到Cloudflare并且配置如何用自己的域名接收邮件,转发到自己常用的邮箱

将域名交给Cloudflare托管(教程以namecheap为例,其它云服务商大同小异)

在这之前,请登录Cloudflare并把你的语言设置成简体中文与教程同步,在右上角

把你自己的域名填上,这里我填的是Github学生优惠白嫖的域名

然后选择计划,FREE即可

然后来到你的域名管理平台的后台,添加CloudFlare的DNS(这里还以NameCheap为例)

其中的dns服务器地址每个人的可能不同,请大家自行复制即可

关于namecheap的学生优惠白嫖和ssl证书设置教程可以参考:

Github免费域名申请到使用【学生优惠专享】-CSDN博客

解析完成后点击立即验证然后稍等几分钟

如果提示这样就可以进行下一步辣:

配置电子邮件路由

在此说明,如果你不想部署临时邮箱项目,你只是想拥有一个自己的临时域名邮箱,自己用,只做接收邮件即可的话,那么按接下来的配置完成后,就不用继续往下了,你就可以用你的邮箱去注册你想注册的平台,它会把邮件转发至你配置的常用邮箱,举个例子,例如我的域名etca.me

我的常用邮箱是:xxxx@gmail.com

那么xiaohuang@etca.me、linuxdo@etca.me、bbb@etca.me、neo@etca.me都会转发到xxxx@gmail.com

这就意味着,无论前缀是什么*@etca.me(*号代表所有),都会转发到你的常用邮箱,如果你只是想这样,那么按接下来的配置完即可~

【目标】输入框里请填写你自己的邮箱地址(可以收到邮件的邮箱地址),填写后点击【创建并继续】接下来你会在你的邮箱里收到一封验证邮件,打开地址就可以完成验证了

在设置里有:

然后点击保存即可

大家此时给自定义地址发邮箱看看能不能在目标地址查看收到邮件

点击Back to Domains

回到主页创建一个随意名字的数据库

打开项目的 db/schema.sql 文件复制SQL

直达: cloudflare_temp_email/db/schema.sql at main · dreamhunter2333/cloudflare_temp_email · GitHub

点击控制台粘贴执行回复成功即可

完成之后回到概述刷新一下ctrl+r,看到标数量是10就行了

然后创建KV随便起一个名

创建 Workers 部署 cloudflare_temp_email 后端

名字随便填

添加绑定数据库

注意:这里把变量名称固定填DB

点击添加绑定

再添加一个KV空间

还是,这里的变量名必须是KV,不可以是其他,连接的KV空间选择刚才填的那个就行

配置变量参数

有非常非常多的参数,但不是所有参数都要配,这里给出的都建议配置!

可以一次配置多个,你可以一次性配置好然后点击部署!建议直接复制粘贴!

类型记得改成教程里说的参数类型,不然可能失效哦!

以下是参数名和参数示例以及解释

DOMAINS

参数类型:JSON

单个域名示例推荐

1
2
3
4
[
    "etca.me"
]
【这只是示例记得改成你自己的域名】

多个域名示例

1
2
3
4
[
    "awsl.uk",
    "example.com"
]

解释:临时邮箱域名列表,比如我只有一个,我就填一个就行,多个就以JSON数组的方式添多个


DEFAULT_DOMAINS

参数类型:JSON

留空示例(未登录用户什么都没得用)推荐

1
[]

给一个域名(未登录用户也可以以这个域名创建邮箱地址)

1
2
3
[
    "你的域名.com"
]

解释:直接留空,未登录的用户或者无角色的用户可用的域名列表,直接为空就行,如果你想给未登录的用户有域名用的话,就配置域名


DISABLE_ANONYMOUS_USER_CREATE_EMAIL

参数类型:文本

1
true

解释:设为true后,未登录的匿名用户无法创建邮箱,必须登录才能创建


JWT_SECRET

参数类型:文本

在线生成一个: https://www.librechat.ai/toolkit/creds_generator

1
1c3fa6d797b84a01e65e8a37710f2e0fd5acb91ad993a798544e57161a44f944不要用这个不要用这个,自己去生成,不要直接复制这个!

解释:JWT签名密钥,用于生成登录凭证和鉴权


ADMIN_PASSWORDS

参数类型:JSON

可以多个也可以单个

1
2
3
[
    "mypassword123"
]
1
2
3
4
[
    "mypassword123",
    "aaaabbbblinuxdo"
]

解释:Admin管理后台的登录密码,不配置的话无法登录后台管理


ENABLE_USER_CREATE_EMAIL

参数类型:文本

1
true

解释:是否允许用户创建邮箱地址,不配置默认不允许,两个值truefalsetrue就行


ENABLE_USER_DELETE_EMAIL

参数类型:文本

1
false

解释:是否允许用户删除邮件消息,我一般都是默认false随自己的想法配置哈


USER_ROLES

参数类型:JSON

举例,例如我想让vip使用xxx.love,admin使用aaa.love,这样就可以隔离不同的角色用不同的域名了

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
[
    {
        "domains": [
            "xxx.love"
        ],
        "prefix": "",
        "role": "vip"
    },
    {
        "domains": [
            "aaa.love"
        ],
        "prefix": "",
        "role": "admin"
    }
]

不过在我们这肯定都是一样的,我们没有配置多个域名,推荐

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
[
    {
        "domains": [
            "etca.me"
        ],
        "prefix": "",
        "role": "vip"
    },
    {
        "domains": [
            "etca.me"
        ],
        "prefix": "",
        "role": "admin"
    }
]

解释:配置用户的角色,及角色可以使用的域名列表


ADMIN_USER_ROLE

参数类型:文本

1
admin

解释:可访问admin管理后台的角色名,也就是说用户被赋予这个角色名后,登录就有了管理后台的权限


ENABLE_AUTO_REPLY

参数类型:文本

1
false

解释:否允许自动回复邮件,这个直接false就行


请按我上面给的参数配置好!我给出来的请都配好!

配置好后一共是10个参数,数数哈

直接在这里复制粘贴过去哈

1
nodejs_compat

从 Github 的 Releases 中下载最新版本的 Worker.js

记得给作者点star!

项目 Releases 直达: Releases · dreamhunter2333/cloudflare_temp_email · GitHub

把最新的worker.js拖进去

然后ctrl+s保存,保存失败就手动复制粘贴替换

然后点部署,提示版本已保存就是成功了

如果刷新后是ok,恭喜你,后端部署成功,但还没有结束,还需要配置自定义域!

配置自定义域

你可以直接按我给的来,当然域名改成你自己的!

1
apimail.你的域名.com

这时候可以试着访问,如果是OK就没问题了

如果访问没有显示ok,那就晚一点再去试试!

重新配置域名电子路由

如果你之前配置了**Catch-all**到你的常用邮箱的话,这一步是必定要配置的!否则你的域名邮箱站点是收不到任何邮件的!

回到首页

部署前端页面

我们在上一步不是配置了自定义域吗?这样我们就可以通过自己的域名访问到后端接口了,而不是Cloudflare提供的域名,以我的为例,配置的是apimail.etca.me

那么我们接下来生成前端代码的要填的就是

1
https://apimail.etca.me 这是我的后端地址!请填自己的后端地址,并且记得用https!不要复制用我的!用你自己搭建的!

生成前端页面代码地址: Cloudflare Pages 前端 | 临时邮箱文档

生成前端文件后下载,回到CF主页再次新建一个worker

选择upload files

这里的未找到处理改成single-page-application,这样刷新就不会出现404了!一定要配!名字记得随便给个~

然后添加前端的自定义域名

添加后即可访问,没反应就稍等一下

如果成功登录,那么恭喜你!部署成功!

注:至此e朝e夕社团邮箱站已经部署完毕,地址:

mail.etca.me

各位有临时邮箱需求的社员可以在内部群向管理员索要,石院其他有临时邮箱需求的同学也可以向temail@etca.me发送申请获取登录凭据