Установка Kolab на CentOS 7
Введение
Kolab — свободный open source сервер групповой работы (groupware). Он предоставляет общую почту, календарь, адресные книги, задачи и файловое хранилище. Kolab совместим с несколькими клиентскими окружениями: на Windows можно использовать Outlook, на Linux — KDE Kontact, а на любых системах с браузером — веб-интерфейс. На сервере Kolab использует протокол IMAP для почты и LDAP для хранения пользователей, конфигурации и контактов.
Данная инструкция шаг за шагом показывает установку Kolab на сервере CentOS 7 (64-разрядная система). Предполагается, что у вас есть права root.
Кому полезно это руководство
- Системным администраторам, которые разворачивают почтово-календарный сервис для команды.
- Инженерам DevOps, которые интегрируют Kolab в существующую инфраструктуру.
- Тем, кто хочет локально протестировать Kolab перед продакшен-развёртыванием.
Важно: перед установкой сделайте резервные копии существующих данных и конфигураций, особенно если вы планируете запускать на рабочем сервере.
Основные шаги (кратко)
- Отключить SELinux (временное требование совместимости).
- Включить и настроить firewalld — открыть порты/сервисы.
- Настроить FQDN (полностью квалифицированное доменное имя).
- Подключить EPEL и репозиторий Kolab.
- Установить пакеты kolab и выполнить setup-kolab для базовой конфигурации.
Предварительные требования
- Сервер CentOS 7 — 64-разрядная версия.
- Доступ root (или sudo с привилегиями root).
- Доступ к интернету для загрузки репозиториев и ключей GPG.
- Работающий DNS с обратной записью (rDNS) для корректной настройки домена.
Шаг 1 — Отключение SELinux
По документации Kolab некоторые модули пока не совместимы с SELinux. Поэтому временно отключим SELinux. Рекомендуется следить за будущими версиями Kolab, где совместимость может быть улучшена.
Откройте файл конфигурации SELinux и измените режим на disabled:
vim /etc/selinux/configИзмените строку:
SELINUX=disabledСохраните файл и выйдите. Для применения может потребоваться перезагрузка.
Важно: отключение SELinux снижает уровень безопасности. После установки по возможности рассмотрите альтернативы: профиль для SELinux, контейнеризацию или детальную проверку совместимости модулей.
Шаг 2 — Настройка firewalld
В CentOS 7 по умолчанию используется firewalld. Убедитесь, что он запущен и включён при загрузке:
systemctl enable firewalld
systemctl start firewalldСоздайте сценарий для открытия необходимых сервисов/портов Kolab. Например, создадим файл firewall_cmd.sh в домашней директории:
cd ~/
vim firewall_cmd.shВставьте скрипт ниже (сохраняем без изменений):
#!/bin/sh
for s in ssh http https pop3s imaps smtp ldap ldaps
do
firewall-cmd --permanent --add-service=$s
done
for p in 110/tcp 143/tcp 587/tcp
do
firewall-cmd --permanent --add-port=$p
done
firewall-cmd --reloadСделайте скрипт исполняемым и запустите его:
chmod +x firewall_cmd.sh
./firewall_cmd.shПроверить правила можно командой:
firewall-cmd --list-allПримечание: при наличии внешнего балансировщика или специфичных сетевых ограничений откройте только необходимые порты и используйте зоны firewalld.
Шаг 3 — Настройка домена (FQDN)
FQDN — полностью квалифицированное доменное имя: hostname + домен. В примере используется hostname “madhouse” и домен “kolab.me”, что даёт madhouse.kolab.me. Замените на своё реальное доменное имя.
Проверьте текущий hostname:
hostnameОтредактируйте /etc/hosts и добавьте строку с IP, FQDN и коротким именем:
vim /etc/hostsДобавьте или отредактируйте строку:
IPADDRESS madhouse.kolab.me madhouseЗатем отредактируйте /etc/sysconfig/network и укажите короткое имя хоста:
vim /etc/sysconfig/networkВставьте:
madhouseПроверьте hostname и FQDN:
hostnamehostname -fЕсли изменения не применились, перезагрузите систему.
Важно: корректная обратная DNS-запись (rDNS) и прямые записи (A/AAAA) в зоне домена повышают вероятность корректной работы почты и снижают риск попадания в спам.
Шаг 4 — Установка репозитория EPEL
Подключите репозиторий EPEL:
rpm -Uhv https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpmУстановите yum-plugin-priorities, чтобы управлять приоритетами репозиториев:
yum install -y yum-plugin-prioritiesШаг 5 — Установка и базовая настройка Kolab
Добавьте репозиторий Kolab в /etc/yum.repos.d/:
cd /etc/yum.repos.d/
wget http://obs.kolabsys.com/repositories/Kolab:/16/CentOS_7/Kolab:16.repoУбедитесь, что приоритет репозитория Kolab выше (меньше значение приоритета означает более высокий приоритет). В примере присваиваем приоритет 60:
for f in /etc/yum.repos.d/Kolab*.repo; do echo "priority = 60" >> $f; doneИмпортируйте GPG-ключ:
rpm --import https://ssl.kolabsys.com/community.ascУстановите пакет kolab:
yum -y install kolabПосле установки запустите настройщик:
setup-kolabsetup-kolab поочерёдно запросит пароли и значения для LDAP, Cyrus, MySQL и других сервисов. Пример диалога (вводите свои надёжные пароли):
- Administrator password — пароль администратора LDAP.
- Directory Manager password — пароль менеджера LDAP.
- User / Group — можно принять значения по умолчанию (nobody).
- Domain name — подтверждайте значение, соответствующее rDNS.
- Cyrus Administrator password — пароль для администрирования Cyrus IMAP.
- Kolab Service password — пароль сервисного аккаунта Kolab.
- MySQL configuration — выберите, используете ли существующий MySQL или инициализируете новый.
- MySQL kolab password и MySQL roundcube password — пароли для соответствующих пользователей баз данных.
- Timezone ID — укажите ваш часовой пояс (пример: Asia/Jakarta или Europe/Moscow).
После успешного завершения все сервисы Kolab будут запущены.
Колаб-админ: откройте в браузере
http:///kolab-webadmin/ Логин: cn=Directory Manager
Пароль: тот пароль, который вы задали для Directory Manager.

