Относительно недавно у группы компаний Астра появился свой почтовый сервер RuPost, который совместим со всем стеком продуктов группы компаний. Я изучил этот программный продукт, развернул на своём оборудовании, чтобы рассказать о нём и наглядно продемонстрировать установку и базовую настройку. Сначала кратко расскажу, что он из себя представляет, а затем разверну сам сервер и подключу к нему клиентов.
Введение
В сложившихся условиях международных санкций и невозможности приобрести некоторые привычные программные продукты многие компании попали в затруднительную ситуацию. Наиболее популярным, функциональным и удобным для конечных пользователей почтовым сервером является Microsoft Exchange. ГК Астра поставили себе задачу подготовить программный продукт, который сможет насколько это возможно в текущих условиях заменить продукт ушедшего с российского рынка Microsoft. Думаю, все прекрасно понимают, что задача эта простого решения не имеет, так как на рынке в целом не так много конкурентов многим продуктам Microsoft, если вообще есть. Наглядный пример такого продукта - Active Directory. С почтовым сервером Exchange похожая история. Заменить его очень трудно, так как он интегрирован в весь стек сервисов и пользовательских программ Microsoft.
ГК Астра выпустили свой почтовый сервер RuPost. Они постарались сделать его простым в установке и удобным в управлении, чтобы оставить низким порог входа для технических специалистов, которые будут с ним работать. И при этом наполнить функциональностью, позволяющей заменить Exchange максимально быстро, выполнив миграцию. Она может быть как сразу полной, если это возможно, так и частичной на время перехода с одного почтового сервера на другой. Специально написанный плагин для MS Outlook обеспечит корректную работу с почтой, календарём и адресными книгами на сервере RuPost.
Возможности RuPost
Архитектура
Начну с самого для меня интересного — на базе чего построен этот сервер. Разработчики не скрывают, а прямо пишут состав своей системы, в основе которой лежат open source продукты:
- HAProxy - используется для балансировки нагрузки и отказоустойчивости при построении кластера высокой доступности.
- Postfix - ядро почтового сервера, занимающегося непосредственно получением и отправкой почты.
- Dovecot - imap сервер для доступа пользователей к почтовым ящикам.
- Nginx - веб сервер для работы почтового клиента с доступом через браузер.
- SOGo+ - веб клиент для работы с почтовым сервером, обеспечивающий работу в том числе с календарями и адресными книгами.
- Memcached - используется для кэширования в нагруженных системах.
Управляет всеми этими компонентами в рамках единого почтового сервера или кластера серверов самописная система управления RuPost. С её помощью управление возможно как через браузер, так и CLI (интерфейс командной строки).
Лично мне было неожиданно увидеть все эти компоненты в системе. Не могу судить, хорошо или плохо для конечного продукта, что он собран из open source компонентов. Я каждый из них хорошо знаю, так что конкретно мне кажется это существенным плюсом для эксплуатации. Могу в любой конфиг заглянуть, посмотреть логи, настроить какой-то внешний мониторинг или анализ логов. Собственно, я всё это делал в процессе настройки. Руками ничего не трогал, но конфиги все смотрел. Было интересно узнать, как всё организовано. Сразу скажу, что в целом всё стандартно, без экзотики. Все конфиги на своих привычных местах, формат понятен и читабелен. Особенно люблю формат логов Postfix и Dovecot за их информативность. Всегда можно по логам решить проблемы с ошибками или движением писем.
Основные возможности
- С помощью RuPost можно поднять отказоустойчивый кластер с возможностью вертикального и горизонтального масштабирования. Реализуется средствами HAProxy, кластера СУБД и кластера системы хранения. Сами ноды почтового сервера легко масштабируются до нужных объёмов.
- Поддержка из коробки интеграции с продуктами информационной безопасности от Kaspersky, Dr.Web, InfoWatch. Так как в основе почтового сервера Postfix, используется привычный протокол milter.
- Хранение почты в формате maildir либо локально на сервере, либо на подключенных по NFS томах.
- Автоматическая установка системы. Просто загружаете на сервер deb пакет и устанавливаете его. Отвечаете на насколько простых вопросов конфигуратора и затем переходите в веб интерфейс. Основная часть настроек выполняется там. Некоторые настройки можно сделать только через CLI, которые связаны больше с вводом в эксплуатацию. Постоянная работа с сервером и пользовательскими данными ведётся через веб интерфейс.
- Встроенная система мониторинга и самодиагностики (очень простая со статусом служб и основных ошибок).
- Настройка системы выполняется на основе шаблонов конфигураций, которые можно готовить заранее, сохранять, выгружать. Есть несколько готовых шаблонов от разработчиков. Формат шаблонов YAML. В процессе эксплуатации сервера ведётся история изменения конфигурации с возможностью отслеживания кто и что делал. Отдельно работать с конфигурацией каких-то компонентов, типа postfix или dovecot не придётся. Сервер или кластер серверов в плане управления ведёт себя как единое целое.
- Механизм миграции с сервера Microsoft Exchange, плагин для MS Outlook для работы с календарями и адресными книгами.
- Встроенный веб клиент на основе SOGo, который разворачивается автоматически с сервером и сразу готов к работе.
- Настольный клиент RuPost Desktop и мобильный клиент WorksPad.
- Интеграция и одновременная работа с несколькими службами каталогов – ALD Pro, Active Directory, FreeIPA.
- Архивные папки, хранилище записей, квоты на почтовые ящики пользователей, множество доменов, алиасы почтовых ящиков, списки рассылок.
Миграция с сервера Microsoft Exchange
Отдельно расскажу про миграцию с Microsoft Exchange, так как это актуально и болезненно для компаний, которые вынуждены от него отказываться.
RuPost поддерживает как полную, так и частичную миграцию, когда оба сервера работают одновременно с одним и тем же почтовым доменом. Реализуется эта схема с участием ещё одного релей сервера, роль которого может выполнять Excchange сервер, если нет возможности установить отдельно. Работает это примерно так:
- Применяется готовый шаблон для RuPost, подготовленный для интеграции Microsoft Exchange.
- В Microsoft Exchange необходимо настроить Receive Connector с разрешением на получение входящих писем от анонимных пользователей от узла RuPost. В свою очередь, RuPost регистрируется в Exchange как Send Connector типа Smart Host.
- RuPost будет отправлять корреспонденцию пользователям внешних почтовых доменов через внешний релей. Упомянутый релей должен получать почту от узла RuPost без прохождения аутентификации. Если в организации отсутствует внешний релей-сервер, в этом случае нужно настроить Microsoft Exchange в виде релей-сервиса для сервера RuPost.
- На время сосуществования двух почтовых систем, при необходимости создания новых почтовых ящиков в RuPost необходимо создать новый почтовый ящик в Microsoft Exchange, а затем выполнить миграцию созданного ящика в RuPost используя RuPost Migration Tool.
Установка RuPost
Далее я на практике покажу, как пошагово выполнить установку и настройку почтового сервера RuPost. Продемонстрирую только базовые настройки, необходимые для получения и отправки почты. У сервера много возможностей и режимов работы, которые рассмотреть все в рамках обзорной статьи не представляется возможным. Я покажу как быстро развернуть и оценить типовую функциональность стандартного почтового сервера.
Предварительные требования
Почтовая система RuPost поставляется в виде deb пакета для установки на операционную систему Astra Linux Special Edition (ALSE) 1.7 и только на неё. В документации в списке поддерживаемых ОС упоминается только она. В своём тестовом окружении я использовал ALSE в редакции базового уровня защищённости "Орёл".
RuPost использует домены LDAP для аутентификации пользователей. Поддерживаются три варианта:
- ALD Pro
- FreeIPA
- Microsoft AD
У меня на тестовом стенде уже был развёрнут Microsoft Active Directory, так что я буду использовать его. Каких-то принципиальных отличий в работе самого почтового сервера в зависимости от типа LDAP каталога нет. Достаточно создать пользователя с правами на чтение данных о пользователях из каталога и подключить каталог к RuPost, используя эту учётку. Служб каталогов может быть подключено несколько. На базе зарегистрированных в системе служб каталогов строится корпоративная адресная книга, которая автоматически доступна пользователям системы. По ходу дела покажу, как всё это подключать и настраивать.
Информация о настройках системы и пользователях (адресные книги, календари, настройки интерфейса и т.д.) хранится в базе данных PostgreSQL. Она может быть как локальной, так и внешней. Если база данных локальная, то установщик сам создаст необходимого пользователя и базы, если удалённая, то нужно будет это сделать вручную по инструкции.
Настройка DNS
Для корректной работы почтового сервера нужно много внимания уделить правильной настройке DNS записей. Без правильной наcтройки DNS нормально работать сервер не будет. Вернее, работать то он будет, но ваша почта может улетать в спам у принимающей стороны. Неправильная настройка DNS всегда прибавляет очень много баллов для любого антиспам фильтра. Но есть нюанс. Не обязательно, что именно ваш почтовый сервер будет отправлять почту в интернет. Для этого можно воспользоваться почтовым релеем, который будет принимать почту от вас и пересылать дальше. В таком случае настройки DNS непосредственно самого сервера RuPost сильно упрощаются и сводятся только к указанию корректного FQDN имени.
В общем случае для почтового сервера, который сам занимается отправкой и получением почты из интернета необходимо настроить 3 основных DNS записи:
- A запись для имени почтового сервера
- MX запись, которая будет указывать на dns имя почтового сервера, указанного в А записи
- PTR запись, которая относится к вашему IP адресу, которая должна резолвить внешний IP адрес вашего почтового сервера в его A запись.
То есть в идеале, к примеру, у вас имя сервера mail.rocky-linux.ru и его IP адрес 111.222.333.444, который указан в А записи. В MX записи указано имя mail.rocky-linux.ru, и в PTR записи к IP адресу 111.222.333.444 указано доменное имя mail.rocky-linux.ru.
Опционально можно добавить TXT записи для spf, dkim, dmarc, CNAME записи для autoconfig, autodiscover, SRV записи для carddavs и caldavs. Подробно этот момент разобран в документации, а конкретная настройка будет зависеть от вашего DNS сервера и опций, которые вам нужны в работе почтового сервера.
Установка
Устанавливаем дополнительные пакеты, необходимые почтовому серверу:
# sudo apt install postgresql autotools-dev gobjc liblasso3 libobjc4 libxmlsec1-openssl libxmlsec1 lua-json lua-lpeg
Все пакеты подтянулись из стандартного репозитория Astra, который был подключен по умолчанию после установки. Проверьте на всякий случай, что СУБД postgresql реально установилась и запущена:
# sudo systemctl status postgresql
Теперь любым удобным способом передайте на сервер установочный пакет с rupost. В моём случае это файл rupost-2.2.3-alse-amd64.deb. Я скопировал его со своей машины на сервер через scp:
# scp rupost-2.2.3-alse-amd64.deb zerox@10.20.1.59:/home/zerox
Запускаем установку почтового сервера RuPost:
# sudo dpkg -i rupost-2.2.3-alse-amd64.deb
Вся установка будет выполнена в автоматическом режиме. В конце получите примерно такое сообщение:
Для продолжения установки, необходимо запустить конфигуратор:
# sudo rupost-wizard
Он выполнит полную подготовку почтовой системы к запуску, которая включает в себя:
- подготовку базы данных
- установку дополнительных пакетов с компонентами системы
- создание стандартных конфигураций компонентов почтовой системы
- генерацию самоподписанных сертификатов и ключей
- и некоторые другие действия
В процессе конфигуратор задаст несколько важных вопросов. Первый из них по поводу настроек подключения к СУБД.
Если вы используете свежеустановленную локальную версию postgresql, то на основе введённых данных пользователя и пароля будет создана локальная учётная запись с этим паролем, которая будет прописана в конфигурации компонентов почтового сервера.
Если сервер не локальный, то необходимо заранее выполнить создание роли и баз данных.
> CREATE ROLE rupostuser WITH NOSUPERUSER CREATEDB NOCREATEROLE LOGIN ENCRYPTED PASSWORD 'secretpass'; > CREATE DATABASE rupost WITH ENCODING 'UTF8' OWNER rupostuser; > CREATE DATABASE rupost_data WITH ENCODING 'UTF8' OWNER rupostuser; > CREATE DATABASE rupost_logs WITH ENCODING 'UTF8' OWNER rupostuser;
На этом установка и предварительная конфигурация Rupost будут завершены. В конце вы должны увидеть примерно следующее:
Теперь можно отправиться в веб интерфейс и начать настройку почтовой системы. На всякий случай проверьте, что веб интерфейс поднялся на порту 5000:
# sudo netstat -tulnp | grep rupost tcp 0 0 0.0.0.0:5000 0.0.0.0:* LISTEN 22022/rupost
Настройка RuPost
Дальнейшая настройка почтовой системы может выполняться как через CLI, так и веб интерфейс. В веб интерфейс вы можете перейти как по доменному имени сервера, так и по IP. Так как в процессе конфигурирования мы получили самоподписанные сертификаты, в любом случае браузер выдаст предупреждение. Напоминаю, что подключаемся на порт 5000, примерно так: https://10.20.1.59:5000.
Учётная запись по умолчанию - mailadmin / rupost.
Вы увидите несколько предупреждений на главном экране, которые немного сбивают с толку. Ничего страшного, это нормально. Система ещё не настроена. Первым делом сходите в раздел Лицензии и загрузите вашу постоянную или триальную лицензию. У меня используется триал.
Теперь настроим FQDN имя нашего сервера. Переходим в раздел Общие настройки и указываем имя узла почтовой системы. Я использую свой тестовый домен rocky-linux.ru для этих целей. Полное имя сервера выглядит вот так: mail.rocky-linux.ru. Остальные настройки поменяйте на ваше усмотрение. В общем случае можно ничего не трогать. Для работы почтового сервера критично было указать его имя.
Дальше подключим Домен LDAP. Для этого переходите в соответствующую настройку. Как я уже говорил, у меня используется Microsoft Active Directory. Настройки подключения не представляют никакой сложности. Указываем имя домена, имя контроллера домена и учётную запись в домене, с помощью которой rupost будет получать информацию о пользователях. Отдельную учётную запись для этого я создал предварительно. Для неё необходимы права Create, delete, and manage user accounts и Read all user information. С почтового сервера rupost вы должны резолвить адрес контроллера домена по имени. Если по умолчанию это не работает, добавьте информацию о контроллере домена и его ip адресе в локальный файл /etc/hosts.
Сама настройка подключения выглядит следующим образом:
Далее нужно добавить хотя бы один почтовый домен. Я буду использовать свой тестовый rocky-linux.ru.
Теперь можно пойти в раздел Почтовые ящики и добавить пользователей из LDAP, которые там, соответственно, должны существовать с указанными заранее адресами почтовых ящиков в соответствующем поле E-mail.
Если открыть на редактирование какой-то почтовый ящик, то можно посмотреть его UID — 596584c2-55a5-4829-8b8a-6a484103556f. Он может пригодиться, если вы напрямую через консоль сервера захотите попасть в почтовый ящик пользователя. Вся почта хранится в формате MAILDIR в директории /home/rupost/mailboxes. Далее идут директории с названиями в виде UUID. Это и есть файлы почтового ящика.
Там же в настройках ящика можно посмотреть и изменить квоты, добавить псевдонимы (алиасы) к почтовому ящику.
Теперь нам нужно выбрать один из представленных шаблонов конфигурации почтового сервера. Концепция управления RuPost строится на использовании шаблонов конфигураций, которые могут быть заранее подготовлены и проверены. Это могут быть встроенные шаблоны, поставляемые в составе сервера, и самописные, подготавливаемые в рамках проектов внедрения с учётом особенностей и требований к конкретной системе.
Подготовка собственных шаблонов отдельная тема, для которой есть подробная инструкция. В рамках своей обзорной статьи я не буду её затрагивать. Концепцию, я думаю, вы и так поняли. Заранее подготовленная конфигурация настраивает соответствующим образом все встроенные компоненты системы. Условно их можно сравнить с ролями Ansible, которые приводят систему к заранее преднастроенному состоянию.
Стандартно в составе сервера есть 5 базовых шаблонов:
- Базовый шаблон конфигурации
- Базовый шаблон конфигурации + Dr.Web
- Базовый шаблон конфигурации + Kaspersky
- Интеграция RuPost с Microsoft Exchange
- Интеграция RuPost с внешним Relay-сервером.
Для теста решил проверить шаблон интеграции с внешним Relay-сервером. Мой почтовый сервер стоит в закрытом сегменте сети без возможности напрямую отправлять почту в интернет. Вместо этого в интернете есть почтовый сервер, который готов принимать с сервера rupost почту и пересылать её к внешним адресатам. При этом вся локальная почта ходит напрямую внутри почтового сервера RuPost.
Я выбрал соответствующий шаблон и применил его. В процессе настройки у меня попросили указать адрес внешнего почтового сервера. Чтобы почта корректно пересылалась, этот почтовый сервер должен принимать соединения с RuPost без аутентификации. Заранее настройте это. Настройка будет зависеть от типа этого почтового сервера. Если это postfix, то достаточно добавить ip адрес сервера с RuPost в mynetworks.
В итоге получилось вот так:
Теперь почтовый сервер RuPost готов к отправке и получению почты. Позже мы проверим его работу с использованием различных почтовых клиентов. А пока упомяну ещё несколько важных, но не обязательных настроек.
Настройка сертификатов
Для почтовой системы чаще всего некритично наличие доверенных сертификатов. Почтовый клиент один раз в момент подключения проверяет сертификат. Если он самоподписанный, то появится предупреждение, которое можно проигнорировать и запомнить выбор. Такое поведение зависит от почтового клиента. Если не ошибаюсь, то проблемы могут возникнуть на устройствах от Apple. Там не всегда удаётся игнорировать проблему с недоверенным сертификатом.
Если вы захотите установить свои доверенные сертификаты, то нужно понимать, что в RuPost используются отдельные сертификаты для непосредственно почтового сервера и для веб интерфейса. Это логично и правильно. Так удобнее. Для добавления своего сертификата в почтовую систему можно воспользоваться следующей консольной командой:
# rupost cert add "mail_cert" --login mailadmin --cert-type mail --cert-path certs/rupost-mail.crt --key-path certs/rupost-mail.key
А для веб интерфейса тип сертификата будет другой — control_panel:
# rupost cert add "control_panel_cert" --login mailadmin --cert-type control_panel --cert-path certs/rupost-control-panel.crt --key-path certs/rupost-control-panel.key
Если будете использовать бесплатные сертификаты от Let's Encrypt, то нужно будет настроить webhook для обновления сертификатов после получения новых.
Настройка почтовых клиентов
Web клиент
С сервером RuPost в комплекте идёт готовый веб интерфейс на базе SOGo. Он автоматически настраивается во время установки сервера. Достаточно пройти по доменному имени или IP адресу сервера, чтобы попасть в него.
Для аутентификации используйте полное имя ящика вместе с доменом и пароль от доменной учётной записи пользователя. В контексте использования вместе с сервером RuPost про SOGo рассказывать нечего. Он представлен в стандартной своей функциональности, которая типична для большинства почтовых серверов.
Thunderbird
Для ручного подключения Thunderbird или любого другого почтового клиента используйте следующие настройки:
- Имя или адрес сервера: адрес своего сервера
- Порт imap 993, защита соединения: SSL/TLS, метод аутентификации: обычный пароль
- Порт smtp: 465, защита соединения: SSL/TLS, метод аутентификации: обычный пароль
Если у вас используется самоподписанные сертификаты, то автоматическая проверка соединения не будет проходить. Соглашайтесь без неё, так как в момент первого подключения вам нужно будет согласиться с использованием недоверенного сертификата. После этого заработают получение и отправка почты.
Если же вы хотите, чтобы настройки можно было получить автоматически, то вам необходимо добавить некоторые DNS записи. Я не помню, какие точно записи отвечают за автообнаружение Thunderbird. Я добавил сразу все необходимые и для автообнаружения, и для работы календарей и адресной книги. Вот этот писок:
- mail.rocky-linux.ru A 10.20.1.59
- rocky-linux.ru. MX 10 mail.rocky-linux.ru.
- autoconfig.rocky-linux.ru. CNAME mail.rocky-linux.ru.
- autodiscover.rocky-linux.ru. CNAME mail.rocky-linux.ru.
- _carddavs._tcp.rocky-linux.ru. SRV 0 1 443 mail.rocky-linux.ru.
- _caldavs._tcp.rocky-linux.ru. SRV 0 1 443 mail.rocky-linux.ru.
Не забудьте поменять домен на свой. Если все DNS записи добавлены корректно, то автообнаружение настроек будет выглядеть так:
Календари и адресные книги тоже подтянутся автоматически:
Работать с подключенным календарём и адресными книгами можно в любом из настроенных клиентов, где они подключены. Будь то десктоп, смартфон или веб клиент SOGo.
MS Outlook
Для того, чтобы MS Outlook мог автоматически настроить почтовый аккаунт и подключить календари и адресные книги, необходимо установить RuPost Outlook Plugin. Плагин функционируют под управлением ОС Windows 7 или более поздних версий в связке с Microsoft Outlook 2013 и выше. Для работы плагина требуется установленный пакет .NET Framework 4.8 (при необходимости устанавливается автоматически вместе с плагином).
Основные функциональные особенности плагина:
- двусторонняя синхронизация с серверами RuPost;
- поддержка календарей и задач по протоколу CalDAV, контактов по протоколу CardDAV;
- полная поддержка часовых поясов и повторяющихся событий с исключениями;
- поддержка SSL/TLS;
- авто-обнаружение (auto-config) и автонастройка связывания календарей, адресных книг и задач из RuPost в Microsoft Outlook;
- автоматическая синхронизация ресурсов учетной записи RuPost;
- автоматическая (периодическая) и принудительная двусторонняя синхронизация между сервером RuPost и Microsoft Outlook;
- поддержка помощника по планированию (Internet Free/Busy);
- автоматическая привязка к заведенным учетным записям Microsoft Outlook (IMAP).
Установка плагина производится стандартно для приложений Windows - из пакета MSI. Можно выполнить автоматически сразу для всех пользователей компьютера:
msiexec /i RuPostPlugin.Setup.msi ALLUSERS=1 /qn
Настройка учётных записей в MS Outlook выполняется стандартно в автоматическом режиме через соответствующий раздел подключения учётных записей. В интерфейсе программы появится дополнительная вкладка с RuPost, где можно принудительно выполнить синхронизацию календарей и контактов.
По умолчанию используется двусторонняя синхронизация (Outlook ←→ Сервер) со следующим механизмом решения конфликтов:
- если событие изменено в Microsoft Outlook и на сервере RuPost с момента последней проверки, то используется последняя измененная версия;
- если событие изменено в Microsoft Outlook и удалено с сервера RuPost с момента последней проверки, оно будет также удалено из Microsoft Outlook;
- если событие удалено в Microsoft Outlook и изменено на сервере RuPost, событие будет удалено и на сервере.
Мобильный клиент WorksPad
Для эффективной работы с почтой на смартфоне разработчики Астры рекомендуют свой отдельный программных продукт WorksPad. Это корпоративное решение класса Enterprise Mobility Management (EMM) для организации защищенной мобильной работы сотрудников на смартфонах и планшетах под управлением iOS и Android. Он приобретается и лицензируется отдельно. Отмечу сразу, что его использование опционально. Вы в любом случае сможете работать с почтовым сервером по стандартным протоколам SMTP и IMAP любым подходящим мобильным клиентом.
WorksPad позволяет обеспечить высочайший уровень защиты данных и предотвратить их утечку за счет установки на клиентское мобильное устройство контролируемого компанией приложения-контейнера с настраиваемыми политиками безопасности и шифрования. При этом приложение не контролирует приватные данные владельца устройства и никак на них не влияет. При необходимости решение можно применять в комплексе с другими средствами для управления (MDM) и предотвращения утечек информации (DLP).
Особенность мобильного приложения WorksPad в том, что компания управляет не устройством, а только изолированным приложением. Есть возможность удалённо очистить контейнер. Весь остальной смартфон со всеми персональными данными остаётся в управлении пользователя. Мобильные клиенты есть для Android, iOS и Аврора.
RuPost Desktop
Разработчики RuPost предлагают для работы со своим почтовым сервером приложение RuPost Desktop. Это кроссплатформенный почтовый клиент (Windows, Astra 1.7.*), разработанный на основе Thunderbird Supernova. Если честно, после установки я вообще не увидел отличий от Thunderbird, о котором рассказал выше. Всё настраивается так же, в ручном или автоматическом режиме, если есть соответствующие DNS записи. Календари и адресные книги тоже подключились.
Немного почитал описание и увидел некоторые подробности. Из доработок в RuPost Desktop: отключён сбор и отправка телеметрии за рубеж, в Corporate‑редакции продукта включается поддержка групповых политик и автоматизация массовой настройки пользователей. Если открыть рядом две программы, то видны отличия в интерфейсе. У RuPost Desktop он немного переработан и выглядит приятнее. Но это субъективно. Сверху появился ряд кнопок, которых реально в оригинальном Thunderbird не хватает. Так что обратите внимание, кто любит этот клиент. Можно пользоваться бесплатным RuPost Desktop, если понравится.
Сам я уже много лет пользуюсь Thunderbird, и меня он полностью устраивает. Обычно советую людям именно его. Нравится больше, чем MS Outlook, хотя я с ним работал тоже очень долго. Лет 10 наверное. Не очень люблю веб клиенты, но будущее всё равно, скорее всего за ними, так как это удобно. Получаешь доступ с любого устройства с браузером, не нужны никакие настройки.
Политика лицензирования и стоимость
Лицензирование почтового сервера RuPost простое. Есть две редакции: Standard и Enterprise. Последняя отличается от первой дополнительными возможностями:
- Отказоустойчивый кластер
- Сценарии и практики сосуществования с Exchange
- Возможность использовать Custom-шаблоны конфигураций
- Командный интерфейс (CLI) для автоматизации управления
- Самодиагностика конфигурационных файлов, автовосстановление системы
Получается, что редакция Standart — это одиночный почтовый сервер. А Enterprise для масштабных кластерных реализаций.
Лицензируются только почтовые ящики, вне зависимости от количества подключенных устройств пользователя. Сервера тоже никак не лицензируются. Их может быть сколько угодно в кластере. Учёт ведётся только по почтовым ящикам.
Заключение
Надеюсь, у меня получилось передать вам основные моменты почтового сервера RuPost, чтобы у вас сложилось представление о том, как он устроен и как работает. В целом, впечатления хорошие. Я смог без особых проблем развернуть его и запустить в работу, воспользовавшись только руководством к продукту. Но у меня за плечами есть большой опыт установки и эксплуатации почтовых серверов. Насколько просто это будет человеку без моего опыта — не знаю. Авторы программы постарались сделать порог входа максимально низким, по типу того, что был у Exchange, который можно было без проблем настроить по простым руководствам из интернета даже мало подготовленным специалистам.
С RuPost скорее всего так не получится, потому что всё равно нужно будет работать в консоли Linux. Например, я вообще не увидел в веб интерфейсе администратора возможности посмотреть логи сервисов. Сам то я их, разумеется, нашёл, потому что они на своих местах - /var/log/mail.log. Причём сделано удобно - в логе совмещены службы postfix и dovecot. Все остальные логи, как я уже говорил, тоже на своих местах - nginx, haproxy и т.д. Также в веб интерфейсе не хватает управления сертификатами. Для их загрузки и обновления тоже нужно ходить в консоль.
Тут скорее всего идея в том, что почтовый сервер будет интегрирован в общую систему обеспечения безопасности инфраструктуры и логи все должны уезжать туда. Косвенно это подтверждается тем, что в настройках почтового сервера вообще отсутствует DKIM. Как мне ответила поддержка, подразумевается, что сервер будет интегрирован с промышленными системами информационной безопасности, типа Kaspersky Secure Mail Gateway, которые сами будут подписывать почту и следить за другими задачами, связанными с безопасностью.
Мне понравилась простая и понятная реализация кластера. Как он на практике будет работать, я не проверял, но в целом не вижу тут каких-то подводных камней. Используется обычный балансировщик, конфигурация в СУБД, почта на внешнем файловом хранилище, например ceph. А сами ноды со службами, к которым подключаются клиенты, легко масштабируются. Альтернативой этой конфигурации могла бы быть схема с хранением почты в СУБД. Это даст как существенные преимущества, например в поиске и обработке писем, так и минусы, связанные с более трудоёмким и ресурсоёмким обслуживанием огромной базы данных. Формат хранения почты maildir в этом плане намного дешевле и проще, но и возможностей работы с почтой тоже меньше. Тот же быстрый поиск содержимого писем и документов по большим ящикам надо как-то отдельно реализовывать. В RuPost не заметил на этот счёт никаких решений. Скорее всего используется стандартный кэш писем Dovecot.
Отдельно отмечу очень простую интеграцию с AD. Я всегда ожидаю с этой стороны каких-то подводных камней, когда идёт скрещивание Windows и Linux. Но тут вообще не было никаких сложностей. Просто подключил LDAP каталог через настройки, тут же сходил в веб интерфейс SOGo и авторизовался с доменной учётной записью. Никаких дополнительных действий не выполнял. Заработало всё сразу.
Боже, какой тут онанизм. Аффтар любитель техноблуда
Всё бы ничего, если бы не ценник. 3300 рублей за 1 ящик :(
Всегда скептически относился к продуктам "из коробки", особенно где есть платная замануха.
Postfix+Dovecot+Roundcube - наше всё!
Это если есть умение и желание всё это настраивать. Собрать кластер из этих инструментов - нетривиальная задача.
А где пакет с сервером можно взять? На сайте Рупост только клиент.
Мне разработчики прислали вместе с временной лицензией. Я сам не искал. Наверное, только по запросу предоставляют.
Carbonio CE или mailcow (лучше, ван лав).
Оба - фри.
Давай тогда уж сравнение с CommunigatePro, там тоже postfix, но чуть более лучше в плане настроек. Говорят в октябре они окончательно порешают вопросы с владением прав на код и выйдут обратно в продажу.
CommunigatePro никакого отношения к Postfix не имеет и не использует. Это проприетарное ПО. Появился раньше Postfix.
Communigate - мультикомбайн: там и почта и общие папки с облаком и мессенджер и телефония с видеозвонками и callcenter . И все это на одном модуле работает.
DKIM на отдельный сервер? Сильно. Бредово и извращенно. 99% почтарей это умеют сами делать. Антивиря нет, антиспама нет, управление юзерами через АД или их решение, сделать внутри почтаря нельзя. Конфиги постфикса править нельзя. Зачем он такой нужен? Переход с чанги? Так она далеко не у всех. Как отдельно взятый почтарь это чудище использовать нельзя. Зачем косплеить чангу то? Если делать, то нормально, что бы купить могли все, а не только тем кому переход нужен. И к их серверу надо ещё два или три сервера что бы нормально заработало, да еще и ни разу не дешевые их решения, типа LDPro. Зачем вообще идти по пути МС? Сделали бы коробочное, законченное решение и покупателей в разы прибавилось бы.
Поддерживаю. В интерфейсе ничего кроме "Импортировать пользователя" нет. Безымянный ящик не создать. Никаких правил на уровне сервера нет. Логи смотреть только в корне каталога руками перебирая файлы. А поскольку там куча служб от чего зависит почта, то ладить придется по всем возможным логам. Человек должен сильно разбираться в линуксе. В общем это бесплатный postfix, но за большие деньги.
К бесплатному Postfix вам придётся написать свою админку, чтобы им можно было пользоваться в большой системе с несколькими администраторами и доменами.
mailcow
Антивирус и Антиспам не функциональность почтового сервера. Я лично считаю логичным, что его там нет в коробочном решении. Cам всегда использовал антиспам от Касперского и он без проблем интегрируется с любым почтовым сервером на базе postfix через протокол milter. Я так понимаю, задачи сделать всё в одном у разработчиков не стояло изначально. Да и по самому продукту видно, что он ориентируется на большие установки крупного бизнеса, а не малого и среднего. Почему не добавили возможность настроить локально dkim я тоже не понял. Сделать это не трудно.
mailcow
Хорошо описано! Спасибо!