Привлекли в первую очередь следующие возможности:
◽️Новый протокол JMAP.
◽️Огромный список бэкендов для хранения почты: RocksDB, FoundationDB, PostgreSQL, mySQL, SQLite, S3-Compatible, Azure, Redis, ElasticSearch. Такого просто нигде не видел.
◽️Полнотекстовый поиск на 17-ти языках. Нигде не видел полный список, но когда выбирал ru, ошибок не получал. Вроде как поддерживается.
◽️Аутентификация через OpenID, LDAP, OIDC, SQL, дополнительно 2FA-TOTP, отдельные пароли для аутентификации приложений.
◽️Всё остальное присутствует в полном объёме - все протоколы TLS, борьба со спамом, многодоменность, права доступа на основе групп, лимиты и ограничения, возможность гибко настраивать все этапы обмена сообщениями на уровне протокола и т.д.
По заявленным возможностям я и платных то серверов таких не найду, не то, что бесплатных. Внешне всё выглядит очень красиво.
Развернул я сервер по инструкции в Docker:
# docker run -d -ti -p 443:443 -p 8080:8080 \ -p 25:25 -p 587:587 -p 465:465 \ -p 143:143 -p 993:993 -p 4190:4190 \ -p 110:110 -p 995:995 \ -v /var/lib/stalwart-mail:/opt/stalwart-mail \ --name stalwart-mail stalwartlabs/mail-server:latestСразу скажу, что не понравилось:
# docker logs stalwart-mailВ выводе пусто. Логи так не посмотреть.
Дальше я начал очень долго возиться с тем, чтобы просто подцепиться к серверу через Thunderbird. Нигде в документации не указано, что для этого нужно. Методом проб и ошибок выяснил, что:
1. Проходить аутентификацию нужно только указав пользователя, а не полный почтовый ящик. Не очень понял, как это будет работать, если у пользователя будет несколько ящиков в разных доменах.
2. По умолчанию сервер запускается без TLS и вроде как работает. Thunderbird автоматом подбирает его настройки без шифрования. Но где-то в глубинах сервера в настройках smtp стоит параметр не разрешать аутентификацию без TLS. Включил TLS, запустил на самоподписанном сертификате, заработало.
3. Правильные настройки, с которыми я в итоге подключился: imap 143 STARTTLS, smtp 587 STARTTLS.
4. Логи сервера, которые можно посмотреть через веб панель администратора вообще никак не помогли решить проблему. Они неинформативны в части ошибок.
5. В веб интерфейсе администратора смешаны бесплатные и платные возможности.
6. Нигде нет простого способа посмотреть, от кого и к кому отправлено письмо, кроме как парсить общий лог.
7. У меня иногда не доставлялись письма от себя к себе. В логах пусто. Не стал разбираться с этой ошибкой.
В итоге я всё худо-бедно настроил, чтобы почта забегала, но потратил много времени. По функциональности и удобству админки ничего плохого не скажу. Реально много всего умеет, но некоторые полезные вещи за денюжку.
Отдельно скажу пару слов про JMAP. Протокол по описанию неплох. Письма и другие сущности обернули в json и отдают по HTTP через запросы к API. Модно и современно, но нужна поддержка клиентов. Особой популярности он пока не приобрёл. Из популярных клиентов поддерживает K-9 Mail, есть плагин для Roundcube.
Кому-то посоветовать сервер этот не могу. Только если вам нужны все его возможности. Он сильно не похож на всё, что я видел до этого. Настройки немного непривычны и нелогичны. Много нюансов. С сервером надо разбираться, сначала тестировать. Он не сказать, что сильно популярен, поэтому искать решение внезапных проблем будет негде. Если он наберёт популярность и некоторый пользовательский опыт, то будет неплохим решением.
⇨ 🌐 Сайт / Исходники
#mailserver


