Alma/Rocky/CentOS
Инструкция по установке Пассворка на ОС:
- CentOS 8 Stream, Alma Linux 8, Rocky Linux 8.
- CentOS 9 Stream, Alma Linux 9, Rocky Linux 9.
В инструкции используются переключаемые блоки кода для разделения команд согласно версиям операционной системы
Пассворк не требователен к системным ресурсам, а необходимое количество серверов зависит от числа активных пользователей, объема хранимых данных и требований к отказоустойчивости системы.
Ознакомьтесь с полными системными требованиями.
Если сервер имеет 2-4 ГБ ОЗУ, то для корректной сборки всех библиотек мы рекомендуем включить SWAP-файл
Получить права root и обновить локальную базу данных пакетов:
Установить пакет для контроля версий Git, веб-сервер Apache2 и утилиту передачи данных curl:
Запустить службу httpd.service:
Включить автозапуск службы:
Установить службу динамического управления брандмауэром Firewalld:
Запустить службу firewalld.service:
Включить автозапуск службы:
Добавить HTTP-протокол в список разрешенных сервисов конфигурации Firewalld:
Добавить HTTPS-протокол в список разрешенных сервисов конфигурации Firewalld:
Применить изменения в конфигурации Firewalld:
Отредактировать конфигурационный файл /etc/selinux/config:
Изменить значение параметра SELINUX с enforcing на disabled:
Сохранить изменения (Ctrl+O) и выйдите (Ctrl+X). Перезагрузить систему, чтобы применить изменения в SELinux:
Установить пакет EPEL (epel-release) и утилиты для управления пакетами yum (yum-utils):
Получить и установите последний EPEL репозиторий:
Получить и установить репозиторий, предоставляющий доступ к версиям PHP:
Включить модуль PHP версии 8.2 из репозитория REMI:
Установить PHP и дополнительные расширения:
Установить драйвер PHP MongoDB:
Создайть файл конфигурации для загрузки и включения PHP MongoDB:
Установить расширение PHP Phalcon:
Создать файл для добавления репозитория MongoDB к системе управления пакетами yum:
Поместить в файл следующее содержимое:
Установить MongoDB:
Запустить службу mongod.service:
Включить автозапуск службы:
Перейти в директорию /var/www/:
Добавить глобальную конфигурацию Git, указывающую на безопасную директорию:
Инициализировать Git репозиторий в директории /var/www/:
Добавить удалённый репозиторий Пассворк:
Получить удалённый репозиторий на локальный сервер:
Система запросит логин и пароль к репозиторию, которые находятся в клиентском портале Пассворка. Если у вас нет доступа к клиентскому порталу, свяжитесь с нами.
Переключиться на ветку v6 с последней актуальной версией Пассворка:
Назначить права на директории и файлы и сделать apache владельцем всех файлов:
Открыть файл конфигурации виртуального хоста для HTTP-соединения:
Отредактировать содержимое файла и привести к следующему виду:
Перезапустить веб-сервер (httpd.service):
Открыть http://passwork.local или http://127.0.0.1 для проверки подключения к Пассворк
При первом подключении к Пассворк, необходимо пройти чек-лист параметров, в ходе которого будет выполнена:
- Проверка необходимых параметров
- Подключение к базе данных MongoDB
- Случайно сгенерированный ключ для шифрования данных в MongoDB
- Проверка лицензионного ключа
Оставьте все поля в значениях по умолчанию, если вы устанавливаете новую копию Пассворк
После прохождения чек-листа будет предложено создать первого пользователя в Пассворк, где необходимо указать логин, пароль и почтовый адрес для отправки уведомлений.
Первый пользователь по умолчанию является локальным и владельцем Пассворка. В случае назначения владельцем LDAP/SSO пользователя, он автоматически станет локальным и вы не сможете авторизоваться.
Установить SSL модуль для Apache2:
Создать новую директорию для хранения закрытого ключа и сертификата:
Сгенерировать самоподписанный сертификат X.509 для Apache2 с помощью OpenSSL:
В поле Common Name (CN) важно указать IP-адрес вашего сервера или имя хоста, так как ваш сертификат должен соответствовать домену (или IP-адресу) для веб-сайта
Сгенерировать параметры Диффи-Хеллмана с длиной ключа 2048:
Добавить параметры Диффи-Хеллмана к самоподписанному сертификату:
Установить права доступа root пользователю для защиты закрытого ключа и сертификата:
Открыть конфигурационный файл для настройки HTTPS протокола:
Найти раздел, начинающийся с <VirtualHost _default_:443> и внести следующие изменения:
- Раскомментировать строку DocumentRoot и изменить путь на корневой каталог Пассворка (/var/www/public);
- Раскомментировать строку ServerName и изменить www.example.com на IP-адрес или домен сервера (в зависимости от указанного значения в Common Name сертификата):
- Добавить директиву — <Directory> после ServerName:
- Закомментировать строки с SSLProtocol и SSLCipherSuite в конфигурации:
- Обновить пути к файлам сертификатов, которые были сгенерированы ранее:
- Проверить, что файл конфигурации виртуального хоста соответствует примеру:
Перезапустить веб-сервер (httpd.service):
Проверить подключение к Пассворку по HTTPS протоколу — https://passwork.local
При использовании защищенного SSL-соединения (HTTPS) клиентские браузеры требуют определенных флагов для обработки данных Пассворка.
Если флаги session.cookie_secure и disableSameSiteCookie не установлены, браузеры не смогут установить соединение, что может приведет к ошибкам авторизации.
Установить параметр session.cookie_secure в файле /etc/php.ini:
Установить параметр disableSameSiteCookie в /var/www/app/config/config.ini на значение Off:
Не устанавливайте эти параметры или верните их в исходное значение, если вы передумаете использовать SSL и будете работать через HTTP-протокол.
Фоновые задачи — это задачи, которые выполняются по планировщику в фоновом режиме. Узнайте, как настроить фоновые задачи.
Фоновые задачи обязательны для корректной работы части функционала Пассворка, например:
- Работы LDAP;
- Отправки почтовых уведомлений;
- Загрузки фавиконов;
- Очистки коллекции session в базе данных Пассворка.
Перед изменением и настройке параметров безопасности, настоятельно рекомендуем убедиться в стабильной и корректной работе Пассворка, а также создать резервную копию файлов
Безопасность сервера является важной частью обеспечения защиты ценных данных и ресурсов компании. Это процесс, который требует планирования и исполнения, чтобы обеспечить максимальную защиту от различных угроз.
Ознакомьтесь с рекомендуемыми параметрами безопасности Пассворка.