Website logo
⌘K
Техническая документация
Установка Пассворк
Ручная установка на Linux
Ручная установка на Windows Server
Администрирование
Все про SSL
Устарело
Linux
База даннных
Обновления
Центр поддержки
Docs powered by Archbee
Website logo
Техническая поддержка
Устарело
...
Пассворк 4
Ubuntu

Ubuntu 20.04

30min

Установка менеджера паролей в Ubuntu 20.04

1. Получение прав root и создание локальной базы данных пакетов.

Shell
sudo -i 
apt-get update


Измените имя сервера на "passwork".

Shell
hostnamectl set-hostname passwork


Установите сервисы для автоматической настройки и обнаружения в локальной сети.

Shell
apt-get install -y avahi-daemon libnss-mdns


Измените значение параметра AVAHI_DAEMON_DETECT_LOCAL с 1 на 0.

Shell
nano /etc/default/avahi-daemon


Приведите содержимое файла к виду:

Shell
AVAHI_DAEMON_DETECT_LOCAL = 0


Перезапустите avahi-daemon:

Shell
service avahi-daemon restart


2. Установка Git и Apache2

Shell
apt-get install -y git apache2


3. Установка MongoDB

Импортируйте открытый ключ, используемый системой управления пакетами.

Shell
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 4B7C549A058F8B6B


Создайте файл /etc/apt/sources.list.d/mongodb.list

Shell
echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | tee /etc/apt/sources.list.d/mongodb.list


Обновите локальную базу данных пакетов.

Shell
apt-get update


Установите последнюю стабильную версию MongoDB

Shell
apt-get install -y mongodb-org


Создайте директорию для базы данных MongoDB.

Shell
mkdir -p /data/dbs


Запустите службу MongoDB.

Shell
service mongod start


Включите автозапуск службы mongod при загрузке системы.

Shell
systemctl enable mongod.service


4. Установка PHP 7

Добавление PPA репозитория

Shell
apt-get install -y software-properties-common
add-apt-repository -y ppa:ondrej/php


Установка PHP и дополнительных расширений

Shell
apt-get update
apt-get install -y php7.3 php7.3-json php7.3-dev php7.3-ldap php7.3-xml php7.3-bcmath php7.3-mbstring


5. Установка PHP Mongo драйвера

Shell
apt-get install -y pkg-config
pecl install mongodb
echo "extension=mongodb.so" | tee /etc/php/7.3/apache2/conf.d/20-mongodb.ini


6. Установка Phalcon PHP фреймворка

Shell
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/7.3/apache2/conf.d/20-phalcon.ini
service apache2 restart


7. Загрузка и установка Passwork

Клонируйте репозиторий используя ваш логин и пароль.

💡 Система запросит логин и пароль к репозиторию, которые вы можете найти в вашем клиентом портале Пассворка. Если у вас нет доступа к клиентскому порталу — свяжитесь с нами.

Установите права доступа на папки и файлы.

Shell
find /var/www/ -type d -exec chmod 755 {} \;
find /var/www/ -type f -exec chmod 644 {} \;
chown -R www-data:www-data /var/www/


Конфигурация Apache2

Откройте конфигурационный файл Apache.

Shell
nano /etc/apache2/sites-enabled/000-default.conf


Приведите содержимое файла к следующему виду:

Shell
<VirtualHost *:80>
    #ServerName .....
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/public
    <Directory /var/www/public>
        Options Indexes 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>


Включите rewrite модуль и перезапустите Apache.

Shell
a2enmod rewrite
service apache2 restart


Откройте http://passwork.local или http://127.0.0.1 для доступа к вебсайту.

8. Инсталляция

При первом открытии Пассворк вы увидите диалог инсталляции, который проверит корректность настройки сервера и позволит ввести базовые параметры.

💡 Оставьте все поля в значениях по умолчанию, если вы устанавливаете новую копию Пассворк.

Зарегистрируйте администратора Пассворк

Введите логин и пароль для первого пользователя. Пользователь автоматически станет администратором и владельцем организации.

9**. Создание SSL сертификата**

Для настройки SSL необхоидмо изменить параметр disableSameSiteCookie в файле /var/www/app/config/config.ini:

