• 123nhh(我的状态:期待意外的每一天

    前情提要,该项目为一个人鞭策了三天claude的项目,经过了近几日各种注册机的拷打,已经证实了该项目的可部署性以及高并发性,不会写还不会AI嘛(x

    项目地址: 123nhh/tempmail: 支持多域名、自动 MX 记录校验及 Web 管理面板的自托管临时邮箱服务。

    先介绍一下项目特色:

    图片

    webui展示:

    图片

    图片

    图片

    图片

    图片

    图片

    首先,你要拥有的

    - 一台开放25端口的服务器

    - 一个你喜欢的域名

    ok,教程开始,我将使用一台全新的服务器来进行演示,这里ip以66.92..为例

    第一步,确定你的服务器是否能收件

    第一步,已知的可忽略

    运行一下下面的脚本```
    bash <(curl -sL IP.Check.Place)
    ```如果你是新服务器,这时会显示

    图片

    输入y并回车,然后等待即可

    等待一会,然后你会看到下面的界面

    图片

    一般来说,这样的就是能建的

    图片

    这样的就是不能的,然后,让我们进入下一步吧~

    安装docker

    第二步,安装docker,已装可跳过```
    bash <(curl -sL 'https://get.docker.com')
    ``等待一会输入``
    docker --version
    ```提示Docker version ……的就代表已经安装完成了

    如果安装时提示以下内容请更换linux到新版本

    图片

    第三步,克隆仓库

    在终端输入以下命令```
    git clone https://github.com/123nhh/tempmail.git
    cd tempmail
    cp .env.example .env
    ```第四步,更改".env"和"docker-compose.yml"文件

    这里直说需要更改的内容,怎么更改自行搜索,实在不行可以下载到本地改完后再传上去

    如果只是自用的话理论可以不用改,后面去后台关闭注册即可

    打开.env文件,你会看到关于各个端口需要更改的地方(不懂的不需要改,懂了再改)

    这里需要重点更改的如下

    .env```
    POSTGRES_PASSWORD=<改为一个强密码,后续以pgpw替代该密码>
    REDIS_PASSWORD=<改为一个强密码,后续以rdpw替代该密码>

    API_DB_DSN=postgres://tempmail:<pgwd>@pgbouncer:6432/tempmail?sslmode=disable

    API_REDIS_PASSWORD=<rdpw>
    ```docker-compose.yml(理论来说不追求特别安全可以不改,但是如果搭配nginx反代等建议更改,这里不详细说明,文件内已详细说明)

    总结

    图片

    第五步,运行

    在 ~/tempmail 目录下执行```
    docker compose up -d
    ```编译时间略长,静待镜像编译即可(不打算上传镜像,请自行构建)

    后续更改配置文件了重启docker即可(在目录下执行"docker compose down && docker compose up -d")

    显示这个即为构建完成

    图片

    第六步 获取管理员apikey后登录

    在~/root/tempmail下执行```
    cat data/admin.key
    ``然后会获取到以下内容``

    TempMail Admin API Key

    Auto-generated on startup — keep this secret!

    ADMIN_API_KEY=tm_admin_***********
    ```这个"tm_admin_***********"即为你的apikey

    第七步,进入后台

    访问 http://ip 即可

    在这里填写你刚才获得的key即可

    图片

    图片

    第八步,添加域名,这里默认你的域名已经添加进cf了,这里以aba-aba.de举例

    (小声:aba-aba.de是我打算高考完写点教程的地方,但是现在就几篇ai写的文章占位和调试ui什么的,欢迎来看看我的站的ui喵www)

    - 打开cf,添加A解析

    图片

    - 进入系统设置一栏填写你的服务器ip和域名,记得点保存

    图片

    - 打开域名列表栏,在这里就能看到填写提示了(MX解析为必须,TXT解析可选)

    图片

    - 打开cf的域名管理,这里我以mail.aba-aba.de演示

    图片

    然后点下面的保存!!!

    图片

    - 返回临时邮箱页,点击

    图片

    - 填写你加的域名,就是示例的mail.aba-aba.de

    图片

    若域名MX解析未到位则会进入列队

    图片

    出现这个

    图片

    或

    图片

    即为添加完成,返回域名列表进行查看

    图片

    已经完成

    第九步,使用

    在邮箱总览页点击新建邮箱即可,或通过api调用,参见

    图片

    自用记得关闭注册哦

    图片

    把这个关了即可

    FAQ

    Q1:邮箱时间太短怎么办?

    A1:前往"系统设置"内"邮箱有效期(分钟)"处设置

    Q2:我调用API时感觉并发过小怎么办?

    A2:前往.env修改"API_RATE_LIMIT","API_RATE_WINDOW"两条,默认每分钟500次请求

    图片

    Q3:我忘了apikey怎么办?

    A3:管理员key请在~/tempmail/data/admin.key查看,也可看第六步教程;用户key找管理员看

    Q4:这个域名池是什么意思?

    A4:这个域名池参考了"gptmail"的思路,这里更适合个人/团队使用,普通成员也可添加自己的域名进域名池供集体调用

    Q5:用APIkey创建邮箱时创建不了

    A5:检查"系统设置"-"每账户邮箱上限"设置

    webui其实写的也挺详细了,配置不会了丢Agent里问问就行

    最后想说的

    第一次写这种长东西,还是不太会写(((

    如有误解之嫌和不解之处欢迎提问

    主楼
  • Linus_Torvalds

    感谢分享~ 太强了~

    #1
  • feng_limg

    长文感谢~~

    #2
  • ius

    用心了佬 ^-^

    不过标题是不是该加上邮箱的字样 ^-^

    #3
  • kuuhaku

    是不是应该放在3级啊,不过只是临时邮箱的话好像也没事?

    #4
  • 大帅哥

    太强了,大佬

    #5
  • Clancy_Wang

    太强了,感谢分享

    #6
  • Th0m4$

    简单粗暴

    #7
  • hoshino

    太强了 ^-^ ^-^ ^-^ ^-^

    #8
  • 看看need

    mark,感谢分享

    #9
  • daisheng

    感谢分享

    #10
  • 唯有期

    感谢分享,佬友太强了~

    #11
  • LAMCLOD

    太强了,可惜25端口服务器不好找啊

    #12
  • 123nhh(我的状态:期待意外的每一天

    我测试的zouter us

    netcup都有25

    #13
  • 123nhh(我的状态:期待意外的每一天

    可以去收个netcup的1o/2o机挂(?

    #14
  • LAMCLOD

    水回复的我此时羞愧的低下了头(手动表情包)

    #15
  • 123nhh(我的状态:期待意外的每一天

    有笨蛋(x

    #16
  • LAMCLOD

    为害羞的佬留下我的足迹(表情包x1)

    #17
  • 🛡️Rice_R._Rug_💛🍋⭐️💫

    厉害,感恩

    #18
  • 白菜派

    好详细的佬!

    #19

发表回复

登录后回复