1. Вы находитесь в архивной версии форума xaker.name. Здесь собраны темы с 2007 по 2012 год, большинство инструкций и мануалов уже неактуальны.
    Скрыть объявление

Zarafa – свободная альтернатива замена Microsoft Exchange

Тема в разделе "FAQ", создана пользователем Jason Bourne, 25 окт 2011.

  1. Jason Bourne

    Jason Bourne [email protected]:~# Модератор

    Регистрация:
    28 ноя 2009
    Сообщения:
    0
    Симпатии:
    96
    Баллы:
    0
    Не секрет, что при необходимости развернуть систему обмена сообщениями и совместной работы в первую очередь приходит в голову широкоразрекламированая связка Microsoft Exchange и Outlook. Для сравнительно небольших и средних организаций покупка такого решения не всегда оправдана в первую очередь по цене. Здесь как мне кажется предпочтительнее использовать бесплатные OpenSource альтернативы. К тому же в небольших городах легче найти хорошего PHP специалиста, который в состоянии установить большинство подобных решений, чем администратора хорошо знающего Microsoft Exchange. В итоге изначальные затраты и последующие будут на порядок ниже. В журнале уже не один раз описывались решения для организации коллективной работы, имеющие разную функциональность. Особой популярностью пользуется Zimbra Collaboration Suite Open Source Edition, отличное полнофункциональное решение, обеспечивающее обмен электронными сообщениями и документами, которое при помощи зимлетов (zimlets) можно настроить практически под любые требования. Но в некоторых случаях необходим более легкий и простой продукт, способный заменить Outlook на рабочих столах и желателен подобный интерфейс. Так в поле зрения и попало решение решение Zarafa (- http://www.zarafa.com/), которое разрабатывается одноименной Нидерландской компанией. Продукт часто упоминался в анонсах, но подробного обзора его возможностей нет.

    Разработка Zarafa возникла не на пустом месте. Долгое время продукт продвигался под другим именем – ConnecTUX, который позиционировался как альтернатива Microsoft Exchange Server. Выпускался ConnecTUX под коммерческой лицензией, что вызывало критику у OpenSource сообщества. Причина стандартна, ConnecTUX базировался на свободных компонентах (Apache, PHP, MySQL и другие) и использовал закрытые компоненты, фактически нарушая условия GNU GPL. В 2007 Zarafa открыла под GPLv2 код Z-Push – веб-приложения (Apache+PHP) обеспечивающего ActiveSync синхронизацию с совместимыми мобильными устройствами (BlackBerry, Google Android, Windows Mobile, Apple iPhone и так далее). Затем в сентябре 2008 уже Zarafa был выпущен под двойной – открытой Affero GPL и коммерческой лицензиями, тогда же окончательно закрепилось имя Zarafa. Кроме этого Zarafa стали активно взаимодействовать с OpenMapi (openmapi.org) который занимается разработкой открытой версии интерфейса MAPI (Messaging Application Programming Interface) используемого в Microsoft Windows для работы с электронной почтой (отправка, получение сообщение, присоединение файлов и так далее). В настоящее время под лицензией AGPL доступны все серверные компоненты, расширения MAPI4Linux, PHP-MAPI, веб-клиент WebAccess и некоторые другие части. Которые по сути являются основой Community версии продукта, которую можно скачать и использовать бесплатно. Закрытые компоненты предлагаются в коммерческой версии Zarafa, имеющей дополнительные возможности и техническую поддержку. Коммерческая версия предлагается в трех вариантах Standard, Professional и Enterprise, все отличия которых от Community можно найти на специальной странице сайта. Далее будем знакомиться с возможностями именно с бесплатной версией.
    Zarafa написан на PHP и в работе использует ряд популярных OpenSource серверов и технологий, которые обеспечивают необходимую функциональность – Apache, PHP, MySQL, MTA (Postfix, Qmail, Exim, Sendmail), POP3/IMAP (Dovecot) и некоторые другие.
    Версия Community предоставляет все основные возможности, которые обеспечивает связка Exchange/Outlook – электронная почта, личная адресная книга, список задач, календарь (с возможностью отсылки приглашения внутренним и внешним пользователям, распределения задач), персональные и публичные папки. При этом все функции пользователю доступны через веб-клиент WebAccess, использующий технологию Ajax,
    поддерживаются горячие клавиши (включаются Setting – Shortcuts). Главная особенность WebAccess – он выглядит и ведет себя как Outlook. Поэтому пользователи, которые ранее работали с этим клиентом не будут ощущать каких-либо неудобств при переходе.
    Здесь я позволю немного забежать вперед. Интерфейс WebAccess переведен на два десятка языков, но в настоящее время списке русского нет. И, к сожалению, установить на каком этапе сейчас находится процесс перевода, я не могу. Для перевода используется веб-интерфейс Pootle (документ по переводу интерфейса Zarafa -http://www.zarafa.com/wiki/index.php/Translation_Guide, веб-интерфейс Zarafa’s translator interface – https://pootle.zarafa.com/), чтобы получить данные необходимо зарегистрироваться. А чтобы зарегистрироваться необходимо, отправить письмо, в котором указать причину, почему это вдруг вы решили заняться переводом и язык, на который будете переводить. И ждать решения. Я пока не дождался. Второй вариант перевести интерфейс самостоятельно, взяв за основу файл с расширением *.mo, который находится в каталоге /usr/share/zarafa-webacces/server/language. Судя по меткам внутри файлов, сами разработчики используют PHP-Langadmin.
    Кроме WebAccess поддерживается и подключение через Outlook от 2000 – 2007 (по протоколу MAPI, поддержка Outlook 2010 пока в бета версии), но версия Community обеспечивает лишь 3 клиента. Остальные пользователи могут использовать протокол POP3/IMAP для работы с почтовых клиентов вроде Mozilla Thunderbird и iCal/CalDAV (Mozilla Sunbird). Защита электронной почты обеспечивается за счет интеграции с антивирусными (ClamAV, Amavisd-new) и антиспам (SpamAssassin, Dspam) решениями. В отличие от Zimbra, администратор в случае такой необходимости самостоятельно настраивает связку. Удаленные сообщения хранятся в базе еще в течение 30 дней, что дает возможность восстановить их в случае необходимости.
    Для аутентификации и хранения информации об учетных записях Zarafa может брать информацию о пользователях из LDAP (OpenLDAP, eDirectory, Mandriva Directory Server и другие), Active Directory, локальных учетных записей Unix и MySQL. При подключении к ним Zarafa автоматически синхронизирует свою базу и в случае, каких либо изменений режиме реального времени обновляет записи. Дополнительные атрибуты позволяют настроить квоты и псевдонимам. Вложения к электронным сообщениям могут храниться в базе данных (по умолчанию) или в виде отдельных файлов. Изменить настройки можно в любое время. Доступен также скрипт (db-convert-attachments-to-files) позволяющий извлечь вложения из БД и перенести их в файловую систему. Возможно сжатие вложений.
    Если сравнить возможности Zarafa с Zimbra Collaboration Suite Open Source Edition, то заметно, что по функциональности, Zarafa уступает Zimbra. В частности отсутствует функция документооборота. Но спешить с выводами рано, ведь предусмотрена интеграция Zarafa с некоторыми открытыми решениями, среди которых – SugarCRM, O3Spaces, OpenERP и Alfresco, что позволяет при необходимости нарастить нужную функциональность. Особо хочу отметить, что несколько организаций без проблем могут использовать единую установку Zarafa, что также позволяет сэкономить, распределив бюджет.

    Конструктивно Zarafa состоит из нескольких компонентов:
    • Zarafa Server (zarafa-server) – основной сервер принимающий запросы от клиентов по протоколу SOAP (HTTP) и сохраняющий данные в SQL базе данных;
    • Zarafa License Manager (zarafa-licensed) – определяет возможности сервера согласно выбранной лицензии;
    • Zarafa Gateway (zarafa-gateway) и Zarafa Caldav (zarafa-caldav) – опциональные сервисы обеспечивающие поддержку протоколов iCal/CalDAV и POP3/IMAP соответственно;
    • Zarafa Monitor (zarafa-monitor) – контроль пользовательских квот;
    • Zarafa Indexer – опциональный сервис, позволяющий производить полноценный поиск в почтовых сообщениях и вложениях;
    • Zarafa Delivery Agent и Zarafa Spooler (zarafa-dagent, zarafa-spooler) – инструменты для отправки сообщений к/из MTA.

    [+] Изображение
    [​IMG]
    [свернуть]


    Настройки производятся при помощи утилиты командной строки “zarafa-admin”, которая позволяет управлять настройками учетных записей пользователей и групп. В коммерческих версиях доступны утилиты упрощающие создание резервной копии и восстановление данных. Но такую функциональность легко реализовать самостоятельно при помощи скриптов или других утилит для резервирования.
    Для подключения Outlook к серверу (по протоколу HTTPS) используется Zarafa Windows Client, поддерживающий установку на Windows XP, 2003, Vista, 7 и 2008.
    Подробный список всех возможностей приведен в документе Featurelist. Также следует отметить документацию проекта, в частности “The Administrator Manual” . А также Wiki, на котором хотя и относительно немного документации по сравнению с Zimbra и часть ее рассчитана явно на специалиста, но ответы на оставшиеся после прочтения вопросы “The Administrator Manual” она дает. Для изучения документации необходим технический английский, найти описание на русском мне не удалось. Остальную информацию или помощь можно получить форуме проекта, который содержит около 5 тысяч топиков, обычно отвечают там очень быстро.

    Установка Zarafa

    Проект официально из операционных систем поддерживает только Linux и предлагает готовые пакеты для установки Zarafa в RHEL 4/5, SLES 10/11, SuSE 9.1/10/10.2, Debian 4.0/5.0 и Ubuntu 6.06/8.04/10.04 (все LTS релизы, нужно разрешить Canonical Partner Repository). В зависимости от дистрибутива доступна сборка для х86, x86_64 и ia64. Причем при закачке будьте внимательны, предлагаются две сборки. Первая содержит свободные компоненты, вторая обеспечивает поддержку трех подключений Outlook. Кроме этого на странице можно загрузить дополнительные приложения, вроде Zarafa Windows Client, который необходим для интеграции с Outlook и расширения для веб-браузера Firefox (управление вложениями и индикатор прихода новой почты).
    В репозитариях некоторых дистрибутивов (Mandriva, Fedora, Gentoo и Arch.) можно найти неофициальные сборки. Администраторам других дистрибутивов Linux и ОС (FreeBSD, OpenBSD, возможно и Windows) предложено собирать Zarafa при помощи исходных текстов, процесс достаточно подробно описан в WiKi проекта.
    В репозитарии Ubuntu находится как правило более ранняя:

    Код:
    $ sudo apt-cache show zarafa | grep –i version
    И хотя установка при помощи APT, сулит множество удобств, рассмотрим вариант установки при помощи файлов доступных на сайте проекта. Установочный файл небольшой, всего 7.5 Мб, к примеру, размер архива Zimbra 450 Мб. Внутри архива находятся deb пакеты и скрипты для установки и деинсталляции Zarafa. Установочный скрипт полуавтоматический, он лишь проверяет необходимые зависимости, но самостоятельно устанавливает лишь веб-сервер Apache 2.х с поддержкой PHP 4.3.x/5.x. Все остальное MySQL 4.1 и выше, SMTP сервер, конвертер MS Word документов catdoc, и poppler-utils (для индексирования документов и работы с PDF), опционально LDAP сервер администратор ставит, самостоятельно следуя подсказкам скрипта.
    К слову в первых версиях, не было и этого, поэтому можно сказать, что сегодняшняя Zarafa уже сделала как минимум шаг вперед.

    Вначале устанавливаем зависимости :

    Код:
    $ sudo apt-get install mysql-server poppler-utils catdoc
    Можно также установить Apache с поддержкой PHP:

    Код:
    $ sudo apt-get install apache2-mpm-prefork libapache2-mod-php5
    Но как говорилось такую установку и прочие зависимости инсталлятор может провести самостоятельно. Zarafa требует для корректной работы PHP расширения gettext, session,iconv и xml, но в Ubuntu они устанавливаются автоматически.
    Чтобы не подключаться к базе данных от имени администратора, можно создать отдельную учетную запись, введя в консоли MySQL:

    Код:
    mysql> GRANT ALL PRIVILEGES ON zarafa.* TO 'zarafa'@'localhost' IDENTIFIED BY 'password';
    Теперь можно запускать скрипт:

    Код:
    $ tar xzvf zarafa-6.40.2-ubuntu10.04-x86_64.tar.gz
    $ cd zarafa-6.40.2-ubuntu10.04-x86_64/
    $ sudo ./install
    [+] Изображение
    [​IMG]
    [свернуть]

    Работа установочного скрипта Zarafa

    В процессе запуска сервера Zarafa будет предложено ввести серийный номер лицензии, оставляем это поле пустым. Далее указываем параметры подключения к базе данных и расположения SMTP сервера (по умолчанию локальная система) и периодичность отсылки предупреждений о достижении квот (по умолчанию 1 день), разрешение запуска сервисов POP3/IMAP/Ical/CalDAV и номера портов. На этом все. При необходимости настройки можно повторить запустив “dpkg-reconfigure zarafa” или изменив их непосредственно в конфигурационных файлах. Чтобы убедиться, что все зависимости удовлетворены и нет конфликтов, не мешает выполнить команду:

    Код:
    $ sudo apt-get -f install
    Далее необходимо проверить, чтобы был активен модуль mod_proxy веб-сервера.

    Код:
    $ sudo a2enmod proxy
    Enabling module proxy.
    И перезапустить Apache.

    Код:
    $ sudo /etc/init.d/apache2 restart
    В случае самостоятельной локализации интерфейса, прежде чем приступать к запуску Zarafa, нужно выполнить еще одну настройку. Возможно, это пока Zarafa не поддерживает русский по-умолчанию. Каталоги пользователя (как и некоторые другие установки) создаются при помощи скриптов находящихся в /etc/zarafa/userscript. Так при создании новой учетной записи активируется скрипт /etc/zarafa/userscripts/createuser.d/00createstore, содержащий команду zarafa-admin для создания папок пользователя (все команды можно узнать в “man zarafa-admin”):

    Код:
    zarafa-admin --create-store "${ZARAFA_USER}" --lang "${ZARAFA_LANG}"
    Указываем нужную локаль.

    Код:
    zarafa-admin --create-store "${ZARAFA_USER}" --lang ru_RU.UTF8
    Нужная локаль должна присутствовать в списке “dpkg-reconfigure locales”.
    Теперь можно запускать сервисы /etc/init.d/zarafa-*:

    Код:
    $ sudo /etc/init.d/zarafa-spooler start
    $ sudo /etc/init.d/zarafa-spooler start
    $ sudo /etc/init.d/zarafa-monitor start
    $ sudo /etc/init.d/zarafa-gateway start
    $ sudo /etc/init.d/zarafa-ical start
    Теперь можно посмотреть веб-интерфейс WebAccess, зайдя на страницу http://IP-сервера/webaccess, но зарегистрироваться пока не получится.

    [+] Изображение
    [​IMG]
    [свернуть]


    Конфигурационный файл Zarafa

    Все настройки сервера производятся исключительно путем установок в конфигурационном файле. Веб-интерфейс WebAcces предназначен только для работы с почтой, календарем, и так далее. Возможно это кому то покажется неудобным, но иногда проще заранее подготовить конфигурацию, которую и использовать после установки. Основной конфигурационный файл сервер /etc/zarafa/server.cfg, содержит достаточно большое количество настроек. Здесь устанавливается: IP и порт которые слушает сервер, подключение к MySQL, учетная запись под которой стартует демон, настройки журналирования, SSL, кэширование, квоты и другие. И хотя параметров достаточно много, они разбиты по группам в соответствии с назначением и комментированы. Подробно они все описаны в “man zarafa-server.cfg”. Файл состоит из параметров (имя = значение), директив (!директива = значение). Так внешний файл можно подключить при помощи директивы include (!include = путь_к_файлу). Поэтому разобраться не тяжело, при чем большую часть из них скорее всего трогать не придется (на первых порах точно).
    Кроме этого установки сервисов хранятся в нескольких файлах /etc/default/zarafa-* (или /etc/sysconfig/zarafa* в зависимости от дистрибутива). Не все файлы задействуются в во всех конфигурациях. Например, unix.cfg будет считываться только в том случае если подключена локальная Unix база учетных записей. И опять же, настройки внутри позволяют работать в 99% конфигураций. Также демон при загрузке считывает установки из файла /etc/default/zarafa-server.

    Так как все параметры описывать не имеет смысла, расскажу только о тех с которыми придется столкнуться в первую очередь.

    Создание учетных записей

    Как говорилось выше, Zarafa поддерживает работу с собственной БД, локальной Unix базой пользователей /etc/passwd, LDAP и Active Directory. По умолчанию используется первый вариант. Изменить установки можно при помощи переменных user_plugin и user_plugin_config .

    Код:
    $ sudo cat /etc/zarafa/server.cfg | grep user_plugin
     
    user_plugin             = db # ldap, unix, db
    user_plugin_config      = /etc/zarafa/ldap.cfg
    Файла ldap.cfg в поставке нет, поэтому эту строку можно не учитывать.
    Создаем публичные папки:

    Код:
    $ sudo zarafa-admin –s
    Чтобы добавить новую учетную запись в базу данных, вводим команду:

    Код:
    zarafa-admin -c <user name> -p <password> -e <email> -f <full name> -a <administrator>
    </administrator></full></email></password></user>
    Удалить:

    Код:
    /usr/bin/zarafa-admin -d <user name>
    </user>
    Все параметры понятны, кроме последнего. Установка значения в 1 дает пользователю права администратора. Если пользователей в организации не много, можно задействовать локальную учетную запись Unix:

    Код:
    user_plugin             = unix
    user_plugin_config      = /etc/zarafa/unix.cfg
    После перезапуска демона, пользователи могут подключаться к своим папкам.

    [+] Изображение
    [​IMG]
    [свернуть]


    Настройка SSL

    Сервер Zarafa обязательно должен быть активирован поддержка защищенных SSL соединений, но по умолчанию такая возможность отключена. Причина проста – нужно сгенерировать сертификат. Почему это нельзя реализовать в установочном скрипте, непонятно. В итоге все настройки производим самостоятельно. Создаем каталог, в котором будут храниться сертификаты.

    Код:
    $ sudo mkdir /etc/zarafa/ssl
    $ sudo chmod 700 /etc/zarafa/ssl
    Если демон работает под другой учетной записью, необходимо установить соответсвующий доступ и для группы. Для создания сертификата используется скрипт
    ssl-certificates.sh, который доступен в /usr/share/doc/zarafa.

    Код:
    $ cd /etc/zarafa/ssl
    $ sudo /usr/share/doc/zarafa/ssl-certificates.sh server
    В процессе будет задано ряд стандартных при создании SSL ключа вопросов и запрошен пароль. Теперь открываем server.cfg и активируем SSL:

    Код:
    server_ssl_enabled = yes
    server_ssl_port = 237
    Перезапускаем сервер, чтобы установки вступили в силу.

    [+] Изображение
    [​IMG]
    [свернуть]


    ***

    Это минимум, который необходим для работы, теперь можно тестировать подключения и знакомиться с интерфейсом. Конечно, в пределах статьи нельзя рассказать обо всех ньюансах, но принцип настройки должен быть ясен. Вообще Zarafa оставил хорошие впечатления, это интересный продукт, которому пока не хватает локализации из коробки. Будем надеяться, что эта проблема будет в скором времени решена.


    Код:
    [B][COLOR="green"]
    [COLOR="Navy"]16.10.2011[/COLOR]
    (С) http://www.tux.in.ua/articles/2749
    [/COLOR][/B]
     

Поделиться этой страницей