Поднимаем свою временную почту бесплатно + TG BOT (Firstmail / Notletters)

Поднимаем свою временную почту бесплатно + TG BOT (Firstmail / Notletters)
Всем привет форумчане, уверен 80% из вас хотя бы раз пользовались почтами от Firstmail/Notletters и платили деньги за буквально воздух
f1c3f633-da80-496f-91b7-6d5dfe9c4be9.webp

Сегодня будем поднимать свой Firstmail бесплатно, из расходов только домен который стоит в год от $1

​​

Для абузов, ферм Steam, перепривязки и тд
Как долго поднимать? От силы 10 минут, если вы не совсем хлебушек который только сел за ПК
Учитывая что домен стоит всего $1 за год, который подойдет для Steam, окупится он у вас явно быстро)
Если говорить простыми словами, то это почти полноценный Firstmail/Notletters
Только за $1, а не за каждую почту, единственный минус это IMAP, сам по себе скрипт не поднимает IMAP сервер, но если вам нужно вы можете использовать API которое отдает письма в JSON, что конечно workaround
Но скрипт поддерживает как IMAP так и SMTP, для рассылок, в статье это не указано, так как мне это не нужно.
Если вам нужно изучите, Github скрипта​​

1. Выбрать домен не сложно, просто пишем randomname + mail
Выбор регистратора в целом никак не роляет, я свои домены создавал тут -> https://www.spaceship.com/​​

Как только выбрали домен, очевидно покупать его сразу не стоит, идем в настройки аккаунта Steam и жмем сменить Email
Далее вписываем нашу рандом почту с нашим будущим доменом
Пример: randomname@randommail.space
И далее если домен не нравится Steam он напишет вам что это временная почта, если ошибки нету то можно смело регистрировать домен он будет принимать письма от Steam​​



​​

2. Как только приобрели домен нужно сменить NS на адреса которые вам выдаст CloudFlare т.к почту мы будем хостить именно там​​

Идем на dash.cloudflare.com/sign-up
Заполняем форму регистрации​​


Далее нас спросят как мы будем использовать CloudFlare жмем кнопку "Skip"
Далее на почту придет письмо с ссылкой, жмем на нее и аккаунт готов
После этого попадем в Dashboard​​

2.1 Чтобы сменить NS идем на регистратора своего домена и ищем NS/Nameservers​​

​​

Вписывать нам нужно два NS адреса которые мы получаем на CloudFlare
Жмем "Domains"​​

​​

Жмем "Add Domain"​​


​​

Теперь "Connect a domain"​​

​​

Вписываем наш домен​​

​​

Далее выбираем "Free Plan"​​

​​

Далее CloudFlare выдаст вам 2 NS адреса которые нужно вписать в поля на сайте вашего регистратора​​


​​

Отлично, NS сервера установлен​​

Вы также можете использовать домен ppua
Который можно получить бесплатно имея зарубежную карту с 1 UAH на балансе для проверки, домен выдают на nicua
Срок 1 год, без продлений

ВАЖНО!
Домен ppua не подходит для Steam, для работы со Steam вам все также нужен будет свой личный домен​​

1. Идем на CloudFlare
2. В раздел "Storage & databases" и в нем выбираем "D1 SQLite Database"​​

​​

2.1 Жмем "Create Database"​​


2.2 Вводим любое имя нашей ДБ и жмем "Create"
Запишите данное имя, оно пригодится нам в дальнейшем​​

​​

2.3 После создания вы увидите ID вашей ДБ
Сохраняем его, где вам удобно​​

​​

3. В том же разделе "Storage & databases" выбираем Workers KV
Вводим любое имя и опять же копируем ID​​


1. Идем на CloudFlare
Жмем "Create Token"​​

​​

1.1 Выбираем "Edit Cloudflare Workers"​​

​​

1.2 Листаем страницу ниже,
В пункте "Account Resources" ставим: All Accounts
А в пункте "Zone Resources" ставим: All Zones
и жмем "Continue to Summary"​​

​​

1.3 Теперь жмем "Create Token"​​

​​

1.4 После этого вам выдадут Api-Токен, сохраняем его, ибо в дальнейшем его не дадут посмотреть​​

1. Идем на Github
Жмем "Create Fork"​​

​​

2. Теперь нам нужно включить Actions для нашего форка, чтобы без скачивания Node.Js+wrangler задеплоить наш скрипт используя Github Actions.
Жмем "Actions"​​

​​

2.1 Теперь жмем кнопку
"I understand my workflows, go ahead and enable them"​​

​​

3. Теперь надо настроить Wrangler.toml
Пример берите отсюда Github
Или же
Открываем редактор файлов в нашем форке
И ищем файл
worker / wrangler.toml.template​​

​​

3.1 Копируем данный файл, полностью.
Теперь идем в раздел Settings нашего форка
Далее "Secrets and variables"
Жмем "New Repository Secret"​​


3.2
BACKEND_TOML
Secret == (Содержимое .template которое мы копировали выше, см. скрин)​​


3.3 Теперь нам нужно вписать наши данные
Домены, ID нашей D1 и прочее, более подробнее советую вам самим изучить файл что вам нужно/не нужно, все расписано детально, если возникнут вопросы вы можете спросить у Claude или же любой другой нейронки
Ниже лишь пример что настраивал я, изучите конфиг чтобы потом не деплоить кфг повторно​​

Те строки которые вы редактируйте обязательно убирайте # чтобы раскоменитровать их и они применились в кфг
[assets]
directory = "../frontend/dist/"
binding = "ASSETS"
run_worker_first = true
routes = [{ pattern = "домен.com", custom_domain = true },] Указывайте это если вам нужен Telegram Bot
DEFAULT_LANG = "en" (Ну если вы знаете китайский можете оставлять его конечно)
79ed83c3-bec6-4691-a422-650087a45328.webp

