«Альтернатива Mailtrap» — это три разных запроса от трёх разных людей. Один упёрся в лимит бесплатного тарифа посреди релиза. Второму нельзя держать тестовые payload'ы на чужих серверах. Третий просто не может достучаться до коммерческой песочницы из своей сети или региона — блокировки по IP случаются и у SaaS. Правильный ответ для каждого свой, поэтому ниже — честное сравнение: инструменты, которые вы запускаете сами, и песочницы-сервисы, — плюс чек-лист переезда, который реально занимает десять минут.
Если self-hosting обязателен, короткий ответ — Mailpit: бесплатный, открытый, один контейнер, активно развивается и ближе всего к роли «замена MailHog». Если обслуживать не хочется вообще — читайте дальше, для этого и сделан этот инстанс.
Почему вообще ищут альтернативу
- Счётчик. Бесплатные тарифы коммерческих песочниц считают письма, инбоксы или пользователей, а тестовый прогон на каждый пуш такие лимиты выедает за день. Здесь счётчика нет: ограничения — размер письма и срок хранения.
- Где лежат тестовые письма. Всё, что уходит в облачную песочницу, хранится на чужих серверах: заголовки, ссылки, вложения — включая письмо, куда кто-то скопировал реальные данные из продакшн-шаблона.
- Доступность. Блокировки по IP, региональные ограничения и проверки аккаунтов случаются. У приватного инстанса такого слоя перед собой нет.
- SMTP и вебхуки в одном месте. Половина отладки — вообще не почта, а колбэк от провайдера. Ловушка, которая умеет и то и другое, экономит один аккаунт, один дашборд и один набор доступов.
Варианты в сравнении
| Вариант | Как запускается | Цена | Где лежат письма | Кому подходит |
|---|---|---|---|---|
| Mailpit | сам: один бинарник или Docker-образ | бесплатно (MIT) | ваш хост/том | тем, кто хочет владеть инструментом; современная замена MailHog |
| smtp4dev | сам: .NET-бинарник или Docker | бесплатно | ваш хост | командам с Windows |
| MailHog | сам, но проект заброшен | бесплатно | ваш хост | только если он уже стоит — иначе миграция |
| Mailcatcher (Ruby) / MailDev (Node) | сам | бесплатно | ваш хост | Ruby- и Node-командам, которым нужен инструмент внутри своего стека |
| Коммерческие песочницы (Mailtrap и другие) | у вендора | бесплатный тариф, далее за письма/инбоксы/юзеров | серверы вендора | тем, кому нужны SSO, общие инбоксы, поддержка и SLA |
| Этот инстанс | ведёт оператор, приватно для своих пользователей | бесплатно, без счётчика | один приватный хост | проектам, которым нужны SMTP и вебхуки без обслуживания |
Два факта, которые стоит проверить перед выбором. Первый: MailHog — то, чем пользовалось большинство, — заброшен, и в README самого Mailpit прямо написано, что MailHog «больше не поддерживается и не получал обновлений и исправлений безопасности уже несколько лет». Второй: Mailpit активно развивается, принимает письма по SMTP, отдаёт REST API, умеет проверку HTML, ссылок и «спамности», опциональный POP3 и автоматическую очистку (по умолчанию хранит последние 500 писем). Тарифы вендоров меняются часто, поэтому цифр здесь нет: смотрите страницу выбранного вендора в день решения.
Как выбирать по требованию, а не по хайпу
| Требование | Что подходит |
|---|---|
| «Тестовые данные не должны покидать нашу инфраструктуру» | Mailpit или smtp4dev на своём хосте |
| «Никто в команде не хочет обслуживать почтовый сервер» | этот инстанс или коммерческая песочница |
| «Отдельные инбоксы на разработчика, ссылки шаринга и вебхуки в одном месте» | этот инстанс |
| «CI должен проверять настоящее MIME-письмо» | любой вариант — для приложения это просто хост и порт |
| «Только Windows на машинах разработчиков» | smtp4dev или Docker-образ Mailpit |
| «Нужны SSO, журнал аудита и договор поддержки» | коммерческая песочница |
Что даёт этот инстанс
- Один приватный хост, без копии у третьих лиц. Письма и payload'ы вебхуков лежат в базе этого инстанса на его собственном сервере. Ни аналитики, ни почтового вендора, ни внешней очереди в цепочке нет.
- Нет лимитов по счётчику. Никаких тарифов «за письмо» или «за пользователя». Единственные ограничения — диск и срок хранения, который задаётся одним параметром.
- noindex везде. Ссылки шаринга, перехваты вебхуков и все страницы приложения отдают
noindex, nofollow, noarchive, поэтому краулер не подхватит тестовое письмо с похожим на настоящее адресом. - Один адрес для SMTP и вебхуков. Направьте приложение и провайдеров на один хост — работает и для локальной разработки, и для CI, и для staging.
- Машиночитаемый вывод. Read-only ссылка шаринга умеет отдавать JSON, поэтому скрипты и ИИ-ассистенты проверяют письма без скриншотов (см. гайд про ИИ).
Чем вы платите
- Это один хост. Нет вендорского SLA, резервирования по регионам и службы поддержки: если хост недоступен, инстанс недоступен для всех, кто им пользуется.
- Поддержка — это оператор инстанса. Обновления, бэкапы и сертификаты делает тот, кто инстанс ведёт. Обычно это плюс (вам нечего обслуживать), иногда — ограничение (нет круглосуточной реакции, журнала аудита и SSO).
- Self-hosting невозможен. Код инстанса не распространяется, свою копию вы развернуть не можете. Если self-hosting обязателен для ваших процессов — этот инструмент не подходит, см. раздел ниже.
- Общая судьба по замыслу. Все пользователи инстанса делят его диск, срок хранения и аптайм.
Рядом
| Коммерческая песочница | Self-hosted (Mailpit, smtp4dev) | Этот приватный инстанс | |
|---|---|---|---|
| Цена | Бесплатный тариф, далее за письма/юзеров | Бесплатно, ваши серверы | Бесплатно, без счётчика |
| Где данные | Серверы вендора | Ваши серверы | Один приватный хост |
| Сторонняя аналитика | Обычно есть | Нет | Нет |
| Хранение | Политика вендора | Настройки хранилища и очистки | Настройка (DATA_RETENTION_DAYS) |
| Ссылки шаринга | Есть | Делаете сами | Есть, со сроком и отзывом |
| Индексация тестовых данных | По-разному | Не применимо (локально) | Явный noindex везде |
| Машинный экспорт | Обычно API-ключ | REST API | Токен шаринга отдаёт JSON |
| Командные функции | SSO, роли, аудит (платно) | Нет | Базовые: аккаунты, роль админа, ссылки |
| Кто обслуживает | Вендор | Вы | Оператор инстанса |
| Работает без открытых портов | Да | Да | Да |
Бесплатно и платно: чего на самом деле стоит «бесплатно»
Здесь ничего не считается по счётчику — в этом вся разница. Бесплатный тариф коммерческой песочницы — это объём, который активный тестовый прогон рано или поздно выест; self-hosted ловушка бесплатна, но требует контейнера, тома, пути обновления и человека, который заметит, что она остановилась; этот инстанс — посередине: без счётчика и без обслуживания с вашей стороны, в обмен на общий хост со всеми остальными пользователями.
Переезд с коммерческой песочницы за десять минут
- Создайте инбокс здесь и перенесите хост, порт, логин и пароль в staging-окружение. Старые значения оставьте закомментированными на день.
- Отправьте одно письмо из приложения и убедитесь, что оно появилось в дашборде — с заголовками, HTML-телом и вложениями.
- Повторите для тестового окружения: тот же инбокс или отдельный на каждую среду.
- Для вебхуков: создайте URL здесь, зарегистрируйте его у провайдера (Stripe, GitHub, Telegram), вызовите одно событие и уберите старый эндпоинт после первой успешной доставки.
В коде приложения менять ничего не нужно: это по-прежнему SMTP на хосте и порту. Переезд на self-hosted инструмент — те же четыре шага, меняются только хост и порт.
Что особенно актуально в России и Беларуси
- Оплата. Провести оплату зарубежного SaaS картой получается не всегда, а бесплатный тариф упирается в лимиты быстрее, чем хотелось бы. У этого инстанса тариф один — бесплатный, без счётчика по письмам.
- Доступность. Блокировки по IP и региональные ограничения у коммерческих песочниц случаются; приватный инстанс и self-hosted инструмент от них не зависят.
- Язык. Интерфейс здесь двуязычный: переключатель в шапке, выбор запоминается в профиле. Документация — на русском, гайды переведены полностью.
Если self-hosting обязателен
Тогда ставьте Mailpit: Docker-образ или один статический бинарник, UI на порту 8025, SMTP на 1025, REST API для автотестов и активно развивающийся проект. smtp4dev — равноценный выбор, если ваша команда ближе к .NET/Windows. Считайте реальную стоимость честно, она не нулевая: обновления, бэкапы, место на диске, продление сертификатов и мониторинг становятся вашими — как и ночной звонок. Эти инструменты хороши; эта страница просто не должна притворяться одним из них.
Что дальше
- Как тестировать отправку писем, ничего не отправляя — четыре шага настройки, которые работают с любым из перечисленных инструментов.
- Как ловить вебхуки локально без ngrok — если проблема в колбэке, а не в письме.
- Лимиты этого инстанса — размер письма, вложения, срок хранения и квоты одной таблицей.
- Приватность и ваши данные — что хранится, как долго и как это удалить.