Как установить Pydio Cells на AlmaLinux 9

Pydio Cells – это платформа для совместного использования документов и сотрудничества с открытым исходным кодом для вашей организации. Она позволяет обмениваться документами и файлами в рамках всей организации и дает вам полный контроль над средой совместного использования документов.

Pydio Cells отличается высокой производительностью, может обрабатывать файлы огромных размеров и обеспечивает расширенную автоматизацию рабочего процесса.

В этом руководстве мы покажем вам, как установить Pydio Cells на сервер Alma Linux 9. Вы будете устанавливать Pydio Cells с сервером баз данных MariaDB и веб-сервером Httpd.

Установка зависимостей

Перед установкой Pydio Cells вам необходимо установить зависимости на ваш сервер Alma Linux. К ним относятся репозиторий EPEL, сервер базы данных MariaDB, веб-сервер Httpd и некоторые системные инструменты, такие как wget и nano.

Сначала запустите команду ‘dnf‘ команда ниже, чтобы добавить репозиторий EPEL, а также установить сервер MariDB и веб-сервер Httpd. Вход ‘Y‘, чтобы подтвердить установку.

sudo dnf install epel-release mariadb-server httpd wget nano

установить deps

После завершения установки запустите команду ‘systemctl‘ команда ниже, чтобы запустить, включить и проверить ‘httpd‘ служба. Вы увидите символ ‘httpd‘ служба запущена и включена.

sudo systemctl enable --now httpd
sudo systemctl status httpd

проверить httpd

Теперь выполните следующую команду, чтобы запустить и включить ‘mariadb‘ служба. Затем проверьте его, чтобы убедиться, что служба запущена.

sudo systemctl enable --now mariadb
sudo systemctl status mariadb

В следующем выводе видно, что сервер MariaDB запущен и включен.

проверить mariadb

Наконец, запустите команду ‘firewall-cmd‘ команда ниже, чтобы открыть оба ‘http‘ и ‘https‘ порты в вашей системе. Затем перезагрузите правила firewalld, чтобы применить изменения.

sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload

Настройка сервера MariaDB

После установки зависимостей вам нужно защитить установку сервера MariaDB и создать новую базу данных и пользователя для установки сервера Pydio Cells. Вы будете защищать MariaDB с помощью ‘mariadb-secure-installation‘, а затем создайте новую базу данных и пользователя с помощью команды ‘mariadb‘ клиент.

Чтобы обезопасить установку сервера MariaDB, выполните команду ‘mariadb-secure-installation‘ команда ниже.

sudo mariadb-secure-installation

В процессе вам будет предложено ввести следующие конфигурации:

  • Переключить локальную аутентификацию на unix_socket? Введите n.
  • Установите новый пароль корня MariaDB. Введите y для подтверждения, затем введите новый пароль для развертывания сервера MariaDB.
  • Удалить анонимного пользователя? Введите y для подтверждения.
  • Удалить тест базы данных по умолчанию из развертывания? Введите y для подтверждения.
  • Запретить вход в систему MariaDB root при удаленных подключениях? Введите y для подтверждения.
  • Перезагрузите привилегии таблицы и примените изменения. Введите y и нажмите ENTER.

Теперь, когда сервер MariaDB защищен, вы создадите новую базу данных и пользователя для установки Pydio Cells.

Войдите на сервер MariaDB под именем ‘mariadb‘ команда ниже. Введите пароль корня MariaDB, когда появится запрос.

sudo mariadb -u root -p

Выполните следующие запросы для создания новой базы данных ‘ячейки‘, и новый пользователь ‘pydio‘, с паролем ‘p4ssw0rd’. Вы можете настроить детали базы данных по своему усмотрению.

CREATE DATABASE cells;
CREATE USER 'pydio'@'localhost' IDENTIFIED BY 'p4ssw0rd';
GRANT ALL PRIVILEGES ON cells.* to 'pydio'@'localhost';
FLUSH PRIVILEGES;

создать базу данных

Теперь проверьте привилегии для пользователя ‘pydio‘, чтобы обеспечить разрешение и привилегии для базы данных ‘ячейки‘.

SHOW GRANTS FOR 'pydio'@'localhost';

Ниже показано, что база данных ‘ячейки‘ доступны через ‘pydio‘ пользователь.

проверка базы данных

Введите ‘quit’, чтобы выйти из сервера MariaDB.

Загрузка ячеек Pydio

Когда база данных MariaDB настроена, вы готовы загрузить Pydio Cells. В этом разделе вы настроите пользователя ‘pydio’, загрузите Pydio Cells, настроите каталог установки и переменные окружения, а также разрешите Pydio Cells работать на привилегированных портах.

Создайте нового пользователя и группу ‘pydio‘ с помощью следующей команды.

