Устарело
...
Пассворк 4
CentOS
CentOS 8 Stream
28мин
💡 это руководство по установке не подходит для centos linux 8, срок службы которого истекает 31 декабря 2021 г оглавление 1\ получение прав root и создание локальной базы данных пакетов su cd yum makecache измените имя сервера на "passwork" hostnamectl set hostname passwork systemctl restart networkmanager service 2\ установка git и apache2, настройка файрвола yum y install git httpd avahi systemctl start httpd systemctl enable httpd firewall cmd permanent add service=http firewall cmd permanent add service=https firewall cmd permanent add port=5353/udp firewall cmd reload systemctl restart avahi daemon 3\ установка базы данных mongodb настройка системы управления пакетами (yum) создайте файл /etc/yum repos d/mongodb org 3 6 repo для того, чтобы установить mongodb с использованием менеджера пакетов yum yum y install nano nano /etc/yum repos d/mongodb org 4 2 repo приведите файл к следующему виду \[mongodb org 4 2] name=mongodb repository baseurl=https //repo mongodb org/yum/redhat/$releasever/mongodb org/4 2/x86 64/ gpgcheck=1 enabled=1 gpgkey=https //www mongodb org/static/pgp/server 4 2 asc для установки последней стабильной версии mongodb выполните следующую команду yum y install mongodb org измените режим работы selinux на disabled откройте файл /etc/selinux/config и измените значение параметра selinux на disabled nano /etc/selinux/config приведите файл к следующему виду selinux=disabled для того чтобы внесенные изменения вступили в силу, необходимо перезагрузить систему запустите службу mongodb su cd systemctl start mongod service включите автозапуск службы mongod при загрузке системы systemctl enable mongod service 4\ установка php 7 установка пакета конфигурации remi репозитория yum y install epel release yum utils dnf install y https //dl fedoraproject org/pub/epel/epel release latest 8 noarch rpm dnf install y https //rpms remirepo net/enterprise/remi release 8 rpm dnf module install y php\ remi 7 3 установка php и дополнительных расширений dnf install y php php json php ldap php xml php bcmath php mbstring 5\ установка php mongo драйвера dnf config manager set enabled powertools yum y install gcc php pear curl devel openssl devel pcre devel php devel pear channel update pecl php net pecl install mongodb echo "extension=mongodb so" | tee /etc/php d/20 mongodb ini systemctl restart httpd systemctl restart php fpm 6\ установка phalcon php фреймворка yum y install php mysql libtool pcre devel git clone branch 3 4 x depth=1 "https //github com/phalcon/cphalcon git" cd cphalcon/build /install echo "extension=phalcon so" | tee /etc/php d/50 phalcon ini systemctl restart httpd 7\ загрузка и установка passwork клонируйте репозиторий используя ваш логин и пароль cd /var/www git init git remote add origin https //passwork download/passwork/passwork git git fetch git checkout v4 💡 система запросит логин и пароль к репозиторию, которые вы можете найти в вашем клиентом портале пассворка если у вас нет доступа к клиентскому порталу — свяжитесь с нами установите права доступа на папки и файлы find /var/www/ type d exec chmod 755 {} \\; find /var/www/ type f exec chmod 644 {} \\; chown r apache\ apache /var/www/ конфигурация apache2 создайте конфигурационный файл для non ssl соединения nano /etc/httpd/conf d/non ssl conf приведите содержимое файла к следующему виду \<virtualhost 80> serveradmin webmaster\@localhost documentroot /var/www/public \<directory /var/www/public> options indexes followsymlinks multiviews allowoverride all order allow,deny allow from all require all granted \</directory> errorlog logs/error log transferlog logs/access log loglevel warn \</virtualhost> перезапустите apache systemctl restart httpd откройте http //passwork local http //passwork local/ или http // http //127 0 0 1/ \<ip адрес сервера> для доступа к вебсайту 8\ инсталляция при первом открытии пассворк вы увидите диалог инсталляции, который проверит корректность настройки сервера и позволит ввести базовые параметры 💡 оставьте все поля в значениях по умолчанию, если вы устанавливаете новую копию пассворк зарегистрируйте администратора пассворк введите логин и пароль для первого пользователя пользователь автоматически станет администратором и владельцем организации 9\ создание ssl сертификата установите ssl модуль для apache yum y install mod ssl создайте новую директорию для хранения закрытого ключа (директория /etc/ssl/certs доступна по умолчанию для хранения файла сертификата) mkdir /etc/ssl/private установите правильные разрешения на директорию chmod 700 /etc/ssl/private создайте новый сертификат и закрытый ключ для его защиты openssl req x509 nodes days 365 newkey rsa 2048 subj '/cn=your domain name' addext 'subjectaltname=dns your domain name' keyout /etc/ssl/private/apache selfsigned key out /etc/ssl/certs/apache selfsigned crt создайте группу диффи хеллмана openssl dhparam out /etc/ssl/certs/dhparam pem 2048 добавьте содержимое сгенерированного файла в конец самоподписанного сертификата cat /etc/ssl/certs/dhparam pem | tee a /etc/ssl/certs/apache selfsigned crt 10\ настройка продукта для корректной работы в chrome с ssl при работе через ssl соединение (https) браузер chrome требует наличия флагов secure и samesite у cookie без этих флагов браузер не будет принимать куки, и вы не сможете авторизоваться в пассворке в chrome для того чтобы установить эти флаги, включите параметр session cookie secure в файле /etc/php ini session cookie secure = on и установите параметр disablesamesitecookie (секция \[application] )в файле /var/www/app/config/config ini в значение off disablesamesitecookie = off 💡 не устанавливайте эти параметры или верните их в исходное значение, если вы передумаете использовать ssl и будете работать через http протокол 11\ настройка apache для использования ssl соединения откройте конфигурационный файл ssl в текстовом редакторе nano /etc/httpd/conf d/ssl conf найдите раздел, начинающийся с \<virtualhost default 443> и внесите следующие изменения раскомментируйте строку documentroot и измените путь в кавычках на путь к корневому каталогу вашего сайта по умолчанию это будет /var/www/html затем, раскомментируйте строку servername и замените www example com на ip адрес или домен сервера (в зависимости от того, что вы указали в качестве common name в своем сертификате) documentroot /var/www/public servername passwork local 443 добавьте директиву “directory” после “servername” \<directory /var/www/public> options indexes followsymlinks multiviews allowoverride all order allow,deny allow from all 	 require all granted \</directory> затем найдите строки sslprotocol и sslciphersuite и либо удалите их, либо закомментируйте новая конфигурация, которую мы добавим ниже имеет более безопасные параметры, чем настройки apache по умолчанию в centos \# sslprotocol all sslv2 \# sslciphersuite high\ medium !anull !md5 !seed !idea найдите строки sslcertificatefile и sslcertificatekeyfile и приведите их к следующему виду sslcertificatefile /etc/ssl/certs/apache selfsigned crt sslcertificatekeyfile /etc/ssl/private/apache selfsigned key после внесения изменений проверьте, что ваш файл конфигурации виртуального хоста соответствует примеру ниже \<virtualhost default 443> documentroot /var/www/public servername passwork local 443 \<directory /var/www/public> options indexes followsymlinks multiviews allowoverride all order allow,deny allow from all 	 require all granted \</directory> sslcertificatefile /etc/ssl/certs/apache selfsigned crt sslcertificatekeyfile /etc/ssl/private/apache selfsigned key \</virtualhost> мы закончили с изменениями в блоке virtualhost сохраните изменения (ctr+o) и выйдите (ctr+x) перезапустите apache, чтобы изменения вступили в силу systemctl restart httpd проверьте ssl соединение, откройте ссылку https //passwork local https //passwork local/