Донецкий техникум промышленной автоматики

Zarafa - вільна альтернатива заміна Microsoft Exchange

  1. установка Zarafa
  2. Конфігураційний файл Zarafa
  3. Створення облікових записів
  4. Налаштування SSL
  5. ***

Сервер спільної роботи Zarafa випускається під ліцензією AGPL позиціонується як повноцінна заміна Microsoft Exchange. Подивимося, що його виділяє серед інших альтернатив.

Не секрет, що при необхідності розгорнути систему обміну повідомленнями та спільної роботи в першу чергу приходить в голову шірокоразрекламірованая зв'язка 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.

Налаштування виробляються за допомогою утиліти командного рядка zarafa-admin, яка дозволяє управляти настройками облікових записів користувачів і груп
Налаштування виробляються за допомогою утиліти командного рядка "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 $ Tar xzvf zarafa-6 Робота інсталяційного скрипта 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, але зареєструватися поки не вийде.
Тепер можна подивитися веб-інтерфейс WebAccess, зайшовши на сторінку http: // IP-сервера / webaccess, але зареєструватися поки не вийде

Конфігураційний файл 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 -p -e -f -a

Вилучити:

/ Usr / bin / zarafa-admin -d

Всі параметри зрозумілі, крім останнього. Установка значення в 1 дає користувачеві права адміністратора. Якщо користувачів в організації не багато, можна задіяти локальну обліковий запис Unix:

user_plugin = unix user_plugin_config = /etc/zarafa/unix.cfg

Після перезапуску демона, користувачі можуть підключатися до своїх папок.
Після перезапуску демона, користувачі можуть підключатися до своїх папок

Налаштування 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

Перезапускаємо сервер, щоб установки вступили в силу.
Перезапускаємо сервер, щоб установки вступили в силу

***

Це мінімум, який необхідний для роботи, тепер можна тестувати підключення і знайомитися з інтерфейсом. Звичайно, в межах статті не можна розповісти про всі аспектах, але принцип настройки повинен бути ясний. Взагалі Zarafa залишив хороші враження, це цікавий продукт, якому поки не вистачає локалізації з коробки. Будемо сподіватися, що ця проблема буде незабаром вирішена.