sudo useradd -m -s /bin/bash pydio

Создайте новые каталоги ‘/opt/pydio/bin‘ и ‘/var/cells‘ с помощью приведенной ниже команды. А затем измените права собственности на обе директории на пользователя ‘pydio‘.

sudo mkdir -p /opt/pydio/bin /var/cells
sudo chown -R pydio:pydio /opt/pydio/bin /var/cells

Теперь создайте новый env-файл ‘/etc/profile.d/cells-env.sh‘ с помощью ‘nano‘ редактор.

sudo nano /etc/profile.d/cells-env.sh

Введите следующий скрипт, чтобы установить переменные окружения для Pydio Cells. Обязательно измените ‘CELLS_EXTRERNAL‘ адрес, чтобы он соответствовал доменному имени вашей установки Pydio.

export CELLS_WORKING_DIR=/var/cells
export CELLS_BIND=127.0.0.1:8080
export CELLS_EXTERNAL=https://cells.local

После этого сохраните и выйдите из файла.

Теперь выполните приведенную ниже команду, чтобы создать файл env ‘/etc/profile.d/cells-env.sh‘ исполняемый файл.

sudo chmod +x /etc/profile.d/cells-env.sh

Затем выполните приведенную ниже команду, чтобы загрузить бинарный файл Pydio Cells для Linux на ‘/opt/pydio/bin/cells‘.

export distribId=cells
wget -O /opt/pydio/bin/cells https://download.pydio.com/latest/${distribId}/release/{latest}/linux-amd64/${distribId}

После загрузки выполните следующую команду, чтобы создать ‘ячейки‘ исполняемый двоичный файл и разрешите ему связываться с привилегированными портами.

sudo chmod a+x /opt/pydio/bin/cells
sudo setcap 'cap_net_bind_service=+ep' /opt/pydio/bin/cells
sudo ln -s /opt/pydio/bin/cells /usr/local/bin/cells

Теперь войдите в систему под именем пользователя ‘pydio‘ со следующим:

su - pydio

Проверьте переменные окружения для Pydio Cells с помощью следующего – Убедитесь, что вывод совпадает с выводом в env-файле ‘/etc/profile.d/cells-env.sh‘.

echo $CELLS_WORKING_DIR
echo $CELLS_BIND
echo $CELLS_EXTERNAL

проверить среду

Наконец, проверьте ‘cells’ версия с командой ниже.

cells version

В следующем выводе видно, что версия Pydio Cells.

проверить версию ячеек

Установка Pydio Cells через командную строку

Сейчас вы начнете устанавливать Pydio Cells из командной строки. С помощью команды ‘cells‘, вам предстоит установить Pydio Cells с базой данных MariaDB, задать пользователя и пароль администратора, а также указать место хранения пользовательских данных.

Для начала выполните приведенную ниже команду для настройки установки Pydio Cells из терминала.

cells configure --cli

Теперь вам будут предложены следующие конфигурации:

  • Подключение к базе данных: выберите через TCP, затем введите данные о хосте, порте, пользователе и пароле вашей базы данных MariaDB.
  • Конфигурация MongoDB: Введите n для нет.
  • Конфигурация административного пользователя: введите пользователя и пароль администратора для Pydio Cells.
  • Место хранения по умолчанию: нажмите ENTER, чтобы использовать значение по умолчанию и продолжить.

После завершения процесса вы увидите следующее сообщение:

установка ячеек pydio

Настройка служебного файла systemd для Pydio Cells

Из предыдущего шага вы можете запустить Pydio Cells с помощью команды ‘cells start’. Чтобы сделать это проще, вместо этого вы будете использовать systemd ‘systemctl’ для управления службой Pydio Cells. Итак, сейчас вы создадите новый служебный файл systemd.

Создайте новый файл ‘/etc/systemd/system/cells.service’ с помощью редактора ‘nano’.

sudo nano /etc/systemd/system/cells.service

Вставьте приведенную ниже конфигурацию для запуска Pydio Cells в качестве службы systemd. Обязательно замените ‘CELLS_EXTERNAL’ на ваше доменное имя.

[Unit]
Description=Pydio Cells
Documentation=https://pydio.com
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/opt/pydio/bin/cells

[Service]
User=pydio
Group=pydio
PermissionsStartOnly=true
AmbientCapabilities=CAP_NET_BIND_SERVICE
ExecStart=/opt/pydio/bin/cells start
Restart=on-failure
StandardOutput=journal
StandardError=inherit
LimitNOFILE=65536
TimeoutStopSec=5
KillSignal=INT
SendSIGKILL=yes
SuccessExitStatus=0
WorkingDirectory=/home/pydio