PREFIX = "" Оставляем значение пустым чтобы почты не имели никаких префиксов.
DEFAULT_DOMAINS = ["домен.com"]
DOMAINS = ["домен.com"]
JWT_SECRET = "Строку берем тут JWTGENER"
BLACK_LIST = ""
ENABLE_USER_CREATE_EMAIL = true
ENABLE_USER_DELETE_EMAIL = true
ENABLE_AUTO_REPLY = false
# Для того чтобы сделать вашу почту приватной, для личного использования
ADMIN_USER_ROLE = "admin"
PASSWORDS = ["Пароль"]
ADMIN_PASSWORDS = ["АдминПароль"]
DISABLE_ADMIN_PASSWORD_CHECK = false

d1_databases
binding = "DB"
database_name = "name нашей D1 которую мы создавали ранее"
database_id = "ID нашей D1 которую мы создавали ранее"

kv_namespaces
binding = "KV"
id = "ID нашей KV которую мы создавали ранее"​​

3.4 Теперь добавляем еще один секрет USE_WORKER_ASSETS его значение == true​​

​​

3.5 Также создаем CLOUDFLARE_ACCOUNT_ID == ID вашего аккаунта Cloudflare​​

​​

3.6 Также надо создать CLOUDFLARE_API_TOKEN == API токен который мы создавали в пункте 3

В конечном итоге у нас будет 4 Secret
USE_WORKER_ASSETS
BACKEND_TOML
CLOUDFLARE_API_TOKEN
CLOUDFLARE_ACCOUNT_ID​​

​​

4. Теперь нам нужно обратно в раздел "Actions"
Выбираем Deploy Backend жмем Run Workflow
И еще раз Run Workflow в выпадающем меню
Откроется страница процессов и мы увидим желтый статус == в процессе​​


​​

Теперь ждем 1-2 минуты, и видим заветную запись Complete Job
d2ebc43d-90c8-4059-b296-f6ec193e9d15.webp
​​

​​

Поздравляю, мы уже на финишной прямой, осталось буквально пару действий
d2ebc43d-90c8-4059-b296-f6ec193e9d15.webp


1. Идем на Cloudflare
Видим наш Worker, и его адрес
В конце добавляем к адресу /admin
https://cloudflare_temp_email.USERNAME.workers.dev/en/admin чтобы попасть в админ панель​​

​​

2. Вводим пароль, который мы указывали в пункте 4 в поле
ADMIN_PASSWORDS = ["YourPassword"]
PASSWORDS = ["YourPassword"]
Для доступа к сайту нужен PASSWORDS
А для админ панели очевидно ADMIN PASSWORDS​​

​​

3. Входим в админ панель, и сразу видим ошибку 500
Что наша D1 не инициализирована, не страшно
Идем в Quick Setup и жмем "Initialize Database"​​


4. Теперь нам нужно создать юзера/ов(В случае если вам нужно использовать почту в команде)
Идем во вкладку User, жмем "Create User"​​


4.1 Вводим почту, пароль, жмем Create User​​

​​

4.2 Теперь уберем лимит в 5 почт на юзера
Идем в User Settings и в поле Maximum number of email addresses that can be binded
Ставим 0, жмем Save​​

​​

Отлично, теперь с этим аккаунтом мы будем входить, создавать/удалять почты, читать письма, но из админки нам выходить рано, еще нужно настроить Telegram бота, если вам он не нужен, скипайте данный шаг.​​

1. Идем на Cloudflare
Выбираем наш Temp Mail Worker
Далее жмем Settings​​

​​

1.1 Теперь нам нужно создать секрет с названием TELEGRAM_BOT_TOKEN
В значение пишем токен вашего бота из @Botfаther
И жмем Deploy​​

​​

2. Теперь нам нужно инициализировать бота, и настроить вайтлист для юзеров которые могут получать сообщения, чтобы ваши письма не утекли кому попало
Идем в админ панель, Telegram Bot жмем Init​​

​​

Теперь нам надо настроить чтобы ВСЯ почта, летела к нам в бота, для этого в той же вкладки включаем
Enable Global Mail Push
И пишем ID нашего аккаунта Telegram получить свой ID можно тут @Username_to_id_bot
И жмем Save​​

​​

Отлично запускаем нашего бота /start
И пишем /lang en
чтобы сменить язык на англ​​

​​

По сути уже все готовы для работы, кроме одного, сейчас CF настроен на DROP == Delete всей получаемой почты, нам такое не нужно.
1. Идем на Cloudflare
Выбираем наш домен​​

​​

1.1 Далее жмем Routing Rules​​


1.2 Ставим тумблер на включено, далее жмем три точки и "Edit"​​


Выбираем Send To worker
Далее наш Tempmail и жмем Save​​


Чтобы проверить все ли мы сделали правильно идем на testemail
Вводим созданную в панели почту и жмем Send Test​​

​​

И видим письмо в панели/боте​​



​​

Статья получилась очень большая, надеюсь ее кто-то дочитает до конца)
Учитывая что можно поднять кучу доменов редактируя их в toml пункт 3
И даже продавать, почему нет?)
6d810fb1-9ca7-42cf-8ea1-a357fcfff910.webp

Как это делают ребятки из Firstmail / Notletters
Пишите вопросы, помогу​​

Комментарии 0

Пока нет комментариев. Начните обсуждение.
Войдите, чтобы оставить комментарий.
Назад
Верх