Ручная установка
Linux
Alma/Rocky/CentOS/MSVSPhere
37 мин
инструкция по установке пассворка на ос centos 8 stream, alma linux 8, rocky linux 8, msvsphere 8 centos 9 stream, alma linux 9, rocky linux 9, msvsphere 9 в инструкции используются переключаемые блоки кода для разделения команд согласно версиям операционной системы 1\ минимальные системные требования пассворк не требователен к системным ресурсам, а необходимое количество серверов зависит от числа активных пользователей, объема хранимых данных и требований к отказоустойчивости системы ознакомьтесь с технические требования docid\ mh 04wrskx 1qu5kbrlm если сервер имеет 2 4 гб оперативной памяти, мы рекомендуем включить создание swap файла на linux docid\ b2jj s6a7tsjx8t hfjr файл 2\ базовые действия перед установкой получить права root и обновить локальную базу данных пакетов shell sudo i dnf makecache установить веб сервер apache2 и утилиту передачи данных curl bash 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) dnf y install epel release yum utils получить и установите последний epel репозиторий os 9 dnf install y https //dl fedoraproject org/pub/epel/epel release latest 9 noarch rpm os 8 dnf install y https //dl fedoraproject org/pub/epel/epel release latest 8 noarch rpm получить и установить репозиторий, предоставляющий доступ к версиям php os 9 dnf install y https //rpms remirepo net/enterprise/remi release 9 rpm os 8 dnf install y https //rpms remirepo net/enterprise/remi release 8 rpm включить модуль php версии 8 3 из репозитория remi dnf module enable php\ remi 8 3 установить php и дополнительные расширения 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 запущена systemctl status php fpm запустить и активировать автозапуск службы, если она остановлена systemctl start php fpm systemctl enable php fpm 3 1 установка драйвера php mongodb установить драйвер php mongodb pecl install mongodb создайть файл конфигурации для загрузки и включения php mongodb echo "extension=mongodb so" | tee /etc/php d/20 mongodb ini 4\ установка базы данных mongodb eсли вы планируете использовать postgresql, пропустите 4 й шаг установки подробнее о поддержке поддержка docid\ h4rsg56ke joqfgcj2sbj создать файл для добавления репозитория mongodb к системе управления пакетами yum nano /etc/yum repos d/mongodb org 6 0 repo поместить в файл следующее содержимое os 9 \[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 os 8 \[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 dnf install mongodb org y запустить службу mongod service shell systemctl start mongod service включить автозапуск службы shell systemctl enable mongod service 5\ получение и настройка пассворка онлайн получить скрипт wget wget https //repos passwork ru/repository/linux/scripts/passwork sh curl curl o https //repos passwork ru/repository/linux/scripts/passwork sh скрипт установки пассворка не должен располагаться в каталоге вместе с файлами сервера приложений назначить скрипту права на исполнение chmod +x passwork sh по умолчанию, скрипт passwork sh выполнит создание скрытого script env файла в текущем каталоге; создание директории passwork archive для резервного копирования пассворка; получение последней доступной верси пассворка, подпись и открытый ключ; установку ранее полученного архива в /var/www/ чтобы использовать не стандартный путь установки, отключить проверку сертификата или изменить поведение, воспользуйтесь — linux docid\ ttxk3kncllt0vkxc8h4 x запустить скрипт sudo /passwork sh при первом запуске скрипт запросит api ключ и выполнит базовые проверки окружения пример успешного выполнения скрипта офлайн олучить скрипт на другой машине с доступом в интернет wget wget https //repos passwork ru/repository/linux/scripts/passwork sh curl curl o https //repos passwork ru/repository/linux/scripts/passwork sh powershell (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/ чтобы использовать не стандартный путь установки, отключить проверку сертификата или изменить поведение, воспользуйтесь — linux docid\ ttxk3kncllt0vkxc8h4 x после подготовки запустить passwork sh скрипт sudo /passwork sh offline пример успешного выполнения скрипта 6 настройка веб сервера для https протокола для обеспечения корректной работы необходимо использовать https протокол использование http приведёт к ошибкам 6 1 генерация самоподписанного ssl сертификата установить ssl модуль для apache2 shell dnf install mod ssl y создать новую директорию для хранения закрытого ключа и сертификата shell mkdir /etc/ssl/private сгенерировать самоподписанный сертификат x 509 для apache2 с помощью openssl shell openssl req x509 nodes days 365 newkey rsa 2048 subj '/cn=your domain name' keyout /etc/ssl/private/apache selfsigned key out /etc/ssl/certs/apache selfsigned crt в поле common name (cn) важно указать ip адрес вашего сервера или имя хоста, так как ваш сертификат должен соответствовать домену (или ip адресу) для веб сайта сгенерировать параметры диффи хеллмана с длиной ключа 2048 shell openssl dhparam out /etc/ssl/certs/dhparam pem 2048 добавить параметры диффи хеллмана к самоподписанному сертификату shell cat /etc/ssl/certs/dhparam pem | tee a /etc/ssl/certs/apache selfsigned crt установить права доступа root пользователю для защиты закрытого ключа и сертификата shell chmod 700 /etc/ssl/private 6 2 настройка виртуального хоста для доступа по https протоколу перед настройкой веб сервера с включённой ssl терминацией, рекомендуется ознакомиться с терминация ssl docid\ vts86oitivfbwipwpvcox открыть конфигурационный файл для настройки https протокола shell nano /etc/httpd/conf d/ssl conf найти раздел, начинающийся с \<virtualhost default 443> и внести следующие изменения раскомментировать строку documentroot и изменить путь на корневой каталог пассворка ( /var/www/public ); раскомментировать строку servername и изменить www example com на ip адрес или домен сервера (в зависимости от указанного значения в common name сертификата) documentroot /var/www/public servername passwork 443 добавить директиву — \<directory> после servername \<directory /var/www/public> options followsymlinks multiviews allowoverride all order allow,deny allow from all 	 require all granted \</directory> обновить пути к файлам сертификатов, которые были сгенерированы ранее shell sslcertificatefile /etc/ssl/certs/apache selfsigned crt sslcertificatekeyfile /etc/ssl/private/apache selfsigned key изменить обработчик php файлов , указав проксирование запросов к сокету php fpm bash \<filesmatch \\ php$> sethandler "proxy\ unix /run/php fpm/www sock|fcgi //localhost/" \</filesmatch> проверить, что блок ssl virtual host context соответсвует примеру shell \<virtualhost default 443> documentroot "/var/www/public" servername passwork 443 \<directory /var/www/public> options followsymlinks multiviews allowoverride all order allow,deny allow from all require all granted \</directory> errorlog logs/ssl error log transferlog logs/ssl access log loglevel warn sslengine on sslhonorcipherorder on sslciphersuite profile=system sslproxyciphersuite profile=system sslcertificatefile /etc/ssl/certs/apache selfsigned crt sslcertificatekeyfile /etc/ssl/private/apache selfsigned key \<filesmatch \\ php$> sethandler "proxy\ unix /run/php fpm/www sock|fcgi //localhost/" \</filesmatch> browsermatch "msie \[2 5]" \\ nokeepalive ssl unclean shutdown \\ downgrade 1 0 force response 1 0 customlog logs/ssl request log \\ "%t %h %{ssl protocol}x %{ssl cipher}x \\"%r\\" %b" \</virtualhost> важно при копировании и вставке приведённого примера в конфигурационный файл будут получены ошибки, так как в примере указан лишь фрагмент блока, а не полный конфигурационный файл перезапустить службы bash systemctl restart php fpm systemctl restart httpd 7 прохождение чек листа при первом подключении к пассворк, необходимо пройти чек лист параметров, в ходе которого будет выполнена проверка необходимых параметров подключение к базе данных mongodb изменить подключение к mongodb на адрес — mongodb //localhost 27017 случайно сгенерированный ключ для шифрования данных в mongodb проверка лицензионного ключа после прохождения чек листа будет предложено создать первого пользователя в пассворк, где необходимо указать логин, пароль и почтовый адрес для отправки уведомлений дополнительные параметры компонентов, настройки безопасности и конфигурации системы пассворка доступны в разделе расширенные настройки docid\ namvkjgvceaeiza7kapxk