# Add environment variables
Environment=CELLS_WORKING_DIR=/var/cells
Environment=CELLS_BIND=127.0.0.1:8080
Environment=CELLS_EXTERNAL=https://cells.local

[Install]
WantedBy=multi-user.target

Сохраните файл и выйдите из редактора.

Теперь выполните приведенную ниже команду, чтобы перезагрузить менеджер systemd.

sudo systemctl daemon-reload

Наконец, выполните команду ‘systemctl‘ команда ниже, чтобы запустить, включить и проверить ‘ячейки‘ сервис.

sudo systemctl enable --now cells
sudo systemctl status cells

В этом выводе вы можете увидеть ‘ячейки‘ служба работает в фоновом режиме как служба systemd.

служба systemd

Настройка Httpd в качестве обратного прокси-сервера

На данный момент Pydio Cells запущен на вашем сервере Alma Linux на порту ‘8080’. Чтобы сделать его доступным с клиента, вы создадите файл виртуального хоста Httpd в качестве обратного прокси для сервера Pydio Cells. Вы также сгенерируете SSL/TLS сертификаты от Letsencrypt для защиты передачи данных между клиентом и сервером Pydio Cells.

Сначала запустите команду ‘dnf‘ команда ниже для установки ‘certbot’ в вашей системе.

sudo dnf install certbot -y

Теперь создайте новую фиктивную корневую веб-директорию и измените право собственности на ‘apache‘ пользователь.

sudo mkdir -p /var/www/html/cells/public_html
sudo chown -R apache:apache /var/www/html/cells/public_html

Запустите программу ‘certbot‘ команда ниже, чтобы сгенерировать SSL/TLS сертификаты для Pydio Cells. Не забудьте изменить адрес электронной почты и доменное имя на свои данные.

sudo certbot certonly --agree-tos --email [email protected] --no-eff-email --webroot -w /var/www/html/cells/public_html -d cells.local

Далее создайте новую конфигурацию виртуального хоста Httpd ‘/etc/httpd/conf.d/pydio.conf‘ с ‘nano‘ редактор.

sudo nano /etc/httpd/conf.d/pydio.conf

Вставьте приведенную ниже конфигурацию и не забудьте изменить ‘ServerName‘ с именем вашего домена.

ServerName cells.local

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

RewriteCond %{SERVER_NAME} =cells.local
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

ServerName cells.local
AllowEncodedSlashes On
RewriteEngine On

# be aware of this
# Allow reverse proxy via self-signed certificates
SSLProxyEngine On
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off

## The order of the directives matters.
# If Cells is not running with https, consider using ws instead of wss
ProxyPassMatch “/ws/(.*)” wss://localhost:8080/ws/$1 nocanon

## This rewrite condition is required if using Cells-Sync
# RewriteCond %{HTTP:Content-Type} =application/grpc [NC]
# RewriteRule /(.*) h2://localhost:8080/$1 [P,L]

ProxyPass “/” “https://127.0.0.1:8080/”
ProxyPassReverse “/” “https://127.0.0.1:8080/”

ErrorLog /var/log/httpd/error.log
CustomLog /var/log/httpd/access.log combined

SSLCertificateFile /etc/letsencrypt/live/cells.local/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/cells.local/privkey.pem
#Include /etc/letsencrypt/options-ssl-apache.conf

Сохраните файл и выйдите из редактора после завершения работы.

Теперь запустите программу ‘apachectl‘ команда ниже, чтобы проверить синтаксис Apache. Если вы правильно настроили Apache, вы увидите вывод ‘Синтаксис в порядке‘.

sudo apachectl configtest

Наконец, выполните приведенную ниже команду ‘systemctl’, чтобы перезапустить ‘httpd‘ веб-сервера и примените изменения. На этом установка Pydio Cells должна быть завершена и доступна.

sudo systemctl restart httpd

настройка httpd

Доступ к ячейкам Pydio

Откройте веб-браузер и зайдите на доменное имя вашей установки Pydio Cells, например https://cells.local. Если установка прошла успешно, вы увидите страницу входа в Pydio Cells.

Введите пользователя и пароль администратора для входа в систему.

вход в ячейки pydio

Если у вас есть правильные учетные данные, вы увидите панель пользователя Pydio Cells, как показано ниже.

приборная панель pydio

Теперь вы можете попробовать загрузить файлы с вашего локального компьютера на сервер Pydio Cells. На следующем скриншоте я загрузил файлы на Pydio Cells и добился успеха.

загрузка файлов в Pydio

Заключение

Поздравляем! Вы завершили установку Pydio Cells на сервер Alma Linux 9. Вы запустили Pydio Cells с сервером базы данных MariaDB и веб-сервером Httpd. Кроме того, вы обеспечили безопасность установки Pydio Cells с помощью HTTPS через Certbot и Letsencrypt.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *