Ручная установка
Linux

Alma/Rocky/CentOS

45min

Инструкция для установки Пассворка на ОС:

  • CentOS 8 Stream, Alma Linux 8, Rocky Linux 8.
  • CentOS 9 Stream, Alma Linux 9, Rocky Linux 9.

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

1. Минимальные системные требования

Пассворк не требователен к ресурсам. Объемы необходимых ресурсов (RAM, CPU, HDD) и количество серверов зависят от количества активных пользователей, объема хранимых данных, а также требований к отказоустойчивости системы.

Если на сервере 2-4 ГБ RAM, то рекомендуется включить SWAP файл для корректной сборки всех библиотек.

2. Базовые действия перед установкой

Получить права root и обновить локальную базу данных пакетов:

shell


Установить пакет для контроля версий Git, веб-сервер Apache2 и утилиту передачи данных curl:

bash


Запустить службу httpd.service:

shell


Включить автозапуск службы:

shell


2.1 Установка и базовая настройка Firewalld

Установить службу динамического управления брандмауэром (Firewalld):

shell


Запустить службу firewalld.service:

shell


Включить автозапуск службы:

shell


Добавить HTTP протокол в список разрешенных сервисов конфигурации firewalld:

shell


Добавить HTTPS протокол в список разрешенных сервисов конфигурации firewalld:

shell


Применить изменения в конфигурации firewalld:

shell


2.2 Отключение SELinux и перезагрузка ОС

Отредактировать конфигурационный файл — /etc/selinux/config:

shell


Изменить параметр SELINUX с enforcing на disabled:

shell


Сохранить изменения (Ctrl+O) и выйти (Ctr+X). Перезагрузить ОС, чтобы применить изменения в SELinux:

shell


3. Установка PHP

Установить пакет EPEL (epel-release) и утилиты для управления пакетами yum (yum-utils):

Shell


Получить и установить последний EPEL репозиторий:

OS 8
OS 9


Получить и установить репозиторий предоставляющий доступ к версиям PHP:

OS 8
OS 9


Включить модуль PHP версии 8.2 из репозитория REMI:

Shell


Установить PHP и дополнительные расширения:

Shell


3.1 Установка PHP MongoDB драйвера

Установить PHP MongoDB драйвер:

Shell


Создать файл конфигурации для загрузки и включения PHP MongoDB:

Shell


3.2 Установка PHP Phalcon расширения

Установить PHP Phalcon расширение:

Shell


4. Установка базы данных MongoDB

Создать файл для добавления репозитория MongoDB к системе управления пакетами (yum):

Shell


Поместить в файл следующее содержимое:

OS 8
OS 9


Установить MongoDB:

Shell


Запустить службу mongod.service:

shell


Включить автозапуск службы:

shell


5. Управление и скачивание последней версии Пассворк с помощью Git

Перейти в директорию — /var/www/:

shell


Добавить глобальную конфигурацию Git, указывающую на безопасную директорию:

shell


Инициализировать Git репозиторий в директории — /var/www/:

shell


Добавить удалённый репозиторий Пассворк:

shell


Получить удалённый репозиторий на локальный сервер:

shell


Система запросит логин и пароль к репозиторию, которые расположены на клиентском портале Пассворк. Если у вас нет доступа к клиентскому порталу — свяжитесь с нами.

Переключиться на ветку — v6 с последней актуальной версией Пассворк:

shell


Назначить права на директории, файлы и установить владельца для всех файлов — apache:

shell


6. Настройка Apache2 для доступа по HTTP протоколу в Пассворк

Открыть файл конфигурации виртуального хоста для HTTP соединения:

shell


Отредактировать содержимое файла и привести к следующему виду:

shell


Перезапустить веб-сервер (httpd.service):

shell


Открыть http://passwork.local или http://127.0.0.1 для проверки подключения к Пассворк.

7. Прохождение чек-листа параметров в Пассворк

