Доступен почтовый сервер Mox 0.0.15

Опубликован релиз проекта Mox 0.0.15, развивающего комплексное решение для обеспечения работы почтовых серверов, включающее все компоненты, необходимые для отправки и получения электронной почты. Предлагаются собственные реализации серверов SMTP и IMAP4, система фильтрации нежелательного контента, а также web-интерфейсы для администратора и пользователей. Код проекта написан на языке Go и распространяется под лицензией MIT.

Целью проекта является создание решения «всё в одном», позволяющего легко запустить рабочий почтовый сервер без трудоёмкой настройки и без необходимости сопряжения между собой различных обособленных сервисов и приложений. Предполагается, что из-за усложнений при развёртывании и сопровождении почтовых серверов потребители отдают предпочтение централизованным email-провайдерам, чем разрушают саму идею электронной почты как децентрализованной службы, образуемой из множества собственных почтовых серверов.

Mox даёт возможность за 10 минут настроить защищённый почтовый сервер для своих доменов, поддерживающий современный стек протоколов и не требующий установки дополнительных зависимостей. Обновление ПО на почтовом сервере сводится к загрузке новой версии mox и перезапуску. Получение и обновление TLS-сертификатов производится автоматически. Для настройки и выполнения задач, связанных с сопровождением, может использоваться web-интерфейс, а для расширенной настройки предоставляется файл конфигурации.

Для исключения проблем безопасности, возникающих при низкоуровневой работе с памятью, при разработке используется язык Go. Для поддержания высокого качества кодовой базы применяется ручное и автоматизированное тестирование совместимости с популярными почтовыми серверами и клиентами, unit- и fuzzing-тестирование, а также исчерпывающее документирование кода.

Основные возможности Mox:

  • Поддержка протоколов SMTP и IMAP4.
  • Использование расширений SPF, DKIM и DMARC для идентификации почтовых доменов, подтверждения полномочий отправки и проверки подлинности сообщений.
  • Отслеживание репутации хостов, доменов и отправителей. Использование баесовского классификатора, DNSBL и серых списков для фильтрации нежелательных сообщений.
  • Поддержка расширений для использования Unicode и национальных алфавитов в именах и доменах.
  • Автоматическое получение TLS-сертификатов в удостоверяющих центрах, поддерживающих протокол ACME, например, в Let’s Encrypt.
  • Поддержка механизмов DANE и MTA-STS для шифрования входящих и исходящих отправлений поверх SMTP с расширением STARTTLS.
  • Встроенный Webmail для чтения и отправки email через браузер.
  • Встроенный web-интерфейс администратора для управления доменами и учётными записями, настройки SPF/DKIM/DMARC/TLSRPT/MTA-STS, просмотра статистики и изменения параметров файла конфигурации.
  • Наличие http-сервера для отдачи статических файлов и перенаправления запросов (обратный прокси).
  • Предоставление HTTP/JSON API для отправки/загрузки писем и получения связанных с доставкой событий.
  • Экспорт метрик для системы мониторинга Prometheus.
  • Поддержка расширений для автонастройки почтовых клиентов (DNS SRV, https://autoconfig.домен, QR-код).

Среди изменений в новой версии:

  • Добавлена поддержка IMAP-расширений:
    • NOTIFY (RFC 5465) для отслеживания появления сообщений,
    • UIDONLY (RFC 9586) для запроса сообщений по UID для снижения нагрузки на сервер.
    • MULTISEARCH (RFC 7203) для поиска в почтовых ящиках,
    • PREVIEW (RFC 8970) для быстрого предпросмотра сообщений,
    • REPLACE (RFC 8508) для замены содержимого в черновиках сообщений,
    • MULTIAPPEND (RFC 3502)
      для добавления нескольких сообщений за один раз,
    • METADATA (RFC 5464) для хранения метаданных,
    • INPROGRESS (RFC 9585) для передачи сведений о статусе выполнения длительных операций,
    • NAMESPACE (RFC 2342) для определения пространств имён почтовых ящиков,
    • WITHIN (RFC 5032) для поиска по временным интервалам,
    • CREATE-SPECIAL-USE (RFC 6154) для создания специализированных почтовых ящиков, таких как «Входящие» и «Отправленные»,
    • SAVEDATE (RFC 8514) для отслеживания времени сохранения сообщения в почтовом ящике.
  • Добавлена настройка для обработки разделителей «+» и «-» в email-адресах (you+anything@example.com и you-anything@example.com).
  • Добавлена настройка для запрета изменения пароля (только автогенерация надёжного пароля).
  • Добавлена настройка для отклонения входящих доставок при возникновении ошибок в SMTP-транзакции.
  • В Webmail добавлена кнопка для загрузки сообщения в формате eml или mbox/maildir в архивах zip/tgz/tar, а также кнопки для пометки почтового ящика прочитанным и создания дополнительных почтовых ящиков.

Источник: http://www.opennet.ru/opennews/art.shtml?num=63115