Zimbra почта
Содержание:
- Введение
- Чат и видеозвонки
- Перенос учётных записей
- Zimbra Desktop Downloads
- Ограничение размера ящика и письма
- Совместная работа с документами
- Как настроить OTTPlayer на телевизорах Sony
- О, Zimbra почта
- Дополнительные настройки
- Что такое Zimbra
- Автоматизация переноса учёток
- Настройка zimbra после установки
- Такие полезные опции: фишки Zimbra функционала
- Загрузка дистрибутива и установка Zimbra
- Почему именно Zimbra?
- Что такое Zextras
- Настройка DKIM
- Подготовка сервера
Введение
Сразу же сообщаю, чтобы потом не было лишних обвинений и придирок. Данная статья заказная, находится в соответствующем разделе. Ее написание заказано и оплачено компанией svzcloud. Всех, кому интересны современные инфраструктурные решения в области почтовых серверов и коммуникаций, приглашаю к прочтению.
Немного поясню, о чем дальше пойдет речь.
- Почтовый сервер Zimbra. Думаю, он не нуждается в отдельном представлении. Старый и известный продукт, про который много информации в интернете. В том числе о внедрении и эксплуатации. Скажу честно, что сам никогда не обслуживал этот сервер, но много о нем слышал и наводил справки. У меня были на собеседованиях люди, которые администрировали в том числе кластеры из этих серверов. Расспрашивал их о зимбре, так как сам достаточно много настраивал и поддерживал почтовых серверов. И сейчас это делаю. В целом, я слышал в основном положительную информацию об этом сервере. Из разряда быстро установил, настроил и забыл. Есть opensource и коммерческая редакция zimbra.
- Пакет расширений Zextras — отдельное коммерческое решение, которое работает на базе Zimbra OSE (open source edition). С его помощью расширяется интерфейс zimbra. Появляется новый функционал, где помимо почты есть совместное редактирование и обмен документами, видеочат, виртуальный диск и некоторые другие возможности, которые мы рассмотрим далее.
Я давно собирался написать обзор на Зимбру и вот представилась возможность. Далее немного подробнее разберем функционал представленных продуктов.
Чат и видеозвонки
Возможности чата не слишком большие, но тем не менее, есть крутая штука, которая мало у кого реализована. Я имею ввиду не популярные мессенджеры, а закрытые чаты, которые можно развернуть на своем сервере. Есть индикация того, прочитано ли твое сообщение. Реализовано так же, как во всех популярных мессенджерах в виде галочки. Одна галочка — сообщение доставлено, но не прочитано. Две галочки — прочитано.
Тут же из разговора можно осуществить звонок, в том числе с видео. Я смог протестировать этот режим в формате видеозвонка даже с одного своего ноутбука позвонив самому себе в разные учетки, открытые в двух браузерах.
Входящий звонок в почтовом клиенте выглядит так.
При этом пиликает звук из динамиков компьютера. Поговорить самому с собой через один микрофон у меня получилось. Так выглядит интерфейс видеозвонка.
Тут же можно расшарить свой экран, но для этого надо установить отдельное расширение для Chrome.
Вообще, до этого момента я немного прохладно относился ко всей этой затее с Zimbra и Zextras. Вроде и функционально, но не везде удобно, да и денег стоит. Но когда увидел этот чат с видео, с демонстрацией экрана, который у меня сразу и без проблем заработал, я проникся. Ведь это реально очень удобно. Сидишь, работаешь, получил почту. Что-то не понял, тут же написал в чат, договорился о звонке. Созвонились, поговорили, показали друг другу экраны, все объяснили. Это реально круто и удобно.
Плюс, можно создавать отдельные комнаты и проводить конференции. Ведущий запускает у себя камеру, шарит экран и начинает объяснять или что-то рассказывать. Остальные либо просто слушают, либо с включенными веб камерами сидят. И при этом не нужен никакой дополнительный софт. Все работает через браузер. И ты можешь сюда запускать людей со стороны, просто давая им ссылки на чат комнаты.
Перенос учётных записей
Перенесём (импортируем) учётные записи из предыдущей почтовой системы. У меня использовался Postfix под управлением PostfixAdmin.
Для такого случая есть специальный скрипт.
#!/usr/bin/php // Postfixadmin (http://postfixadmin.sourceforge.net/) to Zimbra // (www.zimbra.com) migration script // // History: // Based on work from: Jaros Baw Czarniak // Enhanced by NERvOus (www.nervous.it) on 1-12-2009 <?php ///////////////////////////////////////////////////////// $user="postfix"; $pass="postfixadmin"; $db="postfix"; $table_mbox="mailbox"; $table_alias="alias"; $file="import.sh"; ///////////////////////////////////////////////////////// echo "This script generates a bash script called: $file The script contains the commands to re-create the mboxes and aliases on zimbra server.\n\n "; $mydb = mysql_connect('localhost',$user, $pass) or die ('Error connecting to server'); mysql_select_db($db); mysql_query("SET CHARACTER SET utf8"); mysql_query("SET NAMES utf8"); $query = "SELECT username,password,name,maildir,quota,domain FROM $table_mbox"; $dane = mysql_query($query) or die ('Error during query for '.mysql_error()); echo "Writing to $file ...\n"; $fh = fopen($file, "w"); fwrite($fh, "#!/bin/sh -x\n\n"); while ($row = mysql_fetch_array($dane, MYSQL_NUM)) { $data_mbox = "zmprov ca ".$row." dsfs123hsdyfgbsdgfbsd displayName '".$row."'\n"; $data_mbox .= "zmprov ma ".$row." userPassword '{crypt}".$row."'"."\n"; fwrite($fh, $data_mbox); } // skip domain aliases, aliases that forward to themselves and aliases // for which a mbox exists $query = "SELECT address, trim(trailing ',' from goto) AS dest FROM ".$table_alias." WHERE address NOT LIKE '@%' AND address NOT IN (SELECT username FROM $table_mbox) HAVING address != dest"; $dane = mysql_query($query) or die ('Error during query for '.mysql_error()); while ($row = mysql_fetch_array($dane, MYSQL_NUM)) { // multiple dests unset($rawdest_r); unset($dest_r); $rawdest_r = preg_split('/,/', $row); foreach ($rawdest_r as $dest) { if ($dest != $row) { // don't forward to itself $dest_r[] = $dest; } } if (count($dest_r) > 1) { // distribution list $data_list .= "zmprov cdl $row\n"; foreach ($dest_r as $dest) { $data_list .= "zmprov adlm $row $dest\n"; } } if (count($dest_r) == 1) { preg_match('/@(.*)$/', $row, $matches); $acct_domain = $matches; preg_match('/@(.*)$/', $dest_r, $matches); $alias_domain = $matches; if ($acct_domain == $alias_domain) { // we are adding an alias, not a forward // try to create alias both for a normal // account and for a distribution list. One of the // commands will fail, pity. $data_alias .= "zmprov aaa $dest_r $row\n"; $data_alias .= "zmprov adla $dest_r $row\n"; } else { // we are adding a forward $data_alias .= "zmprov ca $row " . rand_str(11) . "\n"; $data_alias .= "zmprov ma $row zimbraprefmailforwardingaddress $dest_r\n"; } } } // first create all distribution lists, last all aliases // We cannot create aliases for distribution lists that do not // exist yet fwrite($fh, $data_list . $data_alias); fclose($fh); echo "Done. Now copy $file to zimbra server and run: # su - zimbra $ sh ./$file "; function rand_str($length = 32, $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890') { // Length of character list $chars_length = (strlen($chars) - 1); // Start our string $string = $chars{rand(0, $chars_length)}; // Generate random string for ($i = 1; $i < $length; $i = strlen($string)) { // Grab a random character from our list $r = $chars{rand(0, $chars_length)}; // Make sure the same two characters don't appear next to each // other if ($r != $string{$i - 1}) $string .= $r; } // Return the string return $string; }
Полученный с помощью этого скрипта файл import.sh выполняем на сервере Zimbra.
Zimbra Desktop Downloads
Platform | Downloads | |
---|---|---|
Windows 64-bit |
Download 7.3.1 (MD5) (SHA256)111.8 MB | Windows MSI Installer |
|
Windows 32-bit |
Download 7.3.1 (MD5) (SHA256)104.3MB | Windows MSI Installer |
|
Mac OS X 10.9+ |
Download 7.3.1 (MD5) (SHA256)198.7 MB | DMG Package |
|
Linux x86 |
Download 7.3.1 (MD5) (SHA256)131 MB | TAR.GZ Package |
|
Linux x64 |
Download 7.3.1 (MD5) (SHA256)127.9 MB | TAR.GZ Package |
Platform | Downloads | |
---|---|---|
Windows 64-bit |
Download 7.3.0 (MD5) (SHA256)106.4MB | Windows MSI Installer |
|
Windows 32-bit |
Download 7.3.0 (MD5) (SHA256)98.6MB | indows MSI Installer |
|
Mac OS X 10.9+ |
Download 7.3.0 (MD5) (SHA256)114.8MB | DMG Package |
|
Linux x86 |
Download 7.3.0 (MD5) (SHA256)117.6MB | TAR.GZ Package |
|
Linux x64 |
Download 7.3.0 (MD5) (SHA256)115.8MB | TAR.GZ Package |
Platform | Downloads | |
---|---|---|
Windows 64-bit |
Download 7.2.8 (MD5) (SHA256)71MB | Windows MSI Installer |
|
Windows 32-bit |
Download 7.2.8 (MD5) (SHA256)71.1MB | Windows MSI Installer |
|
Mac OS X 10.9+ |
Download 7.2.8 (MD5) (SHA256)79.1MB | DMG Package |
|
Linux |
Download 7.2.8 (MD5) (SHA256)76.6MB | TAR.GZ Package |
Platform | Downloads | |
---|---|---|
Windows 64-bit |
Download 7.2.7 (MD5) (SHA256)68MB | Windows MSI Installer |
|
Windows 32-bit |
Download 7.2.7 (MD5) (SHA256)68MB | Windows MSI Installer |
|
Mac OS X 10.9+ |
Download 7.2.7 (MD5) (SHA256)74MB | DMG Package |
|
Linux |
Download 7.2.7 (MD5) (SHA256)73MB | TAR.GZ Package |
Platform | Downloads | |
---|---|---|
Windows |
Download 7.2.1 (MD5) 97MB | Windows MSI Installer |
|
MAC |
Download 7.2.1 (MD5) 77MB | DMG Package |
|
Linux |
Download 7.2.1 (MD5) 149MB | TAR.GZ Package |
Platform | Downloads | |
---|---|---|
Windows |
Download 7.2.2 (MD5) 92MB | Windows MSI Installer |
|
Mac OS X 10.6+ (Requires Java 1.6 or lower) |
Download 7.2.2 (MD5) 73MB | DMG Package |
|
Linux |
Download 7.2.2 (MD5) 109MB | TAR.GZ Package |
Platform | Downloads | |
---|---|---|
Mac OS X 10.7+ (Requires Java 1.7+) |
Download 7.2.3 (MD5) 74MB | DMG Package |
Platform | Downloads | |
---|---|---|
Windows |
Download 7.2.5 (MD5) 92MB | Windows MSI Installer |
|
Mac OS X 10.6+ |
Download 7.2.5 (MD5) 74MB | DMG Package |
|
Linux |
Download 7.2.5 (MD5) 109MB | TAR.GZ Package |
Platform | Downloads | |
---|---|---|
Windows |
Download 7.1.1 (MD5) 97MB | Windows MSI Installer |
|
MAC |
Download 7.1.1 (MD5) 75MB | DMG Package |
|
Linux |
Download 7.1.1 (MD5) 113MB | TAR.GZ Package |
Platform | Downloads | |
---|---|---|
Windows |
Download 7.1.2 (MD5) 96MB | Windows MSI Installer |
|
MAC |
Download 7.1.2 (MD5) 76MB | DMG Package |
|
Linux |
Download 7.1.2 (MD5) 111MB | TAR.GZ Package |
Platform | Downloads | |
---|---|---|
Windows |
Download 7.1.4 (MD5) 97MB | Windows MSI Installer |
|
MAC |
Download 7.1.4 (MD5) 77MB | DMG Package |
|
Linux |
Download 7.1.4 (MD5) 149MB | TAR.GZ Package |
Platform | Downloads | |
---|---|---|
Windows |
Download 7.0.1 (MD5) 91.2MB | Windows MSI Installer |
|
MAC |
Download 7.0.1 (MD5) 70.03MB | DMG Package |
|
Linus |
Download 7.0.1 (MD5) 107MB | TAZR.GZ Package |
Ограничение размера ящика и письма
Zimbra в качестве MTA использует Postfix, где эти ограничения задаются переменными:
# устанавливаем ограничение на ящик в 100Мб и на письмо в 10Мб mailbox_size_limit = 102400000 message_size_limit = 10240000
Конфигурационный файл /opt/zimbra/postfix/conf/main.cf генерируется при каждом запуске зимбры, поэтому исправлять его нет смысла. Редактируем файл /opt/zimbra/conf/zmmta.cf, но так как он доступен только для чтения, то сначала придётся сменить права:
$ chmod u+w ./zmmta.cf
Находим вышеуказанные переменные, присваиваем нужные значения, перезагружаем зимбру:
$ zmcontrol restart
Совместная работа с документами
В интерфейсе пользователя есть вкладка Drive. Здесь можно хранить свои файлы и делиться ими с другими пользователями системы. Есть возможность давать доступ на чтение или редактирование, а так же на редактирование и возможность так же назначать права для доступа других пользователей.
Отсюда можно запустить редактирование документа. Оно основано на онлайн версии популярного офисного пакета LibreOffice и поддерживает более 100 форматов документов, в т. ч. Microsoft Office. При работе над файлом каждое действие фиксируется, благодаря чему при желании можно будет не только вернуться к любому этапу создания документа, но и отследить порядок внесения правок в него, что помогает участвовать в процесс редактирования другим сотрудникам. Тут же можно будет быстро сохранить документ в виде pdf файла.
Я скажу честно, не протестировал этот функционал. Судя по тому, что все остальное у меня заработало, не думаю, что тут будут какие-то фатальные проблемы. Просто сервер для редактирования документов рекомендуется ставить на отдельную VPS, не на этот же сервер. В рамках тестирования у меня не было подходящей инфраструктуры под рукой, чтобы быстро связать все это дело. Судя по документации, там никаких сложностей нет. Так же качается пакет, ставится одной командой и потом связывается с основным сервером через ввод параметров для связи — адрес сервера и учетка для авторизации.
Думаю, что все это можно поставить и на один сервер, но не было времени проверить и разобраться.
Как настроить OTTPlayer на телевизорах Sony
Для того чтобы телевидение ОТТ ТВ работало на нормальном уровне, нужно провести ряд настроек. Они довольно простые потому обычному пользователю не составит труда с ними разобраться, особенно если у пользователя жидкокристаллический телевизор с функционалом типа Смарт.
Прежде чем запустить приложение, листам нужно присвоить имя. Когда это будет сделано, можно попробовать запустить приложение на своем телевизоре.
О, Zimbra почта
Вход в почту может быть осуществлен как с мобильного устройства так и с компьютера стационарного типа. Для того чтобы воспользоваться преимуществами корпоративной почты, а именно для таких целей и создана Zimbra, нужно всего лишь одно: получить логин и пароль доступа к корпоративному почтовому серверу и установить на используемое вами устройство соответствующее ПО (например, для Windows ОС можно скачать вот эту программу клиент — Zimbra Desktop). Или же воспользоваться традиционным способом:
Введите в поисковой строке своего браузера адрес: https://mail.iks.ru/
Прописываем соответствующие секретные коды доступа и вуа-ля — вы там, где комфорт и эффективность правят балом, а если быть точнее…разница будет лицеприятна и понятна в плане управления.
Дополнительные настройки
Добавление отправителей в белый список
Может возникнуть ситуация, при которой нам нужно изменить назначение СПАМ-балов для некоторых отправителей. Для этого открываем файл:
vi /opt/zimbra/conf/amavisd.conf.in
Находим строку:
{ # a hash-type lookup table (associative array)
…
}
… и внутри фигурных скобок {} добавим нужный нам домен или конкретного отправителя:
…
‘dmosk.ru’ => -10.0,
‘sender@dmosk2.ru’ => -10.0,
}
* таким образом мы сказали, что для писем с домена dmosk.ru и отправителя sender@dmosk2.ru отнимать 10 баллов за СПАМ. Такие письма начнут приходить без блокировки (при условии, что не будет отправлен явный СПАМ, который наберет очень много баллов).
После настройки перезапускаем amavis:
su — zimbra -c «zmamavisdctl stop && zmamavisdctl start»
Размер отправляемого сообщения
Задать максимальный размер сообщений можно командой:
su — zimbra -c ‘zmprov modifyConfig zimbraMtaMaxMessageSize 31457280’
* в данном примере мы задаем максимальный размер сообщения 30 мб.
После перезапускаем postfix:
su — zimbra -c «postfix reload»
Что такое Zimbra
Для начала расскажу, из чего состоит Zimbra. Это известные open source продукты.
- Почтовый сервер — Postfix.
- Сервер баз данных — MariaDB.
- Ldap сервер — OpenLDAP.
- Сервер приложений — Jetty.
- Web сервер apache и nginx в качестве прокси к нему.
- Поисковой движок — Lucene.
- Антивирус и антиспам — ClamAV и SpamAssassin и Amavisd в виде интерфейса для взаимодействия этих инструментов с MTA.
- Предпросмотр документов на базе LibreOffice.
В общих чертах появляется понимание о том, что из себя представляет Zimbra. Открытый вопрос с imap сервером. Ожидаешь увидеть здесь dovecot, но на самом деле у зимбры свой imap сервер. Все перечисленные компоненты связаны через web приложения, написанные на Java, в том числе интерфейс пользователя. Это накладывает свои особенности в эксплуатации, которые характерны для всех java приложений. Ожидать небольшого потребления системных ресурсов не приходится.
Системные требования
Минимальные системные требования для Zimbra следующие:
Система | Centos 7 и прочие клоны RHEL либо Ubuntu 16 |
Процессор | Intel/AMD 2.0 GHZ+ 64-bit, 2-4 CPU |
Память | 8 Gb Ram |
Диск | 5 GB для компонентов сиcтемы + место под почту |
Я в своем примере буду использовать операционную систему Centos 7.
Функционал
Рассмотрим теперь, какой функционал предоставляет бесплатная версия Zimbra из коробки.
- Непосредственно почтовый сервер с web интерфейсом. Доступен следующий функционал — почта, задачи, календарь, адресная книга, автоответы, алиасы и др.
- Простой чат через web клиент.
- Хороший функциональный поиск по почтовой базе.
- Шифрование почтовых сообщений.
- Предпросмотр документов в web интерфейсе.
- Антиспам и антивирус.
- Web консоль управления сервером для администратора.
- Приложение для компьютера Zimbra Desktop. К сожалению, больше не поддерживается.
В целом, ничего особенного. Весь этот функционал можно настроить так или иначе самостоятельно. Но это под силу не только лишь всем 🙂 Объем работы будет очень большой. Нужно хорошее знание linux и понимание устройства и работы почтовых серверов.
Zimbra хороша тем, что дает готовое, единое, комплексное решение, которое ставится практически автоматически и не требует больших знаний linux для развертывания и управления. После установки доступен web интерфейс, через который все управляется. Лазить в консоль сервера практически не нужно. Только если траблшутить какие-то проблемы. Если у вас хороший бэкграунд на тему почтового сервера на базе postfix, но вам просто надоело все настраивать руками, то проблем быть не должно. Если его нет, то как повезет. Но в целом, продукт стабилен и надежен. При типовом использовании проблем быть не должно.
Автоматизация переноса учёток
Почтовая учётная запись создаётся двумя командами:
/opt/zimbra/bin/zmprov ca user@domain.ru userpass displayName "Фамилия Имя Отчество" /opt/zimbra/bin/zmprov ma user@domain.ru userPassword 'userpass'
где userpass — пароль пользователя
Первая команда создаёт пользователя с открытым паролем, вторая — перезаписывает открытый пароль шифрованным (поэтому первый пароль может быть любым).
Если есть список пользоватей и их пароли, то скрипт можно составить, например, в OpenOffice Calc добавить необходимые поля (команды, кавычки), и затем сохранить в формате csv с разделителем «пробел».
Можно сначала создать все учётные записи, а зетем у всех поменять пароль.
Чтобы корректно отображались кирилические буквы, скрипт лучше выполнять от имени root или можно настроить локаль. Проверить настройки локали можно командной:
# echo $LANG ru_RU.UTF-8
а установить командами:
LANG=ru_RU.UTF-8 export $LANG
Настройка zimbra после установки
Чтобы начать пользоваться сервером, внесем основные настройки. Для этого открываем браузер и вводим адрес https://<IP-адрес сервера>:7071 — должна открыться страница с ошибкой, разрешаем открытие страницы и мы увидим форму для входа в панель администрирования Zimbra. Вводим логин admin и пароль, который задавали при установке.
Добавление домена
Если мы не меняли рабочий домен в настройках во время установки сервера, то основной домен будет таким же, как имя сервера. Как правило, это не то, что нам нужно. И так, заходим в Настройка — Домены. В правой части окна кликаем по значку шестеренки и Создать:
Задаем название для нового домена:
… и кликаем Далее.
В следующем окне выбираем сервер:
… можно нажать Готово.
Теперь поменяем домен по умолчанию. Переходим в Настройка — Глобальные настройки. Меняем значение для поля «Домен по умолчанию»:
… и нажимаем Сохранить.
Создание почтового ящика
Переходим с главного меню панели администрирования в Управление — Учетные записи. Справа кликаем по шестеренке — Создать:
Задаем имя учетной записи, а также фамилию пользователя:
Задаем пароль пользователя и, по желанию, ставим галочку Требуется сменить пароль:
При необходимости создания административной учетной записи ставим галочку Глобальный администратор:
Нажимаем Готово.
Такие полезные опции: фишки Zimbra функционала
Что тут сказать, интерфейс потрясает: все плавно и подробно (необычность не только в описании — эжто нужно проверить, пощупать и принять на вооружение)
Кнопки на своем действительном и, что немаловажно, ожидаемом месте. Пальцы сами находят нужный раздел и письма открываются как по велению мыслей пользователя
Кстати, о спаме можно совсем забыть, как о явлении, не имеющем места быть в Zimbra в принципе и априори. Конечно же если сисадмин на фирме все правильно настроил и нигде не допустил «непоправимых упущений».
Главное достоинство Zimbra — это софт, который работает безупречно и по-умному. Мгновенное быстродействие — это недостаточное описание молниеносно происходящего процесса «обмен сообщениями», которые, кстати, по многим характеристикам (например, ограниченность традиционных серверов почты — письмо в 25 МБ и ни байта больше!) в разы превосходит «долгоиграющие аналоги в Сети.
Сегодня вопрос о защите персональных данных в Интернете всё больше набирает популярности. Особенно, тенденцию к улучшению уровня защиты информации можно заметить у различных фирмах и корпорациях, которые дорожат своими секретами. Если же говорить о защите переписок, то здесь уместно будет сказать о сервисе Zimbra, который имеет ряд особенностей, о чем мы далее и поговорим.
Загрузка дистрибутива и установка Zimbra
Переходим по одной из ссылок выше для загрузки платной или бесплатной версии.
Если мы планируем установить платную версию, сначала кликаем по START FREE TRIAL:
Проходим процедуру регистрации. На указанный адрес электронной почты мы получим файл с лицензией (на 60 дней). Переносим данный файл на сервер Zimbra, например, при помощи программы WinSCP.
Возвращаемся на страницу загрузки zimbra и копируем ссылку на дистрибутив:
Используя скопированную ссылку, загружаем дистрибутив Zimbra:
wget https://files.zimbra.com/downloads/8.8.15_GA/zcs-NETWORK-8.8.15_GA_3869.UBUNTU18_64.20190918004220.tgz
Распаковываем скачанный архив:
tar -xzvf zcs-*.tgz
Переходим в распакованный каталог:
cd zcs-*/
Запускаем установку почтового сервера:
./install.sh
На экране отобразится лицензионное соглашение — принимаем его:
Do you agree with the terms of the software license agreement? Y
* в платной версии лицензионное соглашение нужно принять дважды.
Разрешаем использование репозитория от Zimbra:
Use Zimbra’s package repository Y
Устанавливаем необходимые модули (или все):
Install zimbra-ldap Y
Install zimbra-logger Y
Install zimbra-mta Y
Install zimbra-dnscache Y
Install zimbra-snmp Y
Install zimbra-store Y
Install zimbra-apache Y
Install zimbra-spell Y
Install zimbra-convertd Y
Install zimbra-memcached Y
Install zimbra-proxy Y
Install zimbra-archiving Y
Install zimbra-drive Y
Install zimbra-imapd (BETA — for evaluation only) N
Install zimbra-network-modules-ng Y
Install zimbra-talk Y
* в зависимости от ситуации, мы можем выбрать лишь несколько компонентов, например, для использования сервера в качестве агента передачи сообщений, мы можем оставить только zimbra-mta. Но в нашем примере мы будем настраивать Zimbra со всем компонентами.
Подтверждаем ранее введенные настройки:
The system will be modified. Continue? Y
Начнется процесс установки и конфигурирования Zimbra. Ждем окончания процесса.
Если для нашего домена еще нет записи MX, мы увидим сообщение:
It is suggested that the domain name have an MX record configured in DNS
Установщик предложит поменять домен — отвечаем отрицательно:
Change domain name? No
… установщик покажет меню с настройкой Zimbra:
В данном случае мы можем поменять любую из настроек. Настройки, которые необходимо сделать для продолжения установки показаны звездочками — в данном примере необходимо задать пароль администратора (Admin Password) и указать путь до файла с лицензией (License filename). И так, кликаем 7:
Address unconfigured (**) items (? — help) 7
Переходим к установке пароля:
Select, or ‘r’ for previous menu 4
… и задаем пароль.
Если мы устанавливаем платную версию, указываем путь до файла с лицензией:
Select, or ‘r’ for previous menu 25
… и указываем путь до файла с лицензией, например:
Enter the name of the file that contains the license: /opt/zimbra/ZCSLicense.xml
Теперь выходим из меню:
Select, or ‘r’ for previous menu r
Применяем настройки:
Select from menu, or press ‘a’ to apply config (? — help) a
Сохраняем конфигурационный файл:
Save configuration data to a file? Y
Соглашаемся с путем сохранения файла:
Save config in file: [/opt/zimbra/config.20863]
Продолжаем конфигурирование:
The system will be modified — continue? Y
Дожидаемся окончания установки, на запрос отправки уведомления можно ответить отказом:
Notify Zimbra of your installation? n
В конечном итоге, нажимаем Enter:
Configuration complete — press return to exit
Сервер установлен. Однако, установщик меняет пароль пользователя root. Меняем его обратно:
passwd root
Почему именно Zimbra?
Чем же хорош сервис Zimbra, если он идеально подходит для использования его в корпоративных целях? Давайте небольшими тезисами пройдемся по основным пунктам:
- Предоставление качественной защиты персональных данных от взлома. Частично, это достигается тем, что на эту почту невозможно зайти удаленно.
- Хорошая антипам-защита. Почта Zimbra отлично справляется со спамом и рекламными рассылками.
- Имеется возможность настроить сбор электронных сообщений с других почтовых ящиков, что в разы может упростить работу с электронными письмами.
- Наличие удобного интерфейса. Сервис поддерживает различные устройства (мобильные тоже), имеет удобный графический интерфейс и поддержку многих почтовых клиентов, в том числе Zimbra Desktop.
Что такое Zextras
Продукт Zextras состоит из двух компонентов — Zextras Suite и Team Pro. Рассмотрим функционал каждого из них. Начнем с Zextras Suite и его основных возможностей (не всех):
- Одноканальный (1:1) мессенджер с поддержкой аудио и видео звонков.
- Создание и редактирование документов, таблиц, презентаций в интегрированной LibreOffice с поддержкой форматов документов Microsoft Office, кроме бизнес аналитики, OLAP.
- Совместная работа с документами через web интерфейс. В том числе преобразование в pdf в один клик.
- Индивидуальный виртуальный диск Drive для хранения документов с возможностью делиться файлами.
- Поддержка различных Storage для хранения информации, в том числе объектные, типа S3 с приоритезацией хранения данных на хранилищах разных типов.
- Расширенная возможность бэкапа (компрессия, дедупликация) и восстановления данных, в том числе удаленных писем и т.д. Все это связано с поддержкой различных Storage из предыдущего пункта.
- Поддержка мобильных устройств, в том числе с помощью Active Sync. Есть мобильные приложения для iOS и Android.
- Поддержка клиента Microsoft Outlook с помощью того же Active Sync.
- Расширенные возможности администрирования. Делегирование нескольким администраторам ограниченных прав, логирование их действий и т.д.
Продукт Team Pro дает дополнительные возможности к перечисленным выше:
- Многоканальные видеозвонки для организации видеоконференций.
- Возможность общения с внешними пользователями, не зарегистрированными в системе.
- Демонстрация своего экрана для одного или нескольких зрителей, возможность делиться файлами.
Все перечисленные возможности интегрированы в стандартный интерфейс Zimbra и управляются через него. Расширения Zextras являются надстройкой, не изменяя код самого почтового сервера. Их можно без проблем удалить. Аудио и видеочаты реализованы на базе WebRTC, поэтому работают через браузер и не требуют установки дополнительного ПО.
Zextras полностью платный продукт. Open source версии нет. Можно воспользоваться 30-ти дневным триалом для тестирования функционала. Стоимость различных лицензий можно узнать у официального партнера Zextras в РФ — SVZcloud.
С теорией и описанием закончили. Переходим к установке и настройке. Начнем с установки Zimbra.
Настройка DKIM
Отдельно рассмотрим процесс настройки подписи DKIM на почтовом сервере Zimbra. Формирование ключей выполняется для каждого из доменов из командной строки. Подключаемся к серверу по SSH и вводим команду:
su — zimbra -c «/opt/zimbra/libexec/zmdkimkeyutil -a -d dmosk.ru»
* данная команда создаст последовательности ключей для домена dmosk.ru.
Мы должны получить ответ на подобие:
Public signature to enter into DNS:
5D8C3E02-4EFA-11EA-872A-D9A5B4628C49._domainkey IN TXT ( «v=DKIM1; k=rsa; »
«p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5iLy58AJ1fdB15BZgh/VtGfZsi+TrDyvqqZaL5pJ+MQaQrpqHW8AF5kyxW2QzAMjyKzySMZX0PoHUuV93Yxf2t52IFihvb7ivqmRwlqFV3gU7j8zqbAGWHfZo4Ydw0kUmU6pm+Z85aWt4k7rQ7vWXludQGf8yIaSMMmodxze9E5VUOtUA18dIEEPcbwSgOO6YhQLuC78T4FiF5»
«8epQnsX0voSfg9tMW+r+P1b5fTy5Guyqh1plWYseKxPzHKHbc4Lokcgo1AZzKG5Mvo5OCXsKUE1fSoc366AFSoUnWr23P7oUbf+NjXzPMS8ESGA9TfpDA6eRJT4QEpi72AdIy4rQIDAQAB» ) ; —— DKIM key 5D8C3E02-4EFA-11EA-872A-D9A5B4628C49 for dmosk.ru
В данном ответе нас интересуют записи 5D8C3E02-4EFA-11EA-872A-D9A5B4628C49._domainkey — это имя для TXT в домене dmosk.ru; «v=DKIM1; k=rsa; » «p=M…AB» — содержимое записи.
В настройках домена необходимо добавить данную запись, после чего подождать, минут 15. После выполняем проверку:
opendkim-testkey -d dmosk.ru -s 5D8C3E02-4EFA-11EA-872A-D9A5B4628C49 -x /opt/zimbra/conf/opendkim.conf
* где dmosk.ru — наш домен; 5D8C3E02-4EFA-11EA-872A-D9A5B4628C49 — селектор, который мы видели в записи 5D8C3E02-4EFA-11EA-872A-D9A5B4628C49._domainkey.
* если при вводе команды мы получим ошибку «Command ‘opendkim-testkey’ not found», необходимо установить opendkim-tools командой apt-get install opendkim-tools (deb) или yum install opendkim-tools (RPM).
Для просмотра имеющихся записей DKIM можно воспользоваться командой:
su — zimbra -c «/opt/zimbra/libexec/zmdkimkeyutil -q -d dmosk.ru»
Подготовка сервера
Независимо от выбранного дистрибутива Linux или редакции Zimbra выполняем следующие действия для подготовки сервера к корректной работы почтового сервера.
1. Настройка времени
Устанавливаем корректный часовой пояс:
timedatectl set-timezone Europe/Moscow
* в данном примере мы зададим московское время.
Теперь установим утилиту для синхронизации времени и запустим ее.
а) если используем систему на базе RPM (CentOS / Red Hat):
yum install chrony
systemctl enable chronyd —now
б) если используем систему на базе deb (Ubuntu):
apt-get install chrony
systemctl enable chrony —now
2. Безопасность
SELinux
Если на сервере используется SELinux (по умолчанию, на системах RPM), рекомендуется ее отключить. Для этого вводим 2 команды:
setenforce 0
sed -i ‘s/^SELINUX=.*/SELINUX=disabled/g’ /etc/selinux/config
* подробнее в статье Как отключить SELinux.
Брандмауэр
Для нормальной работы Zimbra нужно открыть много портов:
- 25 — основной порт для обмена почтой по протоколу SMTP.
- 80 — веб-интерфейс для чтения почты (http).
- 110 — POP3 для загрузки почты.
- 143 — IMAP для работы с почтовым ящиком с помощью клиента.
- 443 — SSL веб-интерфейс для чтения почты (https).
- 465 — безопасный SMTP для отправки почты с почтового клиента.
- 587 — SMTP для отправки почты с почтового клиента (submission).
- 993 — SSL IMAP для работы с почтовым ящиком с помощью клиента.
- 995 — SSL POP3 для загрузки почты.
- 5222 — для подключения к Zimbra по протоколу XMPP.
- 5223 — для защищенного подключения к Zimbra по протоколу XMPP.
- 7071 — для защищенного доступа к администраторской консоли.
- 8443 — SSL веб-интерфейс для чтения почты (https).
- 7143 — IMAP для работы с почтовым ящиком с помощью клиента.
- 7993 — SSL IMAP для работы с почтовым ящиком с помощью клиента.
- 7110 — POP3 для загрузки почты.
- 7995 — SSL POP3 для загрузки почты.
- 9071 — для защищенного подключения к администраторской консоли.
В зависимости от утилиты управления фаерволом, команды будут следующие.
а) Если используем firewalld (Red Hat, CentOS):
firewall-cmd —permanent —add-port={25,80,110,143,443,465,587,993,995,5222,5223,9071,7071,8443,7143,7993,7110,7995}/tcp
firewall-cmd —reload
б) Если используем iptables (Ubuntu):
iptables -A INPUT -p tcp —match multiport —dports 25,80,110,143,443,465,587,993,995,5222,5223,9071,7071,8443,7143,7993,7110,7995 -j ACCEPT
netfilter-persistent save
в) Если используем ufw (Ubuntu):
ufw allow 25,80,110,143,443,465,587,993,995,5222,5223,9071,7071,8443,7143,7993,7110,7995/tcp
3. DNS и имя сервера
Для корректной работы почтового сервера необходимо создать mx-записи для домена (подробнее о ).
Но для установки Zimbra важнее, чтобы в локальном файле hosts была запись о нашем сервере, в противном случае, установка прервется с ошибкой. И так, задаем FQDN-имя для сервера:
hostnamectl set-hostname zimbra.dmosk.ru
Теперь открываем на редактирование файл:
vi /etc/hosts
… и добавляем:
192.168.1.15 zimbra.dmosk.ru zimbra
* где 192.168.1.15 — IP-адрес нашего сервера; zimbra — имя сервера; dmosk.ru — наш домен.
Не совсем очевидная проблема, но если в системе не будет пакета hostname, при попытке запустить установку зимбры, мы будем получать ошибку определения IP-адреса по имени. Устанавливаем пакет.
а) для CentOS (Red Hat):
yum install hostname
б) если Ubuntu (Debian):
apt-get install hostname
4. Системная переменная для имени сервера
Чтобы нам было удобнее вводить команды, где требуется указать имя сервера, создадим системную переменную:
myhostname=zimbra.dmosk.ru
Теперь мы можем в команде использовать переменную $myhostname.