При первом подключении к Пассворк, необходимо пройти чек-лист параметров, в ходе которого будет выполнена:

  • Проверка необходимых параметров
  • Подключение к базе данных MongoDB
  • Случайно сгенерированный ключ для шифрования данных в MongoDB
  • Проверка лицензионного ключа

Оставьте все поля в значениях по умолчанию, если вы устанавливаете новую копию Пассворк.

После прохождения чек-листа параметров, будет предложено создать первого пользователя в Пассворк, где необходимо указать логин, пароль и почтовый адрес для отправки уведомлений.

Обратите внимание.

Данный пользователь всегда по умолчанию является локальным и «Владельцем» Пассворк, в случае назначения — «Владельцем» LDAP/SSO пользователя, он автоматически станет локальным и вы не сможете авторизоваться в Пассворк

8. Настройка Пассворк для доступа по HTTPS протоколу

8.1 Генерация самоподписанного SSL сертификата

Установить SSL модуль для Apache2:

shell


Создать новую директорию для хранения закрытого ключа и сертификата:

shell


Сгенерировать самоподписанный сертификат X.509 для Apache2 с помощью — OpenSSL:

shell


Common Name (CN) — Укажите IP-адрес вашего сервера или имя хоста. Это поле имеет значение, так как ваш сертификат должен соответствовать домену (или IP-адресу) для вашего веб-сайта.

Сгенерировать параметры Диффи-Хеллмана с длиной ключа 2048:

shell


Добавить параметры Диффи-Хеллмана к самоподписанному сертификату:

shell


Установить права доступа root пользователю для защиты закрытого ключа и сертификата:

shell


8.2 Настройка виртуального хоста для доступа в Пассворк по HTTPS протоколу

Открыть конфигурационный файл для настройки HTTPS протокола:

shell


Найдите раздел, начинающийся с <VirtualHost _default_:443> и внесите следующие изменения:

  • Раскомментировать строку DocumentRoot и изменить путь на корневой каталог Пассворка (/var/www/public);
  • Раскомментировать строку ServerName и изменить www.example.com на IP-адрес или домен сервера (в зависимости от указанного значения в Common Name сертификата):
Shell

  • Добавить директиву — <Directory> после ServerName:
Shell

  • Закомментировать строки с SSLProtocol и SSLCipherSuite в конфигурации:
Shell

  • Обновить пути к файлам сертификатов, которые были сгенерированы ранее:
shell

  • Проверить, что файл конфигурации виртуального хоста соответствует примеру:
shell


Перезапустить веб-сервер (httpd.service):

bash


Проверить подключение к Пассворку по HTTPS протоколу — https://passwork.local

8.3 Настройка Пассворк для работы по HTTPS протоколу

При использовании защищенного SSL-соединения (HTTPS) клиентские браузеры требуют определенных флагов для обработки данных Пассворк. Эти флаги называются session.cookie_secure и disableSameSiteCookie.

Если эти флаги не установлены, браузеры не смогут установить соединения и будет отклонено подключение, что может привести к ошибкам при авторизации — «Сессия данной вкладки браузера устарела».

Установить параметр ;session.cookie_secure в файле /etc/php.ini:

bash


Установить параметр disableSameSiteCookie в /var/www/app/config/config.ini на значение Off:

bash


Не устанавливайте эти параметры или верните их в исходное значение, если вы передумаете использовать SSL и будете работать через HTTP-протокол.

9. Настройка фоновых задач

Фоновые задачи — это задачи, которые выполняются по планировщику в фоновом режиме.

Они является обязательными для корректной работы части функционала Пассворка, например:

  • Работа LDAP;
  • Отправка почтовых уведомлений;
  • Загрузка фавиконов;
  • Очистка коллекции session в базе данных Пассворка.

Настройка фоновых задач.

10. Настройка безопасности

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

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

Рекомендуемые параметры безопасности Пассворка.

Обновлено 21 Oct 2024
Doc contributor
Doc contributor
Doc contributor
Помогла ли вам эта страница?