Устарело
...
Пассворк 4
CentOS
CentOS 7
28мин
1\ получение прав root и создание локальной базы данных пакетов su cd yum makecache измените имя сервера на "passwork" hostnamectl set hostname passwork /etc/init d/network restart 2\ установка git и apache2, настройка файрвола yum y install git httpd avahi firewalld 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 service mongod start включите автозапуск службы mongod при загрузке системы systemctl enable mongod service 4\ установка php 7 установка пакета конфигурации remi репозитория yum y install epel release yum utils yum y install https //rpms remirepo net/enterprise/remi release 7 rpm yum config manager enable remi php73 установка php и дополнительных расширений yum y install php php json php ldap php xml php bcmath php mbstring 5\ установка php mongo драйвера yum y install gcc php pear php devel openssl devel pear channel update pecl php net pecl install mongodb echo "extension=mongodb so" | tee /etc/php d/20 mongodb ini systemctl restart httpd 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 вызов этой команды приведет к серии запросов common name укажите ip адрес вашего сервера или имя хоста это поле имеет значение, так как ваш сертификат должен соответствовать домену (или ip адресу) для вашего веб сайта заполните все остальные поля по своему усмотрению ниже приведены примеры ответов interactive you are about to be asked to enter information that will be incorporated into your certificate request what you are about to enter is what is called a distinguished name or a dn there are quite a few fields but you can leave some blank for some fields there will be a default value, if you enter ' ', the field will be left blank —— country name (2 letter code) \[au]\ us state or province name (full name) \[some state]\ example locality name (eg, city) \[]\ example organization name (eg, company) \[internet widgits pty ltd]\ example inc organizational unit name (eg, section) \[]\ example dept common name (e g server fqdn or your name) \[]\ passwork local email address \[]\ test\@passwork local создайте группу диффи хеллмана 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/