Альт-текст: Вход в административную панель Kolab с полями для имени пользователя и пароля.

Альт-текст: Интерфейс администрирования Kolab с меню слева и рабочей областью справа.
Проверка и тестирование
После установки выполните следующие проверки:
- Войти в Kolab WebAdmin под Directory Manager.
- Создать тестового пользователя и проверить, что он появляется в LDAP.
- Попробовать войти в веб-почту Roundcube под созданным пользователем.
- Отправить/получить тестовое письмо локально и извне (если сервер публичный).
- Проверить доступность IMAP/SMTP по выбранным портам через telnet или openssl s_client.
Примеры команд для тестирования портов:
openssl s_client -connect :993 # IMAPS
openssl s_client -connect :993 -crlf
telnet 25 # SMTP Критерии приёмки
- Kolab WebAdmin доступен и авторизация проходит.
- Созданный тестовый пользователь корректно хранится в LDAP.
- Roundcube позволяет отправлять и принимать почту.
- Все нужные сервисы слушают соответствующие порты и зоны firewalld открыты.
Безопасность и жёсткие рекомендации
Важно обеспечить безопасность сервера Kolab:
- Включите TLS для SMTP, IMAP и HTTP(S).
- Настройте автоматическое обновление пакетов или регулярные проверки обновлений.
- Оставьте SELinux включённым только после тщательной проверки совместимости.
- Ограничьте доступ к административной панели по IP (если возможно).
- Используйте сложные, уникальные пароли и, при возможности, храните их в менеджере паролей.
Резервное копирование
- Регулярно бэкапьте LDAP и базы данных MySQL.
- Делайте дампы конфигурационных файлов /etc и /etc/kolab.
Когда установка может не сработать (типичные проблемы)
- Неправильный FQDN или отсутствие rDNS приводят к проблемам с доставкой почты.
- Конфликты портов или неправильно настроенные брандмауэры блокируют сервисы.
- Неправильные пароли для MySQL/LDAP приводят к ошибкам при запуске сервисов.
- SELinux, включённый в enforcing, может препятствовать работе некоторых модулей.
Советы по устранению неполадок
- Просмотрите журналы сервисов: /var/log/messages, /var/log/maillog и логи из /var/log/kolab.
- Используйте systemctl status
и journalctl -xe для диагностики. - Временно включайте повышенную детализацию логирования для проблемных модулей.
Альтернативные подходы
- Установка Kolab в контейнеры (Docker/Podman) для изоляции сервисов.
- Развёртывание на Debian/Ubuntu вместо CentOS при предпочтении apt-менеджера.
- Использование преднастроенных образов виртуальных машин для быстрого теста.
Мини‑методология установки (быстрая шпаргалка)
- Подготовить хост: обновить ОС, задать FQDN и настроить DNS.
- Включить firewalld, открыть нужные сервисы.
- Установить EPEL и подключить репозиторий Kolab.
- Установить kolab и запустить setup-kolab.
- Проверить доступность веб-интерфейса и функциональность почты.
Роль‑ориентированные чек‑листы
Администратор сети
- Убедиться в корректности DNS и rDNS.
- Открыть только нужные порты в firewall.
- Настроить бэкапы и мониторинг.
Системный администратор Kolab
- Произвести установку пакетов и запустить setup-kolab.
- Настроить пароли и учётные записи сервисов.
- Проверить логи и работоспособность сервисов.
Пользователь
- Проверить доступ к Roundcube или любому клиенту IMAP/CalDAV.
- Убедиться, что синхронизируются контакты и календари.
Тестовые случаи и приемка
- TC-01: Вход в WebAdmin под Directory Manager — ожидаемый результат: успешная авторизация.
- TC-02: Создание пользователя и доступ к Roundcube — ожидаемый результат: отправка и приём писем.
- TC-03: Подключение по IMAP через внешнего клиента — ожидаемый результат: синхронизация почты.
Совместимость и миграция
Kolab можно установить и на других дистрибутивах (Debian/Ubuntu). При миграции:
- Экспортируйте LDAP и импортирайте в целевую систему.
- Скопируйте и адаптируйте конфигурационные файлы.
- Проверьте версии Kolab и зависимостей перед переносом.
Краткое резюме
Kolab — полноценный open source groupware, который можно развернуть на CentOS 7 при соблюдении базовой сетевой и системной подготовки. Важно правильно настроить FQDN, открыть необходимые порты и аккуратно пройти через setup-kolab, задав устойчивые пароли. После установки проверьте доступность сервисов и настройте резервирование и безопасность.
Ключевые шаги: подготовка хоста, настройка брандмауэра, подключение репозиториев и запуск setup-kolab.
Дополнительные материалы
- Проверяйте официальную документацию Kolab для обновлённых рекомендаций и совместимости с SELinux.
- Используйте системные логи и утилиты systemctl, journalctl для диагностики.
Похожие материалы
Изменение имени учётной записи в Windows
Настройка iptables в Linux — базовый файл правил
Исправить "This version of Netflix is not compatible"
Как настроить беспроводные наушники USB
Приватный Docker Registry: запуск и настройка