
Привет, Хабр! Хочу рассказать тебе о довольно интересной и функциональной замене MS Exchange, полностью свободной и к тому же с красивой web-мордой. Разговор пойдет про Kolab — свободный почтовый сервер с поддержкой совместной работы, календарей, списков дел, WebDAV, ActiveSync синхронизацией и прочими плюшками, который можно использовать как для работы, так и для дома.
Осторожно, в посте много картинок...
Kolab Groupware (Часть 1 — Обзор)
Kolab Groupware (Часть 2 — Установка)
Что это такое?
Kolab — это свободный почтовый сервер с красивым web-клиентом, внутри которого есть все необходимое для пользователя: почта с поддержкой тегов, адресные книги, заметки, календари, списки дел, файловая помойка и многое другое…
Пользователи могут синхронизировать свою почту, календарь и контакты на мобильное устройство по ActiveSync протоколу.
Так же имеется возможность шарить отдельные папки своей почты, календарей и контактов другим пользователям, так и полностью делегировать доступ к своему почтовому ящику.
Для администрирования этого всего имеется интерфейс, в котором можно: управлять пользователями, группами рассылки и общими папками. Можно создавать так называемые ресурсы, это такой специальный календарь для переговорок или курьеров, у которого можно посмотреть доступность, и забронировать на свободное время.
Имеется так же встроенный LDAP-редактор, с помощью которого можно разрешить или запретить редактировать какие-нибудь поля, например поле primary email — должно генерироваться само, или его можно указать вручную
Что внутри?
Kolab представляет из себя комбайн из таких общеизвестных сервисов как:
- 389 Directory Server — хранение информации о доменах, пользователях и группах, так же здесь хранятся acl и некоторые настройки (при желании можно использовать Active Directory или OpenLDAP)
- Cyrus-imap — IMAP-сервер, в его базе хранятся сами письма, а так же данные календарей, заметок и прочих пользовательских данных
- MySQL — хранит данные необходимые для работы основных служб Kolab и Roundcube
- Postfix — MTA он же SMTP-сервер
- Roundcube — перспективный и весьма популярный web-клиент электронной почты
- Apache — HTTP-сервер по умолчанию (при желании можно заменить на nginx)
- Amavis с Spamassassin и ClamAV — антиспам и антивирусная защита
Так же нескольких собственных сервисов:
- kolab-saslauthd — обеспечивает авторизацию для postfix
- kolab-freebusy — демон занятости
- kolab-syncroton — реализует ActiveSync протокол для синхронизации с устройствами
- iRony — реализует WebDAV, CalDAV и CardDAV протоколы
- wallace — сканирует почту на наличие groupware контента
- Chwala — файловый клиент
- + стопка плагинов к roundcube
Как выглядит?
Ну, перейдем же теперь к обзору. Kolab по умолчанию имеет 2 темы оформления, первая — Larry, это классическая тема для Roundcube, вторая, появилась недавно — Chamelion. Появилась она буквально в последней версии Kolab 3.4 и ее сразу же сделали темой по умолчанию.
На мой взгляд она несколько перегружена, и обычными пользователями воспринимается тяжелее, куда как Larry.
Larry выглядит более стильной и красивой
Нет, Chameleon конечно тоже не плоха, но Larry, на мой взгляд, пока что лучше, так что скриншоты этой темы буду выкладывать под спойлерами.
Почта
Основной экран почты:

Chameleon

Так выглядит процедура написания письма:

Chameleon

Контакты

Chameleon

Календарь
А вот так выглядит календарь:

Chameleon

Здесь можно видеть занятость других людей, если они разрешили вам это делать.
К создаваемым событиям можно приглашать других людей, и они будут получать от вас уведомления на почту

Заметки

Chameleon

Списки дел

Chameleon

Дела так же можно назначать и другим пользователям, в таком случае они получат уведомление в котором должны будут подтвердить свое участие.
Файловое облако
На данный момент оно весьма пространственное, т.е. вы не сможете выдавать на папки и файлы внешние ссылки на скачивание, так же не рекомендуется загружать сюда большие файлы, однако сохранить файлы из почты «в облако» вы всегда сможете, как и получить доступ к ним по WebDAV.
Если вам нужно что-то большее,

Chameleon

Экран настроек

Chameleon

Настройки вполне стандартные для Roundcube, каждый может выбрать себе тему оформления, которая ему больше нравится. Настроить sieve-правила для входящих писем. Делегировать управление своего ящика кому либо из сотрудников, без участия в этом процессе системного администратора. Для каждого ящика от имени которого пользователь может писать письма, создается отдельный профиль, который можно настроить по своему, например: назначить имя отправителя или поменять подпись.
Папки

Chameleon

Как я уже говорил, все пользовательские данные, включая и списки дел и заметки и события календаря хранятся в IMAP. На первый взгляд это довольно странное решение, но зато мы имеем гибкий механизм управления разрешениями на imap-папки. Можно выдавать разрешения на чтение, запись, изменение отдельной папки вашей почты, так например и отдельного календаря определенным людям, например коллегам из вашего отдела. Можно, например если вы уходите в отпуск, полностью делегировать доступ к вашему аккаунту.
Как только пользователь получит права от вас, ему тоже нужно будет зайти в этот интерфейс и подписаться на расшаренные вами imap-папки.
Альтернативные клиенты и синхронизация
Все это конечно очень приятно, но есть так же и ложка дегтя:
В случае если вы подключите свой почтовый ящик сторонним почтовым клиентом, например Thunderbird, вы увидите все эти папки календарей, среди ваших обычных почтовых папок, но прочитать вы их не сможете, т.к. в нутри этих папок будут только служебные файлы тех же самых календарей. Что как бы намекает, использовать Roundcube в качестве основного почтового клиента, ну он и так неплохо с этой задачей справляется. Кроме того, имеется поддержка протокола ActiveSync для синхронизации этого всего на мобильное устройство, настройки ActiveSync удобно вынесены в Roundcube:

Chameleon

Так же, к каждому календарю или списку контактов, или файловой помойке можно получить DAV-ссылку и использовать ее уже на свое усмотрение в совместимых клиентах.
Есть кстати и официально поддерживаемые десктопный клиент на qt — Kontact, он не столь красивый, как Roundcube но тоже довольно функциональный:

Так же есть дополнение для Thunderbird, оно по мимо почты, добавляет возможность синкать отдельные календари и списки контактов.
Больше разных клиентов и дополнений к ним вы сможете найти здесь.
Админка
Чуть не забыл упомянуть о админке. Админка имеет несколько иной дизайн, но это не делает ее менее функциональной.
В админке можно управлять пользователями, группами, общими папками. Можно например создать группу, которая будет автоматически заполняться на основании информации полученной от другого LDAP-сервера, например AD.

Вот так выглядит процедура добавления пользователя:

Заключение
На этом пожалуй все.
Во второй статье читайте про установку сего чуда, начальной конфигурации и некоторых аспектах с которыми я столкнулся при работе с ним
Официальный сайт проекта: kolab.org