В обновлении Carbonio 22.11 появилась возможность установки на дистрибутив RHEL8. Данный дистрибутив Linux очень популярен среди системных администраторов. Он отличается высокой стабильностью и долгим жизненным циклом. В данной статье мы расскажем о том, как установить коммерческую версию Carbonio на Red Hat Enterprise Linux 8 в режиме односерверной установки.
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/32e/d1e/740/32ed1e74039bac197be84b50136cffb1.png)
После завершения развертывания RHEL на сервере, потребуется провести первоначальную настройку. В частности, нужно перевести SELinux в режим disabled или permissive. Для этого отредактируйте файл nano /etc/selinux/config и измените параметр SELINUX= на требуемый.
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/55a/dfb/a4c/55adfba4cb849eac5caec061f3d5fe18.png)
Сохраните изменения. Сразу после редактирования файла статус SELinux не изменится. Потребуется перезагрузка сервера sudo reboot.
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/f13/27b/908/f1327b90852d9ce86dbf3dc7af511b4a.png)
После перезагрузки SELinux будет отключен:
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/c9f/857/4d3/c9f8574d3c8a0864d367a3cb5ebbb17d.png)
Следующим шагом является отключение встроенного файрволла:
systemctl stop firewalld.service
systemctl disable firewalld.service
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/5ee/60b/510/5ee60b51055e647ec44b71bd3423dd8e.png)
Также потребуется добавить несколько репозиториев. Делается это при помощи следующих команд:
sudo su
subscription-manager repos --enable=rhel-8-for-x86_64-appstream-rpms
subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms
dnf -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
Отметим, что для их добавления вам потребуется активная подписка на RHEL. Подойдет бесплатная подписка, которая доступна любым пользователям с 2021 года.
Исходная версия PostgreSQL в RHEL8 слишком старая для корректной работы Carbonio. В связи с этим необходимо отключить встроенную инсталляцию PostgreSQL. Делается это при помощи команды:
dnf -qy module disable postgresql
Установите необходимые пакеты с клиентом и сервером PostgreSQL:
dnf -y install postgresql12 postgresql12-server
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/3fb/817/cc5/3fb817cc5c1a9722959cca1144cba548.png)
Проведите первоначальную настройку PostgreSQL и запустите соответствующую службу при помощи команд:
/usr/pgsql-12/bin/postgresql-12-setup initdb
systemctl enable --now postgresql-12
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/440/e9c/11b/440e9c11ba2d815cac3ec5fbe5aa1390.png)
После этого откройте файл /var/lib/pgsql/12/data/pg_hba.conf и приведите строчку:
host all all 127.0.0.1/32 ident
к виду
host all all 127.0.0.1/32 md5
Не забудьте сохранить внесенные изменения.
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/649/5a9/e01/6495a9e01a04dbca8662abb25992057e.png)
После выполнения всех действий перезапустите Postgresql:
systemctl reload postgresql-12
Также настройте доменное имя сервера. Для корректной работы Carbonio требуется, чтобы у сервера был FQDN и соответствующая запись в /etc/hosts. Настроить их можно при помощи команд:
sudo su
hostnamectl set-hostname carbonio.carbonio-test.ru
echo "172.27.20.132 carbonio.carbonio-test.ru carbonio" >> /etc/hosts
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/040/68f/3b3/04068f3b36bcd942ba9602a92b5f737e.png)
После выполнения этих действий необходимо добавить в систему репозитории Carbonio. Для этого нужно скачать скрипт inst_repo_rhel8.sh по ссылке, которую вам отправит региональный представитель после вашей заявки на тестирование или приобретение Carbonio. Делается это при помощи команд:
sudo su
wget https://*******/inst_repo_rhel8.sh
chmod +x inst_repo_rhel8.sh
./inst_repo_rhel8.sh
Установите все обновления и обновите репозитории:
dnf clean all && dnf upgrade
После этого можно приступить к установке Carbonio. Выполняется она в два этапа. В рамках первого этапа устанавливается пакет Carbonio Mesh:
dnf install service-discover-server
После него устанавливаются все остальные пакеты:
dnf install carbonio-directory-server carbonio-proxy carbonio-webui carbonio-user-management carbonio-files-ui carbonio-files carbonio-files-db carbonio-mta carbonio-logger carbonio-appserver carbonio-mailbox-db carbonio-advanced carbonio-zal carbonio-chats-ui carbonio-docs-editor carbonio-docs-connector carbonio-docs-connector-db carbonio-admin-ui carbonio-admin-console-ui carbonio-admin-login-ui carbonio-preview
По окончании установки можно приступить к непосредственной настройке Carbonio. Для этого выполните команды:
sudo su
carbonio-bootstrap
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/c8d/10e/da0/c8d10eda0b39d74643824f856bb43e9c.png)
В ходе установки Carbonio проверит наличие A- и MX-записей для сервера в DNS и в случае если не найдет их, предложит изменить имя хоста на другое, которое имеет нужные записи в DNS. В случае, если вы устанавливаете Carbonio для тестирования или намерены настроить DNS уже после его настройки, вы вправе пропустить этот шаг, нажав N.
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/057/525/da8/057525da8631195c21d9f52668e4a2fb.png)
В ходе первоначальной настройки появится меню, в котором можно настроить различные модули Carbonio. Рекомендуется перейти в настройки Прокси-сервера и изменить режим его работы с https на redirect.
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/90a/acd/515/90aacd515eab7e7a7eca0464a559e3d6.png)
Для этого выберите раздел 6, а затем 12, после чего введите redirect:
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/309/36b/7c3/30936b7c3b57476d9bbd3638eb70d837.png)
Это нужно, чтобы пользователь, который зайдет на ваш сервер по http автоматически перенаправлялся на https-соединение. При настройках по умолчанию пользователь просто получит сообщение об ошибке.
После ввода настроек вернитесь в основное меню и нажмите Y, чтобы применить их. Настройка сервера пройдет автоматически.
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/846/7fe/440/8467fe4401e8fcaf7d5b05fe778fafd8.png)
После окончания установки следует настроить Carbonio Mesh - систему, которая объединяет почтовый сервер Carbonio с другими сервисами, такими Chats, Docs и Files.
Для его настройки от имени root-пользователя введите команду service-discover setup-wizard и укажите IP-адрес своего сервера, а также задайте пароль своего кластера.
После окончания настройки service-discover, введите команду pending-setups и введите заданный только что пароль.
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/d08/bf3/758/d08bf3758ffde779a8dd322f9bbd75ed.png)
Нажмите A чтобы выполнить все настройки. Весь процесс проходит автоматически.
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/338/8de/6c0/3388de6c0cd2f279162540f7b67e5a37.png)
Также выполните команду chmod a+r /etc/zextras/carbonio-mailbox/token, чтобы избежать проблем с правами доступа.
После этого необходимо создать базы данных в PostgreSQL. Для этого:
Cоздайте пользователя carbonio_adm с правами суперпользователя и собственным паролем вместо Pa$$w0rD. Пароль сохраните:
su - postgres -c "psql --command=\"CREATE ROLE carbonio_adm WITH LOGIN SUPERUSER encrypted password 'Pa$$w0rD';\""
Создайте базу данных carbonio_adm, владельцем которой является ранее созданный пользователь carbonio_adm.
su - postgres -c "psql --command=\"CREATE DATABASE carbonio_adm owner carbonio_adm;\""
Создайте базы данных carbonio-mailbox, заменив Pa$$w0rD на заданный ранее собственный пароль:
PGPASSWORD=Pa$$w0rD carbonio-mailbox-db-bootstrap carbonio_adm 127.0.0.1
Создайте базу данных carbonio-files, заменив Pa$$w0rD на заданный ранее собственный пароль:
PGPASSWORD=Pa$$w0rD carbonio-files-db-bootstrap carbonio_adm 127.0.0.1
Создайте базу данных carbonio-docs, заменив Pa$$w0rD на заданный ранее собственный пароль:
PGPASSWORD=Pa$$w0rD carbonio-docs-connector-db-bootstrap carbonio_adm 127.0.0.1
Войдите под учетной записью zextras и перезапустите Carbonio:
su - zextras
zmcontrol restart
Для установки видеосервера Carbonio Chats, который добавляет в него функциональность видеозвонков, сперва необходимо установить дополнительный репозитории:
dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Также потребуется установленный пакет libSDL2.
После того как это будет сделано, запустите установку необходимых пакетов:
dnf install -y carbonio-videoserver carbonio-videoserver-recorder
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/feb/d67/37e/febd6737e2baa4eafa45a7a6b061e9d5.png)
В случае, если всё было выполнено правильно, пакеты успешно установятся.
После окончания установки, запустите видеосервер и получите необходимые данные для его настройки:
sudo su
systemctl enable videoserver.service
systemctl start videoserver.service
grep -i -e nat_1_1 -e api_secret /etc/janus/janus.jcfg
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/2f1/3c6/7ae/2f13c67ae1a32622069352be3a9af6fd.png)
От имени пользователя zextras выполните команды:
carbonio chats video-server add 172.27.20.132 port 8188 servlet_port 8090 secret Co6ZQOlG6eR00Ax8B/ggyQOgTXeU+v2m
carbonio config set global teamVideoServerRecordingEnabled true
carbonio config set cos default teamChatEnabled true
После того как команды будут выполнены, запустите от имени root-пользователя команду pending-setups, чтобы завершить настройку видеосервера.
После того как выполнение команды завершится, активируйте лицензию, заменив TOKEN на токен, который предоставит вам региональный представитель компании Zextras
carbonio core activate-license TOKEN
Для того, чтобы войти в консоль администратора, необходимо задать пароль для созданной автоматически учетной записи глобального администратора [email protected]. Делается это при помощи команды carbonio prov sp [email protected] Pa$$w0rD, выполненной в консоли от имени пользователя zextras. Замените в этой команде Pa$$w0rD на собственный пароль.
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/639/80e/110/63980e1108293ab97d8d297a4e7919bc.png)
Вход в веб-клиент в нашем случае доступен по адресу https://carbonio.carbonio-test.ru, вход в обновленную консоль администратора Carbonio доступен по адресу https://carbonio.carbonio-test.ru:6017/login.
![](https://webcf.waybackmachine.org/web/20230613155248/https://habrastorage.org/getpro/habr/upload_files/647/add/89f/647add89fc491d408eee12039e40edc7.png)
По вопросам тестирования, приобретения, предоставления лицензии и консультаций обращаться на почту [email protected] к эксклюзивному партнеру Zextras.