Home » Telegram » Postal — почтовый сервер для отправки почты с сайта

Postal — почтовый сервер для отправки почты с сайта

Почтовые сервера условно можно разделить на 3 типа по сфере применения:

Онлайн-курс по устройству компьютерных сетей

На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
  • для переписки пользователей;
  • для отправки сообщений с сайтов и веб серверов;
  • для массовых рассылок.

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

Ранее я чаще всего касался темы почтового сервера для переписки пользователей. Сейчас хочу рассказать про сервер для отправки почты с сайта или приложения и частично массовых рассылок. Речь пойдёт про 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.

⇨ Сайт: https://docs.postalserver.io,  исходники: https://github.com/postalserver/postal

Почтовый сервер Postal

Автор Zerox

Владимир, системный администратор, автор сайта. Люблю настраивать сервера, изучать что-то новое, делиться знаниями, писать интересные и полезные статьи. Открыт к диалогу и сотрудничеству. Если вам интересно узнать обо мне побольше, то можете послушать интервью. Запись на моем канале - https://t.me/srv_admin/425 или на сайте в контактах.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.
Используешь Telegram? Подпишись на канал автора →
This is default text for notification bar