Shell
disableSameSiteCookie = Off


Активируйте SSL модуль Apache.

Shell
a2enmod ssl


Активируйте стандартную конфигурацию SSL.

Shell
a2ensite default-ssl


Перезапустите Apache для того, чтобы изменения вступили в силу.

Shell
service apache2 restart


Создайте новую директорию для хранения закрытого ключа и сертификата.

Shell
mkdir /etc/apache2/ssl


Создайте новый сертификат и закрытый ключ для его защиты.

Shell
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -subj '/CN=your.domain.name' -addext 'subjectAltName=DNS: your.domain.name' -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt


Вызов этой команды приведет к серии запросов.

  • Common Name: Укажите IP-адрес вашего сервера или имя хоста. Это поле имеет значение, так как ваш сертификат должен соответствовать домену (или IP-адресу) для вашего веб-сайта.
  • Заполните все остальные поля по своему усмотрению.

Ниже приведены примеры ответов.

Shell
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


Установите права доступа для защиты закрытого ключа и сертификата.

Shell
chmod 600 /etc/apache2/ssl/*


Ваш сертификат и закрытый ключ, который его защищает, готовы для использования с Apache.

10.Настройка продукта для корректной работы в Chrome с SSL

При работе через SSL-соединение (HTTPS) браузер Chrome требует наличия флагов Secure и SameSite у cookie. Без этих флагов браузер не будет принимать куки, и вы не сможете авторизоваться в Пассворке в Chrome.

Для того чтобы установить эти флаги, включите параметр session.cookie_secure в файле /etc/php/7.3/apache2/php.ini:

Shell
session.cookie_secure = On


И установите параметр disableSameSiteCookie (секция [application])в файле /var/www/app/config/config.ini в значение Off.

Shell
disableSameSiteCookie = Off


💡 Не устанавливайте эти параметры или верните их в исходное значение, если вы передумаете использовать SSL и будете работать через HTTP-протокол

11. Настройка Apache для использования SSL-соединения

Откройте кофигурационный файл SSL в текстовом редакторе.

Shell
nano /etc/apache2/sites-enabled/default-ssl.conf


Найдите раздел, начинающийся с <VirtualHost _default_:443> и внесите следующие изменения.

  • Добавьте строку с директивой имени сервера под строкой ServerAdmin. Это может быть ваше доменное имя или IP-адрес:
Shell
ServerAdmin webmaster@localhost
ServerName passwork.local:443

  • Добавьте директиву “Directory” после “ServerName”.
Shell
<Directory /var/www/public>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

  • Найдите следующие две строки и обновите пути к файлам, соответствующие местоположению сертификата и ключа, которые мы создали ранее. Если вы приобрели сертификат или создали свой сертификат в другом месте, убедитесь, что путь к файлу соответствует фактическому местоположению вашего сертификата и ключа:
Shell
SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key


После внесения изменений проверьте, что ваш файл конфигурации виртуального хоста соответствует примеру ниже.

Shell
<IfModule mod_ssl.c>
    <VirtualHost _default_:443>
        ServerAdmin webmaster@localhost
        ServerName passwork.local:443
        DocumentRoot /var/www/public
        <Directory /var/www/public>
            Options Indexes 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>


Перезапустите Apache, чтобы изменения вступили в силу.

Shell
service apache2 restart


Проверьте SSL-соединение, откройте ссылку https://passwork.local.

Обновлено 22 Nov 2023
Помогла ли вам эта страница?
ПРЕДЫДУЩИЙ
Ubuntu
СЛЕДУЮЩИЙ
Ubuntu 18.04
Docs powered by Archbee
СОДЕРЖАНИЕ
Установка менеджера паролей в Ubuntu 20.04
1. Получение прав root и создание локальной базы данных пакетов.
2. Установка Git и Apache2
3. Установка MongoDB
4. Установка PHP 7
5. Установка PHP Mongo драйвера
6. Установка Phalcon PHP фреймворка
7. Загрузка и установка Passwork
8. Инсталляция
9**. Создание SSL сертификата**
10.Настройка продукта для корректной работы в Chrome с SSL
11. Настройка Apache для использования SSL-соединения
Docs powered by Archbee