Доброго времени суток
Сегодня хочу поделиться как можно реализовать собственный корпоративный сервис календарей и контактов. Естественно все будет привязано к почтовому клиенту, к чему привыкло большинство корпоративных пользователей и все планируемое программное обеспечение участвующее в проекте базируется на лицензии GNU GPL и производных.
Реализация подобных сервисов планируется с использованием протоколов CalDAV и CardDav являющимися сетевыми протоколами высокого уровня, работающих поверх HTTP для доступа к объектам и коллекциям. Что также позволяет использовать SSL шифрование для передачи информации клиентскому устройству (информация защищена от перехвата третьей стороной).
На сервере уже установлена ОС gentoo, веб сервер apache2, сервер баз данных mysql и сгенерированы сертификаты для ssl.
Для сервиса календарей и контактов используем:
www-apps/baikal — Lightweight CalDAV+CardDAV server
Вообще на текущий момент времени CalDAV и CardDav сильно распространены (клиенты есть практически для любой ОС: MacOS, *nix, Windows, IOS, Android и другие). Одно время я долго не мог найти решение для общих контактов использовал LDAP (не удобен по наполнению контактов, в Thunderbird не отображает список пока не будет задана строка поиска и тд), данная же реализация позволяет добавлять контакты любому участнику, которому подключена данная адресная книжка. Также для работы с общей адресной книгой есть плагин для roundcube — carddav_0.8.0, легко ищется, настраивается и позволяет полноценно использовать подключенную адресную книгу.
Установим:
emerge -va baikal
Убедимся что установлен USE флаг mysql (сервис будет использовать mysql).
Дальше создаем базу данных и пользователя для доступа к базе.
Заходим через веб на наш сервер https ://srv/baikal указываем реквизиты для доступа к базе данных и прочие настройки.
Далее в админке можно будет создавать пользователей и сопоставлять им календари и адресные книги (доступ к которым осуществляется по имени пользователя и соответствующему паролю).
Почтовым клиентом будет Thunderbird + плагины: Lightning (плагин календарей), SOGo Connector (плагин для подключения общих адресных книг).
В итоге получается довольно простое, надежное и функциональное решение.
Автор: dm85