Alma/Rocky/CentOS/MSVSPhere
Инструкция по установке Пассворка на ОС:
- CentOS 8 Stream, Alma Linux 8, Rocky Linux 8, MSVSPhere 8.
- CentOS 9 Stream, Alma Linux 9, Rocky Linux 9, MSVSPhere 9.
В инструкции используются переключаемые блоки кода для разделения команд согла сно версиям операционной системы
1. Минимальные системные требования
Пассворк не требователен к системным ресурсам, а необходимое количество серверов зависит от числа активных пользователей, объема хранимых данных и требований к отказоустойчивости системы.
Ознакомьтесь с полными системными требованиями.
Если сервер имеет 2-4 ГБ оперативной памяти, мы рекомендуем включить SWAP файл.
2. Базовые действия перед установкой
Получить права root и обновить локальную базу данных пакетов:
- shell
sudo -i
dnf makecache
Установить веб-сервер Apache2 и утилиту передачи данных curl:
- shell
dnf install -y httpd unzip curl zip jq
Заменить расположение DocumentRoot
в конфигурации Apache:
- shell
sed -i 's|^DocumentRoot "/var/www/html"|DocumentRoot "/var/www"|' /etc/httpd/conf/httpd.conf
Запустить службу httpd.service:
- shell
systemctl start httpd.service
Включить автозапуск службы:
- shell
systemctl enable httpd.service
2.1 Установка и базовая нас тройка Firewalld
Установить службу динамического управления брандмауэром Firewalld:
- shell
dnf install firewalld -y
Запустить службу firewalld.service:
- shell
systemctl start firewalld.service
Включить автозапуск службы:
- shell
systemctl enable firewalld.service
Добавить HTTPS-протокол в список разрешенных сервисов конфигурации Firewalld:
- shell
firewall-cmd --permanent --add-service=https
Применить изменения в конфигурации Firewalld:
- shell
firewall-cmd --reload
2.2 Отключение SELinux и перезагрузка ОС
Отредактировать конфигурационный файл /etc/selinux/config
:
- shell
nano /etc/selinux/config
Изменить значение параметра SELINUX с enforcing
на disabled
:
- shell
SELINUX=disabled
Сохранить изменения (Ctrl+O) и выйдите (Ctrl+X). Перезагрузить систему, чтобы применить изменения в SELinux:
- shell
reboot
3. Установка PHP
Установить пакет EPEL (epel-release) и утилиты для управления пакетами yum (yum-utils):
- shell
dnf -y install epel-release yum-utils
Получить и установите последний EPEL репозиторий:
- OS 9
- OS 8
dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Получить и установить репозиторий, предоставляющий доступ к версиям PHP:
- OS 9
- OS 8
dnf install -y https://rpms.remirepo.net/enterprise/remi-release-9.rpm
dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm
Включить модуль PHP версии 8.3 из репозитория REMI:
- shell
dnf module enable php:remi-8.3
Установить PHP и дополнительные расширения:
- shell
dnf install -y php-cli php-fpm php-curl php-devel php-pear php-gd php-intl php-ldap php-bcmath php-mbstring php-mysqlnd php-opcache php-pgsql php-soap php-zip php-sqlite3 php-xml
Убедиться, что служба php-fpm запущена:
- shell
systemctl status php-fpm
Запустить и активировать автозапуск службы, если она остановлена:
- shell
systemctl start php-fpm
systemctl enable php-fpm
3.1 Установка драйвера PHP MongoDB
Установить драйвер PHP MongoDB:
- shell
pecl install mongodb
Создайть файл конфигурации для загрузки и включения PHP MongoDB:
- shell
echo "extension=mongodb.so" | tee /etc/php.d/20-mongodb.ini
4. Установка базы данных MongoDB
Eсли вы планируете использовать PostgreSQL, пропустите 4-й шаг установки.
Подробнее о поддержке PostgreSQL
Создать файл для добавления репозитория MongoDB к системе управления пакетами yum:
- shell
nano /etc/yum.repos.d/mongodb-org-6.0.repo
Поместить в файл следующее содержимое:
- OS 9
- OS 8
[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/9/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://pgp.mongodb.com/server-6.0.asc
[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/8/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://pgp.mongodb.com/server-6.0.asc
Установить MongoDB:
- shell
dnf install mongodb-org -y
Запустить службу mongod.service:
- shell
systemctl start mongod.service
Включить автозапуск службы:
- shell
systemctl enable mongod.service
5. Получение и настройка Пассворка
Онлайн
Получить скрипт:
- wget
- curl
wget https://repos.passwork.ru/repository/linux/scripts/passwork.sh
curl -O https://repos.passwork.ru/repository/linux/scripts/passwork.sh
Скрипт установки Пассворка не должен располагаться в каталоге вместе с файлами сервера приложений.
Назначить скрипту права на исполнение:
chmod +x passwork.sh
По умолчанию, скрипт passwork.sh
выполнит:
- Создание скрытого
.script_env
файла в текущем каталоге; - Создание директории
passwork_archive
для резервного копирования Пассворка; - Получение последней доступной верси Пассворка, подпись и открытый ключ;
- Установку ранее полученного архива в
/var/www/
Чтобы использовать нестандартный путь установки, отключить проверку сертификата или изменить поведение вы можете использовать параметрами запуска скрипта.
З апустить скрипт:
sudo ./passwork.sh
При первом запуске скрипт запросит API ключ и выполнит базовые проверки окружения:

Пример успешного выполнения скрипта:

Офлайн
Получить скрипт на другой машине с доступом в Интернет:
- wget
- curl
- PowerShell
wget https://repos.passwork.ru/repository/linux/scripts/passwork.sh
curl -O https://repos.passwork.ru/repository/linux/scripts/passwork.sh
(New-Object System.Net.WebClient).DownloadFile("https://repos.passwork.ru/repository/linux/scripts/passwork.sh", "$PWD\passwork.sh")
Или получить passwork.sh
скрипт вручную используя ссылку
Скрипт установки Пассворка не должен располагаться в каталоге вместе с файлами сервера приложений.
Назначить скрипту права на исполнение:
chmod +x passwork.sh
Перед запуском passwork.sh
необходимо:
- Получить 7 версию Пассворка из клиентского портала (Обязательно);
- Поместить в директорию запуска или использовать
--input
аргумент для указания расположение (Обязательно); - Получить подпись архива и публичный ключ Пассворка (необязательно если используется
--skip
аргумент).
По ум олчанию, скрипт passwork.sh
выполнит:
- Создание директории
passwork_archive
для резервного копирования Пассворка; - Разархивирование архива с Пассворком;
- Установку ранее полученного архива в
/var/www/
Чтобы использовать нестандартный путь установки, отключить проверку сертификата или изменить поведение вы можете использовать параметрами запуска скрипта.
После подготовки запустить passwork.sh
скрипт:
sudo ./passwork.sh -offline
Пример успешного выполнения скрипта:

6. Настройка веб-сервера для HTTPS-протокола
Для обеспечения корректной работы необходимо использовать HTTPS протокол. Использование HTTP приведёт к ошибкам.