TGViewer
ServerAdmin.ru ServerAdmin.ru @srv_admin · 32.6K subscribers
Post #2478 11.4K
​​Почтовые сервера условно можно разделить на 3 типа по сфере применения:
◽ для переписки пользователей;
◽ для отправки сообщений с сайтов и веб серверов;
◽ для массовых рассылок.

Один и тот же сервер можно использовать для всех направлений, но это не очень удобно, так как требуется разный дополнительный функционал. Например, для пользователей нужен удобный веб интерфейс и адресная книга. Для отправки с сайта хочется видеть хорошую статистику по отправлениям. А для массовых рассылок очень важен функционал по управлению списками получателей.

Ранее я чаще всего касался темы почтового сервера для переписки пользователей. Сейчас хочу рассказать про сервер для отправки почты с сайта или приложения и частично массовых рассылок. Речь пойдёт про open source проект Postal. Это бесплатный аналог таких сервисов, как  Sendgrid, Mailgun, Postmark и т.д. с возможностью установки на своем железе.

Postal умеет:
Использовать встроенный API для приёма почты к отправке.
▪ Использовать разные домены и учётные записи для отправки.
▪ Собирать и отображать в виде графиков статистику по отправке и получению писем.
▪ Отображать очередь отправки.
▪ Использовать вебхуки для просмотра информации о доставке в режиме реального времени.
▪ Отслеживать корректность настроек DNS для добавленных доменов.
▪ Управлять политиками хранения писем.
▪ Логировать все этапы создания и доставки письма.
▪ Искать письма с заданными параметрами по всему почтовому серверу.
▪ Временно задержать отправку сообщений.
▪ Пересылать входящую почту на другие smtp серверы или почтовые ящики.
Пересылать входящую почту в приложение по HTTP в виде JSON.
▪ Определять спам с помощью SpamAssassin и вирусы с помощью ClamAV.

Почтовый сервер Postal запускается с помощью docker-compose, а настраивается и управляется с помощью набора скриптов. То есть вам не придётся запускать самому контейнеры, указывать переменные и т.д. Достаточно будет передать параметры скрипту, он сам всё настроит и запустит. Процесс установки и настройки описан в документации. Достаточно один раз в консоли всё настроить и запустить. Дальнейшее управление через веб интерфейс. Ходить в консоль больше не придётся. Отдельно нужно будет аккуратно настроить DNS записи, получив информацию о DKIM и SPF записях в веб интерфейсе.

Под капотом у Postal веб сервер Caddy, сервер баз данных MariaDB для хранения информации, RabbitMQ для управления сообщениями между рабочими процессами. Насколько я понял, реализация непосредственно smtp сервера в Postal своя, написанная на Ruby.

Аналогом Postal является Cuttlefish. Более простой сервер для отправки почты с удобным веб интерфейсом. Тоже написан на Ruby, под капотом привычный Postfix.

Сайт / Исходники

#mailserver
  • 👍 69
  • 👎 1
More from @srv_admin
  1. Sep 23, 2026Очередная подборка статей авторов, которые согласились в ней участвовать. Кто не понимает,…
  2. Sep 23, 2026Контейнеры в одном инструменте, виртуалки — в другом, частное облако — вообще отдельная ис…
  3. Sep 23, 2026Расскажу тем, кто не знает, и напомню тем, кто забыл, как я. Не надо в Proxmox в LXC конте…
  4. Sep 22, 2026Недавно случайно заметил любопытную информацию на тему Proxmox VE и новой функциональности…
  5. Sep 22, 2026✔️ Сети для всех — сообщество для тех, кто развивается в сетевом и системном администриров…
  6. Sep 22, 2026Я ранее уже рассказывал, что приобрёл себе домой полноценную серверную платформу на базе S…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →