Deploy
Attention
All accounts and passwords generated during deployment are stored in
file on your server.
Please run the commands displayed on this page on your mail server, it will
download a shell script to simplify ssh public key setup. If ssh login user is
not , it will help setup (on Linux) or (on OpenBSD) also.
After you ran the commands, it’s ready to deployment. Click the button
to start the deployment.
Depends on the components you selected, and network connection speed between
your server and our deployment server, it may take few minutes or even longer
to finish. Please be patient.
It will refresh the page every 5 seconds and show you the latest output of
deployment task, you can watch and (hopefully) have some fun.
Настройка IP и DNS
Обеспечение внешнего статического IP-адреса, публичного домена и записи PTR
Это основные требования для запуска собственного почтового сервера.
-
Публичный статический IP-адресIP-адрес почтового сервера должен быть общедоступным и постоянным во времени. Убедиться в этом можно у хостинг или Интернет-провайдера.
-
Доменное имя указывает на IPDNS-запись публичного доменного имени почтового сервера должна указывать на этот IP-адрес. Им можно управлять в настройках DNS провайдера доменного имени.
-
IP указывает на доменное имяСамое главное, обратная DNS-запись (именуемая PTR) должна указывать на доменное имя почтового сервера по IP-адресу. Можно попросить своего хостинг-провайдера или поставщика интернет-услуг настроить его. Его можно легко проверить по IP-адресу онлайн (например, тут), или с помощью команды ‘nslookup’ в Windows и команды ‘host’ в системах на основе UNIX.
Настройка MX записи в DNS
Запись почтового обмена (MX) указывает почтовый сервер, ответственный за прием сообщений электронной почты от имени домена.
Например, если наш домен — mycompany.com, почтовый сервер — mail.mycompany.com, то запись DNS для mycompany.com будет:
Type |
Host |
Value |
Priority |
TTL |
MX |
@ |
mail.mycompany.com |
10 |
1 min |
где:
-
Priority (приоритет) используется, когда в домене более одного почтового сервера.
-
TTL (время жизни) можно установить любое предпочтительное значение, а наименьшее значение используется для применения конфигурации DNS как можно скорее при отладке настроек.
Настройка DKIM записи в DNS
Почта, идентифицированная ключами домена (DKIM) — это протокол безопасности электронной почты, который прикрепляет зашифрованную цифровую подпись к электронному письму. Принимающий сервер проверяет его с помощью открытого ключа, чтобы убедиться, что электронное письмо не было подделано.
Понадобятся приватный и открытый ключи. Их можно создать с помощью онлайн-инструментов, например Power DMARC Toolbox — DKIM Record Generator, или с помощью команд OpenSSL (приведен пример для Windows):
-
Создать приватный ключopenssl.exe genrsa -out private.key 2048
-
Создать публичный ключ из приватногоopenssl.exe rsa -in private.key -pubout -outform der 2>nul | openssl base64 -A > public.key.txt
И запись DNS будет выглядеть так:
Type |
Host |
Value |
TTL |
TXT |
selector._domainkey |
v=DKIM1; k=rsa; p=public_key |
1 min |
где:
-
selector — самостоятельно выбранный идентификатор (например, mysrv), который будет использоваться в приложении почтового сервера (смотрите ниже).
-
public_key — открытый ключ, закодированный алгоритмом base64 (содержимое public.key.txt).
-
TTL (время жизни) имеет то же значение, что и в предыдущем разделе.
Настройка SPF записи в DNS
Инфраструктура политики отправителя (SPF) — это стандарт проверки подлинности электронной почты, который проверяет IP-адрес отправителя по списку авторизованных IP-адресов владельца домена для проверки входящей электронной почты.
Тут запись DNS будет выглядеть так:
Type |
Host |
Value |
TTL |
TXT |
@ |
v=spf1 a mx include:relayer_name -all |
1 min |
где:
-
relayer_name — имя необязательного внешнего почтового сервера-ретранслятора (смотрите ниже). Если не нужно — убирается вместе с «include:».
-
TTL (время жизни) имеет то же значение, что и в предыдущем разделе.
Можно использовать удобный онлайн-генератор записи SPF.
Дополнительные записи DNS
Некоторые поля не обязательны, но желательно иметь.
-
DMARCЗапись доменной проверки подлинности сообщений, отчетов и соответствия (DMARC) позволяет собственному почтовому серверу декларировать политику того, как другие почтовые серверы должны реагировать на недостоверные сообщения от него.
-
BIMIИндикаторы бренда для идентификации сообщений (BIMI) — это новый стандарт, созданный для того, чтобы упростить отображение логотипа рядом с сообщением. Кроме того, BIMI предназначен для предотвращения мошеннических электронных писем и улучшения доставки.
-
TLS-RPTTLS-отчетность (TLS-RPT) дает ежедневные сводные отчеты с информацией о электронных письмах, которые не зашифровываются и не доставляются.
-
MTA-STSСтрогая транспортная безопасность агента пересылки почты (MTA-STS) — это новый стандарт, направленный на повышение безопасности SMTP, позволяя доменным именам выбирать строгий режим безопасности транспортного уровня, требующий аутентификации и шифрования.
Все эти записи кроме MTA-STS могут быть созданы с помощью Power DMARC Toolbox. Конфигурация MTA-STS похожа на , также описывалась на habr, и, наконец, может быть проверена с помощью Hardenize.
Установка iRedmail на CentOS 7
Системные требования
iRedMail предназначен для установки на чистый сервер, что означает, что на вашем сервере НЕ установлены никакие компоненты, связанные с почтой, например, MySQL, OpenLDAP, Postfix, Dovecot, Amavisd и т. д. Скрипт установки iRedMail автоматически установит и настроит их для вас. Если что-либо из указанных компонентов уже установлено, ваши конфигурационные файлы будут перезаписаны, а iRedMail в последствии может работать не так, как ожидалось.
Рекомендуется хотя бы 2ГБ оперативной памяти для мало нагруженных систем. В случае использования антиспама и антивируса будет использоваться большая часть ресурсов.
Подготовка к установке
Установите правильное имя вашего сервера
Имя сервера (hostname) должно быть полностью определенным доменным именем (FQDN), неважно, настраиваете вы рабочий или тестовый сервер. Проверить имя сервера можно, выполнив команду:
$ hostname -f mx.site.com
Если полученное в результате команды имя сервера не является FQDN, то его нужно изменить. Имя сервера для Centos 7 задается в файле /etc/hostname. Откройте файл вашим любимым текстовым редактором и укажите туда нужное имя сервера.
А также добавьте имя сервера в файле /etc/hosts, чтобы оно было в начале строки, сразу после IP-адреса, примерно так:
127.0.0.1 mx.site.com mx localhost localhost.localdomain
Проверьте имя сервера командой hostname -f снова. Если оно не поменялось на новое значение — перезагрузите сервер для применения настроек.
Выключение SELinux
iRedMail не работает с SELinux, поэтому отключите его, установив указанное ниже значение в своем конфигурационном файле /etc/selinux/config. После перезагрузки сервера SELinux будет полностью отключен.
SELINUX=disabled
Чтобы отключить SELinux для текущей сессии без перезагрузки запустите команду с правами суперпользователя:
# setenforce 0
Выключение сторонних репозиториев
Для CentOS включите официальные репозитории yum CentOS-Base и ОТКЛЮЧИТЕ все сторонние репозитории yum, чтобы избежать конфликта пакетов.
Загрузка последнего актуального релиза iRedmail
Перейдите на страницу загрузки последнего стабильного релиза iRedmail и скопируйте ссылку на установщик:
Полученную ссылку скачайте на ваш сервер при помощи wget. Может потребоваться установка пакета wget, если он не установлен:
# yum install wget -y
Скачиваем установщик:
$ wget https://bitbucket.org/zhb/iredmail/downloads/iRedMail-0.9.9.tar.bz2
Устанавливаем архиватор bzip2 для распаковки архива:
# yum install bzip2 -y
Распакуем архив:
# tar xjf iRedMail-0.9.9.tar.bz2
Предполагаем, вы загрузили архив в папку /root/ (вы попадаете в нее по умолчанию сразу после подключения к серверу по SSH от имени root). Тогда распакованный архив будет в папке /root/iRedMail-0.9.9/ (цифры номера версии могут отличаться, в зависимости от номера актуального релиза, замените их на свои при необходимости).
Процесс установки iRedMail
Для начала установки нужно перейти в папку с распакованным архивом и запустить скрипт iRedMail.sh
# cd /root/iRedMail-x.y.z/ # bash iRedMail.sh
Приветственный экран:
Для перехода к следующему шагу нужно нажать клавишу Enter. На втором шаге нужно выбрать директорию для хранения почты. Можно оставить значение по умолчанию или указать нужную. Для перехода на следующий шаг нажмите Tab для переключения курсора на кнопку Next, а затем — Enter.
Здесь можно выбрать способ хранения учетных данных пользователей. Мы рекомендуем MySQL (MariaDB). Для переключения используйте клавиши стрелок, для выбора варианта клавишу Пробел. Для перехода к следующему шагу — Tab и Enter.
Укажите пароль администратора сервера баз данных. Это должен быть длинный набор символов из букв, цифр и знаков препинания. В дальнейшем вам, скорее всего не потребуется его использовать, потому его можно не запоминать. А также вся необходимая информация, в том числе и пароли, будет записана в одном документе, который будет доступен администратору.
На следующем шаге нужно выбрать компоненты, которые будут установлены. Можно выбрать все, или исключить некоторые. Обязательно установите iRedAdmin — интерфейс управления учетными записями.
Это был последний шаг настроек. После этого нужно подтвердить установку компонентов (нажать клавишу Y и Enter) дождаться завершения установки всех необходимых пакетов. В конце на экране терминала будет такой вывод:
На экран будут выведены все основные ссылки для перехода в веб-интерфейс и данные доступа учетной записи администратора.
Установка iRedMail на Ubuntu
После загрузки пакета извлеките его в том же каталоге:
Теперь мы готовы установить iRedMail с помощью скрипта bash. Перейдите в извлеченный каталог, найдите файл с именем “iRedMail.sh и дайте ему исполняемое разрешение. Запустите исполняемый сценарий, чтобы начать установку.
Как только сценарий установки будет выполнен, то появится приглашение мастера экрана приветствия. Нажмите кнопку “Да” чтоб продолжить установку iRedMail на Ubuntu Server.
Мастер экрана приветствия iRedMail
На следующем шаге появится окно default mail storage path (путь к хранилищу почты по умолчанию). Вы можете установить нужный каталог в качестве пути хранения почты. Нажмите кнопку “Далее”, чтобы принять путь хранения по умолчанию.
Путь к хранилищу почты iRedMail
В следующем окне будет предоставлена возможность выбрать веб-сервер или запустить почтовый сервер без веб-сервера. Выберите” Nginx « с помощью клавиши «space» для установки веб-сервера и нажмите “Далее“
Выбор Nginx в качестве веб-сервера
В следующем окне вам будет предложено выбрать базу данных. В этом примере я выбрал MariaDB в качестве сервера базы данных. Вы можете выбрать свой внутренний сервер соответствующим образом. После выбора сервера базы данных ,следующим шагом является настройка пароля администрирования базы данных. После нажмите кнопку “Далее”
Выбор сервера базы данных
В следующем окне появится мастер установки доменного имени электронной почты. Помните, что вы не можете установить имя хоста сервера в качестве домена электронной почты.
Доменное имя почты iRedMail’
Теперь введите пароль администратора почтового домена и нажмите кнопку Далее.
Настройка пароля домена электронной почты iRedMail
В следующем окне вы можете выбрать некоторые дополнительные компоненты для установки. С помощью клавиши пробел выберите компоненты и нажмите кнопку «Далее»
Дополнительные компоненты iRedMail
Наконец, предустановочная конфигурация была завершена. В терминале вам будет предложено продолжить установку или нет. Введите “y”, чтобы завершить установку.
Окончательное подтверждение установки
Для завершения установки требуется некоторое время. После завершения установки вам будет предложено использовать правила брандмауэра, предоставляемые iRedMail. Если вы включили брандмауэр в своей системе, нажмите “y”.
Правило брандмауэра iRedMail
После завершения установки будут показаны URL-адреса установленных веб-приложений, включая URL-адрес веб-почты и URL-адрес веб-панели администратора iRedMail
Веб-адреса iRedMail
После установки iRedMail на Ubuntu требуется выполнить перезагрузку.
Запуск установщика iRedMail
Теперь, когда все готово к началу запуска установщика iRedMail, нужно подготовиться к ответам на ряд вопросов, которые этот установщик будет задавать в процессе своей работы, а затем запустить сценарий установки командой
bash iRedMail.sh
Вид экрана с запущенным установщиком приведен на рисунке 1:
Рис.1. Вид стартового окна инсталлятора
Следующим шагом нужно ввести каталог для хранения почтовых сообщений. По умолчанию предлагается /var/mail. Далее предлагается выбрать способ хранения почтовых аккаунтов. В виде ассортимента будут предложены на выбор OpenLDAP, MySQL или PostgreSQL (см. рисунок 2).
Рис.2. Выбор СУБД для хранения почтовых аккаунтов
Забегая чуть вперед скажу, что в виде webmail предполагается использование Roundcube, а в качестве средства управления iRedAdmin, phpLDAPadmin, phpMyAdmin и phpPgAdmin (см. рисунок 3).
Рис.3. Опциональный выбор компонентов
При выборе MySQL (в этой статье будет рассматриваться эта СУБД) нужно будет задать пароль администратора MySQL, затем перейти к вводу имени первого виртуального домена и задать пароль почтового администратора в этом виртуальном почтовом домене. Эта учетная запись (а именно postmaster) используется только системным администратором и не должна использоваться как учетная запись почтового пользователя. К примеру, под этой учетной записью нельзя будет «залогиниться» и войти в webmail, но можно будет зайти в iRedMail admin panel для выполнения административных задач в рамках почтовой системы. Ввод пустого пароля здесь недопустим.
На следующем этапе нужно ввести имя первого пользователя почтовой системы. Он необходим для того, чтобы после установки войти под ним в webmail и там получить два системных письма с крайне важными подсказками и сбором системной информации по установленной почтовой системе. Примечание: имя пользователя должно вводиться в виде полного почтового адреса, например, «[email protected]»
Следующий этап очень важен. Он подразумевает опциональное задание тех компонентов почтовой системы, которые действительно вам необходимы и которыми вы сможете затем управлять. Настоятельно рекомендуется предварительно ознакомиться с официальной документацией для каждого компонента и решить для себя, что именно вам потребуется, а что нет. На рисунке 4 приведен показ компонентов комплекса для предварительного ознакомления.
Рис.4. Показ компонентов комплекса для предварительного ознакомления
После ответа на все вопросы установщика и выбора всех требуемых опций процесс переходит в стадию непосредственной установки. Выглядеть на экране монитора это будет так:
Configuration completed. ************************************************************************* **************************** WARNING *********************************** ************************************************************************* * * * Please do remember to *REMOVE* configuration file after installation * * completed successfully. * * * * * /root/iRedMail-x.y.z/config * * ************************************************************************* <<< iRedMail >>> Continue? # <- Type 'Y' or 'y' here, and press 'Enter' to continue
После завершения всех установочных действий вид новых рабочих процессов должен быть похожим на изображенный (см. рисунок 5), что символизирует наличие нужных служб в системе и их функционирование.
Рис.5. Вид системных процессов после установки и запуска iRedMail
Основная информация для дальнейшего изучения и конфигурирования этой системы может быть получена на сайтах разработчиков каждого компонента, входящего в систему, а также почерпнута в файле /root/iRedMail-x.y.z/iRedMail.tips.
Zentyal — почтовик из коробки
Новичкам, которых пугает само слово Linux и необходимость ввода команд в терминале, нужно простое решение, позволяющее быстро и без чтения документации развернуть почтовый сервис. Как вариант здесь можно посоветовать Zentyal — специализированный дистрибутив, построенный на базе Ubuntu Server (последний релиз основан на Ubuntu 12.04 LTS) и позволяющий выполнить все необходимые установки и настройки при помощи графического интерфейса. Zentyal — дистрибутив широкого назначения, который может использоваться и как роутер с функциями UTM, офисный сервер или сервер сообщений. Все необходимые функции реализуются при помощи устанавливаемых модулей/пакетов. В настоящее время доступно более тридцати модулей из пяти категорий, которые добавляются одним щелчком. Zentyal может устанавливаться в качестве самостоятельного сервера, используя свою базу пользователей, или работать в связке master/slave с возможностью репликации между несколькими серверами и синхронизации учетных данных с LDAP/AD.
Решение
Для данных задач нами выбраны следующие программные продукты:
- В качестве ОС выбрана Ubuntu 18.04.1 LTS Server с официального сайта, т.к. поддержка LTS будет осуществляться до 2023 года. Так же основатель Canonical Ltd. Марк Шаттлворт в своей речи на конференции OpenStack Summit объявил об увеличении срока поддержки Ubuntu 18.04, которая является релизом LTS (англ. Long Term Support), с 5 до 10 лет, чего должно хватить с лихвой и исключить необходимость неплановой переустановки для перехода на поддерживаемую сервис дистрибутива.
- iRedMail Текущая версия 1.0. Данный выбор обусловлен множеством факторов. Это открытый исходный код, надежный и бесплатный продукт без ограничений в использовании, имеющий свой веб-интерфейс, антивирус, антиспам-систему и многие другие преимущества по сравнению с конкурентами.
- В качестве БД выбрана PostgreSQL – это надежная объектно-реляционная СУБД.
SMTP: Установка postfix
postfix это один из наиболее используемых SMTP серверов, поскольку он стабильный, лёгкий, масштабируемый и высоко настраиваемый. Установка postfix может быть выполнена использованием apt-get.
:~# apt-get install postfix
Во время установки задаются тип почтового сервера и доменное имя.
Так как почтовый сервер будет отправлять письма напрямую к месту назначения, то нужно использовать «Интернет-сайт».
Также задаём доменное имя почтового сервера. Эта настройка определяет, что все письма, приходящие с этого почтового сервера, будут иметь @example.tst в качестве домена отправителя.
Конфигурационные файлы postfix размещены в /etc/postfix. Важны следующие конфигурационные файлы. Некоторые из них могут отсутствовать и их нужно создать вручную.
- transport: В первую очередь используется для определения, как почта должна быть направлена в направлении конкретного домена назначения. Это тот случай, когда кому-то может быть потребуется отправлять почту, предназначенную для домена XYZ.com, напрямую на IP адрес X.Y.Y.X независимо от каких-либо результатов запросов DNS.
- access: Может быть использован в целях безопасности, например для блокирования отправителей/получателей и их доменов.
- aliases: Используется для задания пользовательских псевдонимов. Например, почта отправленная пользователю userA должна быть принята пользователем userB, а также пользователем userC.
- main.cf: Это конфигурационный файл для postfix.
Отключение антивируса и антиспама
Отключить защиту для почты может понадобиться при различных обстоятельствах, например:
- Для диагностики проблем отправки сообщений.
- Экономии ресурсов (антивирус может слишком много потреблять ресурсов).
- При отсутствии необходимости.
И так, для отключения amavis (clam + spamassassin) открываем файл:
vi /etc/amavisd/amavisd.conf
Приводим к следующему виду настройку:
* в данном примере мы сняли комментарий с данных строк (если они были закомментированы) и задаем для них значение 1. Опция bypass_virus_checks_maps отвечает за включение проверки писем на вирусы; bypass_spam_checks_maps — на СПАМ.
Перезапускаем службу amavisd:
systemctl restart amavisd
После данной настройки письма будут отправляться без проверок. Однако, сервис антивируса будет, по-прежнему, работать.
Останавливаем и отключаем сервис clamd:
systemctl disable clamd@amavisd --now
Начальная настройка iRedMail
Откройте в браузере ссылку вида https://mail.site.com/mail/ (адрес, по которому вы задали расположение веб-интерфейса почты), авторизуйтесь с вашей учетной записью администратора — [email protected]. Вы увидите в папке входящих писем несколько писем с информацией о расположении важных файлов конфигурации в системе, ключе DKIM, который нужно добавить в DNS-зону, ссылки на все веб-интерфейсы, рекомендации по настройке почтовых клиентов и другую важную информацию. Также вся эта информация располагается на сервере в файле /root/iRedMail-0.9.9/iRedMail.tips.
Для создания почтового аккаунта нужно нажать Добавить — Пользователь
Для создания доменов, с которых будет отправляться почта, нужно нажать Добавить — Домен.
Просмотреть список доменов и почтовых ящиков можно в разделе Домены
Выбор и запуск приложения почтового сервера
Конечно, хостинг должен позволять устанавливать программное обеспечение. Можно использовать любое подходящее приложение для почтового сервера. Например, есть бесплатный hMailServer для Windows, который предоставляет все необходимые функции с минимальным использованием ресурсов. Для систем на базе UNIX существует множество бесплатных почтовых серверов, таких как Exim Internet Mailer или iRedMail.
Инициализация
Когда программное обеспечение выбрано и установлено, самое время его настроить.
-
Домен и пользователиНужно добавить домен и начальный набор пользователей почтового сервера.
-
БезопасностьЧтобы обеспечить соответствующий уровень безопасности, мы должны добавить сертификат SSL для домена. Конфигурацию SSL можно проверить здесь.
-
Подпись сообщенийДалее, следует настроить DKIM. Нужно указать полученные выше приватный ключ и селектор. Кроме того, методы заголовка и тела должны быть установлены на «расслабленный», алгоритм подписи должен быть установлен на «SHA256», иначе на некоторых SMTP серверах не проходит проверка (например, google).
-
Защита от спамаНаконец, нужно настроить антиспам-проверку специальными узлами черных списков, такими как spamhaus.org, чтобы защитить пользователей почтового сервера от нежелательных сообщений.
Протоколы электронной почты
Нужно настроить три протокола электронной почты, которые необходимы для её отправки и получения.
SMTP
SMTP используется для приема входящей и исходящей почты с/на другие почтовые серверы. И это позволяет пользователям домена отправлять свои сообщения.
-
25 портЭтот порт необходим для управления входящими подключениями от других почтовых серверов. Метод безопасности следует установить в STARTTLS.
-
587 портОн нужен для почтовых клиентов собственного почтового сервера. Метод безопасности следует установить в STARTTLS.
-
465 портОн не является официальным и может потребоваться для старых почтовых клиентов. И метод безопасности следует установить в SSL/TLS.
POP3, IMAP
POP3 и IMAP используются отдельными почтовыми клиентами, такими как Outlook на ПК или любой почтовый клиент на мобильных телефонах. Это позволяет пользователям домена управлять своими сообщениями.
Порт 993 следует использовать для защищенных соединений IMAP, а порт 995 — для POP3. Для обеспечения совместимости с большинством клиентов метод безопасности следует установить в SSL/TLS (не STARTTLS).
Также можно настроить порты 143 для IMAP и 110 для POP3, но они не шифруются и сейчас их уже мало кто использует.
Проверка
Итак, когда все настроено, нужно протестировать почтовый сервер, отправив письмо кому-нибудь из списка пользователей. Кроме того, в некоторых почтовых приложениях есть функция самодиагностики (см. ниже пример от hMailServer).
Теперь пора проверить отправку на внешний адрес.
Аккаунт Gmail.com
Если есть учетная запись Gmail.com (что наверняка), можно отправить тестовое письмо на свой адрес Gmail. Затем открываем свою электронную почту в браузере и нажимаем «Показать подробности».
Если есть «подписано: домен», подпись DKIM настроена правильно. Если есть «отправлено по почте: домен», SPF в порядке.
Также, можно убедиться в оригинальных заголовках, что статус проверки пройден.
Также, в Outlook можно видеть те же заголовки в свойствах сообщения.
Специальные онлайн-сервисы
Существует множество онлайн-сервисов, которые могут проверять отправку электронной почты. Ниже приведены некоторые из них.
-
AppMailDevЭтот сервис позволяет тестировать конфигурацию почтового сервера, такую как DKIM и SPF, отправляя электронное письмо на указанный сгенерированный почтовый адрес. Нужно просто следовать инструкциям на экране и результаты теста будут отображены там же.
-
DKIMValidatorПредоставляет те же функции, что и предыдущая служба. Результаты тестирования будут отправлены на адрес отправителя.
-
PowerDMARCЭтот сервис предоставляет только облегченную проверку всех атрибутов, но у него есть удобные инструменты, указанные в ссылках выше.
Итак, если всё настроено правильно, но сервер присутствует в чёрных списках спама, нужно внести его в белый список.
CommuniGate Pro
Название: CommuniGate Pro
Сайт проекта: communigate.com
Лицензия: Free/платная
Платформа: *nix, Windows, Mac OS X
Веб-интерфейс администрирования CommuniGate Pro
Популярная платформа для обмена электронной почтой, IM, VoIP, с функциями календаря и автоматизацией совместной работы. Например, VoIP обеспечивает передачу голоса/видео и обеспечивает такие возможности, как конференции, автосекретарь (IVR), автоматическое распределение звонков, управление очередями вызовов, голосовая почта. При этом CommuniGate поддерживает установку на большое количество ОС и архитектур (всего около тридцати), IPv4 и IPv6, стандартные протоколы SMTP, SIP, IMAP, XMPP, LDAP, RADIUS, XIMSS, CalDAV, WebDAV, MAPI и другие. Пограничный контроллер сессий (Session Border Controller) обеспечивает корректную работу через NAT-устройства. Входящий в состав CGP LDAP-сервер может использоваться и другими приложениями. Возможна синхронизация данных с BlackBerry при помощи AirSync (лицензия на каждое устройство приобретается отдельно). Менеджер рассылок позволяет автоматизировать рассылку новостей с возможностью самостоятельной подписки пользователем. Рассылка создается администратором, в дальнейшем управляется одним из пользователей сервера.
Пользователи могут подключиться через любую программу-клиент, поддерживающую эти протоколы, или локализованный веб-интерфейс. Причем веб-интерфейс очень просто настроить таким образом, что он принимает вид обычного почтового клиента (чтобы юзвери меньше путались). Также возможно использование упрощенного интерфейса для экономии трафика при работе с PDA и доступ по протоколу WAP с мобильных телефонов. Вызвать пользователя для разговора через VoIP можно одним щелчком из веб-клиента или адресной книги. Администратор в настройках устанавливает доступные пользователю функции — сортировку и пересылку почты, автоответчик, загрузку писем с внешних POP3-ящиков, список контактов, задач и календарь.
Настройки позволяют пользователю открыть доступ к своему ящику или отдельным папкам другим пользователям сервера. Это полезно, когда в организации должна быть заведена служебная учетная запись для связи с клиентами, которую используют несколько человек.
Один сервер может обслуживать несколько доменов. Узлы кластера способны обрабатывать только определенный вид трафика (например, по региону), для распределения запросов используется технология SIP Farm. Решение легко масштабируется до любых размеров. К слову, на CommuniGate Pro построена сеть IP-телефонии оператора SIPNET.
Возможна аутентификация пользователя при помощи внутренней БД, Active Directory или внешней программы, в том числе поддерживаются сертификаты клиента. В настройках можно указать IP-адреса, с которых разрешено или запрещено подключение клиентов. Вся информация, хранящаяся на сервере и передаваемая между клиентом и сервером, может быть зашифрована с помощью технологий SSL, TLS, S/MIME и других.
Открытые API упрощают интеграцию с системами биллинга и управления. Поддержка плагинов позволяет подключать решения сторонних производителей для фильтрации спама и вирусов. В настоящее время поддерживается интеграция с решениями от Касперского, Sophos, McAfee, MailShell, Cloudmark.
Реализованы и стандартные средства защиты — проверка обратного адреса отправителя, поддержка DNSBL (RBL), запрет приема почты с определенных IP-адресов и сетей, проверка определенной строки в заголовке или теле письма. Установка в любой ОС несложна, по сути, нужно лишь распаковать архив и запустить сервер. Все настройки сервера, доменов и учетных записей производятся при помощи веб-интерфейса (работает на 8010-м порту, после запуска нужно подключиться к нему в течение десяти минут и задать пароль администратора). Система прав позволяет делегировать администрирование домена другим пользователям, указав только те функции, которые им действительно необходимы.
В настоящее время доступно несколько версий сервера, отличающихся лицензиями. Бесплатно предлагается Community Edition, в которой активно пять аккаунтов, за плату предлагаются Corporate Edition и Service Provider с дополнительными функциями.
Восстановление из резервных копий
Перед началом восстановления, переносим резервные копии на новый сервер.
Восстановление баз данных
Нам необходимо восстановить несколько баз — содержимое /var/vmail/backup/mysql/. В моем случае было:
- amavisd
- iredadmin
- iredapd
- mysql
- roundcubemail
- vmail
Если мы переносим нашу почтовую систему на новый сервер, базу mysql восстанавливать не нужно.
Архивы баз находятся в сжатом виде. Первым делом, распаковываем их:
bzip2 -d amavisd-*.sql.bz2
bzip2 -d iredadmin-*.sql.bz2
bzip2 -d iredapd-*.sql.bz2
bzip2 -d mysql-*.sql.bz2
bzip2 -d vmail-*.sql.bz2
* если система вернула ошибку и не распаковала архив, необходимо установить пакет bzip2.
Теперь можно восстановить базы:
mysql -v -u root -p amavisd < amavisd-*.sql
mysql -v -u root -p iredadmin < iredadmin-*.sql
mysql -v -u root -p iredapd < iredapd-*.sql
mysql -v -u root -p mysql < mysql-*.sql
* напомним еще раз, базу mysql восстанавливать не нужно, если мы перенесли почту на новый сервер.
mysql -v -u root -p vmail < vmail-*.sql
Восстановление почты
Копируем данные в каталог /var/vmail/vmail1 (в случае, если мы не выбрали другой при установке).
Если мы создавали архив, то сначала распакуем его, например:
tar -xvf vmail.tar.gz
и переносим распакованное содержимое в каталог хранения почты (по умолчанию, /var/vmail/vmail1):
mv /tmp/var/vmail/vmail1/* /var/vmail/vmail1/
* в моем случае, распакованный архив находился в каталоге /tmp/var/vmail/vmail1; каталог для хранения почты — /var/vmail/vmail1.
Восстановление LDAP
На новом сервере заходим в каталог с дистрибутивом, который использовался для установки iRedMail. Открываем файл iRedMail.tips, например:
vi /tmp/iRedMail-0.9.8/iRedMail.tips
Находим пароли для учетных записей cn=vmail,dc=xx,dc=xx и cn=vmailadmin,dc=xx,dc=xx в строках:
OpenLDAP:
…
* LDAP bind dn (read-only): cn=vmail,dc=example,dc=com, password: rzeuzCPZN5dlHiyWEt9g6GWL5Jo6S9
* LDAP admin dn (used for iRedAdmin): cn=vmailadmin,dc=example,dc=com, password: FQ6Pk3hCKxL1dKv047NM0aJPEGanOv
* в данном примере, записываем пароли rzeuzCPZN5dlHiyWEt9g6GWL5Jo6S9 и FQ6Pk3hCKxL1dKv047NM0aJPEGanOv.
Используя данные пароли и получаем на них хэш:
slappasswd -h ‘{ssha}’ -s ‘rzeuzCPZN5dlHiyWEt9g6GWL5Jo6S9’
slappasswd -h ‘{ssha}’ -s ‘FQ6Pk3hCKxL1dKv047NM0aJPEGanOv’
В ответ мы получаем что-то подобное:
{SSHA}3rs/fqNZpKaWytqaQVE8AKltriyd1BsW
{SSHA}20vytDcG0NsSE8twwI/ldWW1+YCIi+xW
Теперь распаковываем архив с ldap:
bzip2 -d /tmp/2019-02-09-03-00-01.ldif.bz2
* в данном примере мы распаковываем архив из каталога /tmp.
Открываем распакованный ldif файл:
vi /tmp/2019-02-09-03-00-01.ldif
Находим учетные записи cn=vmail и cn=vmailadmin и строки их паролей, например:
dn: cn=vmail,dc=iredmail,dc=org
…
userPassword:: e1NTSEF9dVFnWENnWWkrWDMzMmJSNVJlazN0YjR5NllBRW9tN3hnZ1VTa0E9PQ==
…
dn: cn=vmailadmin,dc=iredmail,dc=org
userPassword:: e1NTSEF9eFhsWjd6MHRlQzYxRFc5QklJSStFNXBZU0YyTHIwVnh2UTNIRWc9PQ==
…
… и меняем на такие строки:
dn: cn=vmail,dc=iredmail,dc=org
…
userPassword: {SSHA}3rs/fqNZpKaWytqaQVE8AKltriyd1BsW
…
dn: cn=vmailadmin,dc=iredmail,dc=org
userPassword: {SSHA}20vytDcG0NsSE8twwI/ldWW1+YCIi+xW
…
* обратите внимание, что, во-первых, мы заменили пароли на наши хеши. Во-вторых, после userPassword мы убрали один знак двоеточия
Останавливаем службу для ldap:
systemctl stop slapd
Переходим в каталог хранения данных ldap:
cd /var/lib/ldap/<домен>/
Если в нем есть файл DB_CONFIG, переносим его, остальное удаляем:
mv DB_CONFIG /tmp
rm -rf ./*
После возвращаем DB_CONFIG:
mv /tmp/DB_CONFIG ./
Снова запускаем сервис ldap:
systemctl start slapd
В каталоге с данными для ldap появятся файлы. Снова останавливаем сервис slapd:
systemctl stop slapd
Теперь восстанавливаем данные:
slapadd -f /etc/openldap/slapd.conf -l /tmp/2019-02-09-03-00-01.ldif
Запускаем ldap и проверяем, что он запустился:
systemctl start slapd
systemctl status slapd
Восстановление конфигов
Желательно, восстановить настройки системы, так как некоторые из них критичные для работы почты. Если мы меняли конфигурацию, то нужно восстановить следующие файлы:
- /var/www/roundcubemail/config/config.inc.php
где путь /var/www может быть другим. Конфиг для roundcube. - /etc/postfix/mysql*.cf
настройки postfix. - Содержимое /etc/dovecot/conf.d, файлы /etc/dovecot/dovecot-mysql.conf и /etc/dovecot/dovecot.conf.
настройки dovecot. - Содержимое /var/lib/dkim
сертификаты для подписи DKIM.
Настройка почтового сервера
Интерфейс управления iRedAdmin в бесплатной версии довольно лаконичный. В нем вы можете добавить дополнительный домен, создать почтовый ящик, добавить дополнительных администраторов и посмотреть системные логи администратора
О том как добавить свой первый почтовый ящик в iRedMail читайте в нашем FAQ.
Как говорилось ранее, iRedMail использует популярный почтовый сервер Postfix, потому в случае необходимости можете приступить к редактированию главного конфигурационного файла /etc/postfix/main.cf Предварительно скопируйте конфиг, чтобы в случае ошибочных правок мы всегда смогли восстановить первоначальный.
root@mail:~# cp /etc/postfix/main.cf /etc/postfix/main.cf.default