Устарело
...
Ручная установка
Linux
Debian
38мин
инструкция по установке пассворка на ос debian 11 debian 12 в инструкции используются переключаемые блоки кода для разделения команд согласно версиям операционной системы 1\ минимальные системные требования пассворк не требователен к системным ресурсам, а необходимое количество серверов зависит от числа активных пользователей, объема хранимых данных и требований к отказоустойчивости системы ознакомьтесь с технические требования docid\ mh 04wrskx 1qu5kbrlm если сервер имеет 2 4 гб озу, то для корректной сборки всех библиотек мы рекомендуем включить swap файл создание swap файла на linux docid\ b2jj s6a7tsjx8t hfjr 2\ базовые действия перед установкой получить права root и обновить локальную базу данных пакетов bash sudo i apt get update установить пакет для контроля версий git , веб сервер apache2 и утилиту передачи данных curl bash apt get install y git apache2 unzip curl 3\ установка php установить пакеты для работы с https репозиториями bash apt get install y apt transport https lsb release ca certificates получить и сохранить gpg ключ php репозитория bash wget o /etc/apt/trusted gpg d/php gpg https //repos passwork ru/repository/php/apt/debian/apt gpg добавить php репозиторий в список источников apt echo "deb https //repos passwork ru/repository/php/apt/debian/ $(lsb release sc) main" > /etc/apt/sources list d/php list обновить локальный список пакетов и репозиториев apt get update установить php и модули расширений apt get install y php8 2 php8 2 dev php8 2 ldap php8 2 xml php8 2 bcmath php8 2 mbstring php8 2 xml php8 2 curl php8 2 opcache php8 2 readline php8 2 zip php pear 3 1 установка драйвера php mongodb установить драйвер php mongodb pecl install mongodb 1 21 0 создать файлы конфигурации для загрузки и включения php mongodb echo "extension=mongodb so" | tee /etc/php/8 2/apache2/conf d/20 mongodb ini echo "extension=mongodb so" | tee /etc/php/8 2/cli/conf d/20 mongodb ini 3 2 установка php phalcon расширения установить php phalcon расширение mkdir /tmp/install && cd /tmp/install && curl lof https //github com/phalcon/cphalcon/releases/download/v5 3 1/phalcon php8 2 nts ubuntu gcc x64 zip && unzip phalcon php8 2 nts ubuntu gcc x64 zip && cp phalcon so /usr/lib/php/20220829 && cd / && rm rf /tmp/install создать файлы конфигурации для загрузки и включения php phalcon echo "extension=phalcon so" | tee /etc/php/8 2/apache2/conf d/30 phalcon ini echo "extension=phalcon so" | tee /etc/php/8 2/cli/conf d/30 phalcon ini 4\ установка базы данных mongodb загрузить и добавить gpg ключ mongodb debian 11 curl fssl https //www mongodb org/static/pgp/server 6 0 asc | gpg o /usr/share/keyrings/mongodb server 6 0 gpg dearmor debian 12 curl fssl https //www mongodb org/static/pgp/server 7 0 asc | gpg o /usr/share/keyrings/mongodb server 7 0 gpg dearmor добавить репозиторий mongodb в файл debian 11 echo "deb \[ signed by=/usr/share/keyrings/mongodb server 6 0 gpg] http //repo mongodb org/apt/debian bullseye/mongodb org/6 0 main" | sudo tee /etc/apt/sources list d/mongodb org 6 0 list debian 12 echo "deb \[ signed by=/usr/share/keyrings/mongodb server 7 0 gpg ] http //repo mongodb org/apt/debian bookworm/mongodb org/7 0 main" | tee /etc/apt/sources list d/mongodb org 7 0 list обновить список доступных пакетов apt get update установить mongodb с помощью менеджера пакетов apt apt get install y mongodb org запустить службу mongod service shell systemctl start mongod service включить автозапуск службы shell systemctl enable mongod service 5\ управление и загрузка последней версии пассворка с помощью git перейти в директорию /var/www/ bash cd /var/www/ добавить глобальную конфигурацию git, указывающую на безопасную директорию bash git config global add safe directory /var/www инициализировать git репозиторий в директории /var/www/ bash git init добавить удалённый репозиторий пассворк bash git remote add origin https //passwork download/passwork/passwork git получить удалённый репозиторий на локальный сервер bash git fetch система запросит логин и пароль к репозиторию, которые расположены на клиентском портале пассворк если у вас нет доступа к клиентскому порталу — свяжитесь с нами переключиться на ветку v6 с последней актуальной версией пассворка bash git checkout v6 назначить права на директории и файлы и сделать www data владельцем всех файлов bash find /var/www/ type d exec chmod 755 {} \\; find /var/www/ type f exec chmod 644 {} \\; chown r www data\ www data /var/www/ 6\ настройка apache2 для доступа по http протоколу в пассворк открыть файл конфигурации виртуального хоста для http соединения bash nano /etc/apache2/sites enabled/000 default conf отредактировать содержимое данного файла и привести к следующему виду bash \<virtualhost 80> serveradmin webmaster\@localhost documentroot /var/www/public \<directory /var/www/public> options followsymlinks multiviews allowoverride all order allow,deny allow from all \</directory> errorlog ${apache log dir}/error log customlog ${apache log dir}/access log combined \</virtualhost> включить модуль перезаписи url адресов и перезапустить службу apache2 bash a2enmod rewrite service apache2 restart открыть http //passwork local или http //127 0 0 1 для проверки подключения к пассворк 7\ прохождение чек листа при первом подключении к пассворк, необходимо пройти чек лист параметров, в ходе которого будет выполнена проверка необходимых параметров подключение к базе данных mongodb случайно сгенерированный ключ для шифрования данных в mongodb проверка лицензионного ключа оставьте все поля в значениях по умолчанию, если вы устанавливаете новую копию пассворк после прохождения чек листа будет предложено создать первого пользователя в пассворк, где необходимо указать логин, пароль и почтовый адрес для отправки уведомлений первый пользователь по умолчанию является локальным и владельцем пассворка в случае назначения владельцем ldap/sso пользователя, он автоматически станет локальным и вы не сможете авторизоваться 8\ настройка доступа по https протоколу 8 1 генерация самоподписанного ssl сертификата создать новую директорию для хранения закрытого ключа и сертификата bash mkdir /etc/apache2/ssl/ сгенерировать самоподписанный сертификат x 509 для apache2 с помощью openssl bash openssl req x509 nodes days 365 newkey rsa 2048 subj '/cn=your domain name' keyout /etc/apache2/ssl/apache key out /etc/apache2/ssl/apache crt common name (cn) — здесь важно указать ip адрес вашего сервера или имя хоста, так как ваш сертификат должен соответствовать домену (или ip адресу) для веб сайта; установить права доступа root пользователю для защиты закрытого ключа и сертификата bash chmod 600 /etc/apache2/ssl/ 8 2 настройка виртуального хоста для доступа по https протоколу активировать модуль ssl в apache2, позволяя серверу поддерживать протокол https bash a2enmod ssl включить конфигурационный файл виртуального хоста сайта с настройками для ssl соединения bash a2ensite default ssl открыть файл конфигурации виртуального хоста для https соединения bash nano /etc/apache2/sites enabled/default ssl conf найдите раздел, начинающийся с \<virtualhost default 443> и внесите следующие изменения добавить директиву servername (имя сервера или ip адрес) и порт ( 443) под строкой serveradmin bash serveradmin webmaster\@localhost servername passwork local 443 добавить директиву — \<directory> после servername bash \<directory /var/www/public> options followsymlinks multiviews allowoverride all order allow,deny allow from all \</directory> найти следующие изменения и обновите пути к файлам, которые были сгенерированы ранее или указать своё расположение до сертификата и ключа bash sslcertificatefile /etc/apache2/ssl/apache crt sslcertificatekeyfile /etc/apache2/ssl/apache key после внесения изменений проверить, что файл конфигурации виртуального хоста соответствует примеру bash \<ifmodule mod ssl c> \<virtualhost default 443> serveradmin webmaster\@localhost servername passwork local 443 documentroot /var/www/public \<directory /var/www/public> options followsymlinks multiviews allowoverride all order allow,deny allow from all \</directory> sslengine on sslcertificatefile /etc/apache2/ssl/apache crt sslcertificatekeyfile /etc/apache2/ssl/apache key \</virtualhost> \</ifmodule> перезапустить службу apache2 чтобы применить внесённые изменения в конфигурацию bash systemctl restart apache2 проверьте подключение к пассворк по протоколу https — https //passwork local 8 3 настройка пассворка для работы по https протоколу при использовании защищенного ssl соединения (https) клиентские браузеры требуют определенных флагов для обработки данных пассворка если флаги session cookie secure и disablesamesitecookie не установлены, браузеры не смогут установить соединение, что может приведет к ошибкам авторизации установить параметр session cookie secure в файле /etc/php/8 2/apache2/php ini bash sed i '/session cookie secure =/c session cookie secure = on' /etc/php/8 2/apache2/php ini установить параметр disablesamesitecookie в /var/www/app/config/config ini на значение off bash sed i '/disablesamesitecookie =/c disablesamesitecookie = off' /var/www/app/config/config ini не устанавливайте этот параметр или верните в исходное значение, если вы передумаете использовать ssl и будете работать через http протокол 9\ настройка фоновых задач фоновые задачи — это задачи, которые выполняются по планировщику в фоновом режиме узнайте, как настроить фоновые задачи docid\ kzc80wtyyipbgbgngjvcq фоновые задачи обязательны для корректной работы части функционала пассворка, например работы ldap; отправки почтовых уведомлений; загрузки фавиконов; очистки коллекции session в базе данных пассворка 10\ настройка безопасности перед изменением и настройке параметров безопасности, настоятельно рекомендуем убедиться в стабильной и корректной работе пассворка, а также создать резервную копию файлов безопасность сервера является важной частью обеспечения защиты ценных данных и ресурсов компании это процесс, который требует планирования и исполнения, чтобы обеспечить максимальную защиту от различных угроз ознакомьтесь с настройка безопасности docid x li81igyot52skmwmax пассворка