Менеджер паролей · 12 min read · Jan 12, 2026
Установка и настройка менеджера паролей Passbolt Team на Ubuntu 20.04

Passbolt — это бесплатный, с открытым исходным кодом, саморазмещаемый и расширяемый менеджер паролей, который помогает вам безопасно делиться и хранить учетные данные для входа, такие как пароль от маршрутизатора, веб-сайта, Wi-Fi и многое другое. Он отличается от других менеджеров паролей. Он ориентирован на командное использование, а не на индивидуальное. Доступен как в бесплатной, так и в платной версиях. Он предлагает множество функций, некоторые из которых перечислены ниже:
- Предоставляет расширения для Firefox и Google Chrome.
- Использует OpenPGP для шифрования паролей.
- Простой и удобный веб-интерфейс.
- Позволяет импортировать и экспортировать пароли.
- Позволяет добавлять учетные данные для входа вручную.
В этом руководстве мы объясним, как установить менеджер паролей Passbolt с Apache и Let’s Encrypt на Ubuntu 20.04.
Предварительные требования
- Сервер с установленной Ubuntu 20.04.
- Действительное доменное имя, указывающее на IP-адрес вашего сервера.
- Настроенный root пароль на сервере.
Установка LAMP сервера
Сначала вам нужно установить сервер Apache и MariaDB в вашу систему. Вы можете установить их с помощью следующей команды:
apt-get install apache2 mariadb-server -yПосле установки вышеуказанных пакетов вам также нужно будет установить PHP и другие необходимые пакеты в вашу систему.
По умолчанию Ubuntu 20.04 поставляется с PHP7.4 в своем стандартном репозитории. Однако Passbolt не поддерживает PHP7.4. Поэтому вам нужно будет добавить репозиторий PHP в вашу систему.
Сначала установите необходимые пакеты с помощью следующей команды:
apt-get install software-properties-common gnupg -yЗатем добавьте репозиторий PHP с помощью следующей команды:
add-apt-repository ppa:ondrej/php --yesДалее установите версию PHP 7.3 с Composer и другими необходимыми расширениями с помощью следующей команды:
apt-get install php7.3 php7.3-mysql libapache2-mod-php7.3 php7.3-intl php7.3-mbstring php7.3-gd php7.3-imagick php7.3-xml php7.3-common php7.3-curl php7.3-json php7.3-ldap php7.3-gnupg zlib1g unzip git composer curl -yПосле установки всех пакетов вы можете перейти к следующему шагу.
Настройка базы данных MariaDB
Сначала вам нужно будет обеспечить безопасность установки MariaDB и установить root пароль для MariaDB. Вы можете сделать это с помощью следующей команды:
mysql_secure_installationЭтот скрипт установит root пароль для MariaDB, удалит анонимных пользователей, запретит удаленный вход root и удалит тестовую базу данных и доступ к ней, как показано ниже:
Введите текущий пароль для root (нажмите Enter, если нет):
OK, успешно использован пароль, продолжаем...
Установить пароль root? [Y/n] Y
Удалить анонимных пользователей? [Y/n] Y
Запретить удаленный вход root? [Y/n] Y
Удалить тестовую базу данных и доступ к ней? [Y/n] Y
Перезагрузить таблицы привилегий сейчас? [Y/n] Y
После обеспечения безопасности MariaDB войдите в оболочку MariaDB с помощью следующей команды:
mysql -u root -pВведите ваш root пароль, когда будет предложено, затем создайте базу данных и пользователя для Passbolt с помощью следующей команды:
MariaDB [(none)]> CREATE DATABASE passboltdb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
MariaDB [(none)]> GRANT ALL on passboltdb.* to passbolt@localhost identified by 'password';Далее сбросьте привилегии и выйдите из MariaDB с помощью следующей команды:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;Когда вы закончите, вы можете перейти к следующему шагу.
Загрузка и настройка Passbolt
В этом разделе мы узнаем, как загрузить и настроить Passbolt:
Загрузка Passbolt
Сначала загрузите последнюю версию Passbolt в корневой каталог веб-сервера Apache с помощью следующей команды:
mkdir /var/www/passbolt
git clone https://github.com/passbolt/passbolt_api.git /var/www/passboltПосле загрузки измените владельца Passbolt на www-data с помощью следующей команды:
chown -R www-data:www-data /var/www/Далее перейдите в каталог Passbolt и установите необходимые зависимости с помощью следующей команды:
cd /var/www/passbolt
sudo -u www-data composer install --no-devВы должны получить следующий вывод:
> Cake\Composer\Installer\PluginInstaller::postAutoloadDump
9 пакетов, которые вы используете, ищут финансирование.
Используйте команду `composer fund`, чтобы узнать больше!
thadafinser/package-info: Генерация класса...
thadafinser/package-info: ...генерация класса
> App\Console\Installer::postInstall
Создан файл `config/app.php`
Создан каталог `/var/www/passbolt/logs`
Создан каталог `/var/www/passbolt/tmp/cache/models`
Создан каталог `/var/www/passbolt/tmp/cache/persistent`
Создан каталог `/var/www/passbolt/tmp/cache/views`
Создан каталог `/var/www/passbolt/tmp/sessions`
Создан каталог `/var/www/passbolt/tmp/tests`
Установить права доступа к папкам? (По умолчанию Y) [Y,n]? Y
Наберите Y и нажмите Enter, чтобы установить права доступа к папкам.
Генерация OpenPGP ключа
Далее вам нужно будет сгенерировать OpenPGP ключ для аутентификации и подписи исходящих JSON запросов. Вы можете сгенерировать его с помощью следующей команды:
cd /var/www/passbolt
gpg --full-generate-keyВ процессе вас попросят ввести пароль, просто нажмите клавишу Tab, выберите OK и подтвердите, что вы не хотите его устанавливать, так как модуль php-gnupg в данный момент не поддерживает использование пароля.
gpg (GnuPG) 2.2.19; Copyright (C) 2019 Free Software Foundation, Inc.
Это бесплатное программное обеспечение: вы можете изменять и распространять его.
Гарантии НЕТ, в пределах, разрешенных законом.
gpg: каталог '/root/.gnupg' создан
gpg: ключевое хранилище '/root/.gnupg/pubring.kbx' создано
Пожалуйста, выберите, какой ключ вы хотите:
(1) RSA и RSA (по умолчанию)
(2) DSA и Elgamal
(3) DSA (только подпись)
(4) RSA (только подпись)
(14) Существующий ключ с карты
Ваш выбор? 1
RSA ключи могут быть длиной от 1024 до 4096 бит.
Какой размер ключа вы хотите? (3072) 4096
Запрашиваемый размер ключа составляет 4096 бит
Пожалуйста, укажите, как долго ключ должен быть действителен.
0 = ключ не истекает
= ключ истекает через n дней
w = ключ истекает через n недель
m = ключ истекает через n месяцев
y = ключ истекает через n лет
Ключ действителен в течение? (0) 0
Ключ вообще не истекает
Это правильно? (y/N) y
GnuPG должен создать идентификатор пользователя, чтобы идентифицировать ваш ключ.
Настоящее имя: Hitesh
Адрес электронной почты: [email protected]
Комментарий: Привет
Вы выбрали этот ИДЕНТИФИКАТОР ПОЛЬЗОВАТЕЛЯ:
"Hitesh (Привет) <[email protected]>"
Изменить (N) имя, (C) комментарий, (E) электронную почту или (O) Класс/(Q) Выйти? O
Нам нужно сгенерировать много случайных байтов. Хорошая идея — выполнить
действие (нажать на клавиатуре, двигать мышью, использовать
диски) во время генерации простых чисел; это дает генератору случайных чисел лучший шанс получить достаточную энтропию.
Нам нужно сгенерировать много случайных байтов. Хорошая идея — выполнить
действие (нажать на клавиатуре, двигать мышью, использовать
диски) во время генерации простых чисел; это дает генератору случайных чисел лучший шанс получить достаточную энтропию.
gpg: /root/.gnupg/trustdb.gpg: trustdb создан
gpg: ключ 2DA8E7FB8E23B2FD помечен как окончательно доверенный
gpg: каталог '/root/.gnupg/openpgp-revocs.d' создан
gpg: сертификат отзыва сохранен как '/root/.gnupg/openpgp-revocs.d/9622291A72D99A4EC78ABCB92DA8E7FB8E23B2FD.rev'
публичный и секретный ключ созданы и подписаны.
pub rsa4096 2020-07-25 [SC]
D2394A45B7CBBAB7F00CC79B23D4750486780854
uid Hitesh (Привет) <[email protected]>
sub rsa4096 2020-07-25 [E]
Пожалуйста, запомните отпечаток вышеуказанного публичного ключа, так как он будет нужен позже в настройке.
Далее экспортируйте публичный и приватный ключ в каталог ‘/var/www/passbolt’ с помощью следующих команд:
gpg --armor --export-secret-keys [email protected] > /var/www/passbolt/config/gpg/serverkey_private.asc
gpg --armor --export [email protected] > /var/www/passbolt/config/gpg/serverkey.ascДалее вам нужно будет инициализировать ключевое хранилище gpg для пользователя Apache. Вы можете сделать это с помощью следующей команды:
sudo su -s /bin/bash -c "gpg --list-keys" www-dataВы должны получить следующий вывод:
gpg: каталог '/var/www/.gnupg' создан
gpg: ключевое хранилище '/var/www/.gnupg/pubring.kbx' создано
gpg: /var/www/.gnupg/trustdb.gpg: trustdb создан
Настройка Passbolt
Сначала скопируйте образец конфигурационного файла Passbolt с помощью следующей команды:
cp /var/www/passbolt/config/passbolt{.default,}.phpДалее отредактируйте конфигурационный файл Passbolt с помощью следующей команды:
nano /var/www/passbolt/config/passbolt.phpОпределите ваш fullbaseurl, базу данных и отпечаток публичного ключа, как показано ниже:
'fullBaseUrl' => 'https://passbolt.linuxbuz.com',
// Конфигурация базы данных.
'Datasources' => [
'default' => [
'host' => 'localhost',
//'port' => 'non_standard_port_number',
'username' => 'passbolt',
'password' => 'password',
'database' => 'passboltdb',
'serverKey' => [
// Отпечаток приватного ключа сервера.
'fingerprint' => 'D2394A45B7CBBAB7F00CC79B23D4750486780854',
'public' => CONFIG . 'gpg' . DS . 'serverkey.asc',
'private' => CONFIG . 'gpg' . DS . 'serverkey_private.asc',
Сохраните и закройте файл, когда закончите.
Если вы не помните отпечаток вашего публичного ключа, вы можете получить его с помощью следующей команды:
gpg --list-keys --fingerprint | grep -i -B 2 [email protected]Вы должны получить следующий вывод:
gpg: проверка trustdb
gpg: маргинальные нужны: 3 завершения нужны: 1 модель доверия: pgp
gpg: глубина: 0 действителен: 1 подписан: 0 доверие: 0-, 0q, 0n, 0m, 0f, 1u
pub rsa4096 2020-07-25 [SC]
D239 4A45 B7CB BAB7 F00C C79B 23D4 7504 8678 0854
uid [ultimate] Hitesh (Привет) <[email protected]>
Настройка Apache для Passbolt
Далее вам нужно будет создать файл конфигурации виртуального хоста Apache для Passbolt. Вы можете создать его с помощью следующей команды:
nano /etc/apache2/sites-available/passbolt.confДобавьте следующие строки:
ServerName passbolt.linuxbuz.com
DocumentRoot /var/www/passbolt
ErrorLog ${APACHE_LOG_DIR}/passbolt_error.log
CustomLog ${APACHE_LOG_DIR}/passbolt_access.log combined
Options FollowSymLinks MultiViews
AllowOverride All
Require all granted
Сохраните и закройте файл, затем активируйте файл виртуального хоста и перезапустите службу Apache с помощью следующей команды:
a2ensite passbolt
systemctl restart apache2Когда вы закончите, вы можете перейти к следующему шагу.
Защита Passbolt с помощью Let’s Encrypt
Чтобы защитить ваш веб-сайт с помощью SSL Let’s Encrypt, вам нужно будет установить клиентскую утилиту Certbot в вашу систему для управления SSL сертификатом.
Вы можете установить его с помощью следующей команды:
apt-get install python3-certbot-apache -yПосле установки выполните следующую команду, чтобы защитить ваш веб-сайт с помощью SSL Let’s Encrypt:
certbot --apache -d passbolt.linuxbuz.comВам будет предложено ввести вашу электронную почту и принять условия обслуживания, как показано ниже:
Сохранение журнала отладки в /var/log/letsencrypt/letsencrypt.log
Выбранные плагины: Аутентификатор автономный, Установщик отсутствует
Введите адрес электронной почты (используется для срочного продления и уведомлений о безопасности) (Введите 'c' для
отмены): [email protected]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Пожалуйста, прочитайте Условия обслуживания по адресу
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. Вы должны
согласиться, чтобы зарегистрироваться на сервере ACME по адресу
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A) согласен/(C) отменить: A
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Вы бы хотели поделиться своим адресом электронной почты с Electronic Frontier
Foundation, учредительным партнером проекта Let's Encrypt и некоммерческой
организацией, которая разрабатывает Certbot? Мы хотели бы отправить вам электронное письмо о нашей работе
по шифрованию веба, новостях EFF, кампаниях и способах поддержки цифровой свободы.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y) да/(N) нет: Y
Выбранные плагины: Аутентификатор apache, Установщик apache
Получение нового сертификата
Выполнение следующих задач:
http-01 задача для passbolt.linuxbuz.com
Включен модуль переопределения Apache
Ожидание проверки...
Очистка задач
Создан SSL vhost в /etc/apache2/sites-available/passbolt-le-ssl.conf
Включен модуль socache_shmcb Apache
Включен модуль ssl Apache
Развертывание сертификата в VirtualHost /etc/apache2/sites-available/passbolt-le-ssl.conf
Включение доступного сайта: /etc/apache2/sites-available/passbolt-le-ssl.conf
Далее выберите, хотите ли вы перенаправить HTTP-трафик на HTTPS, как показано ниже:
Пожалуйста, выберите, хотите ли вы перенаправить HTTP-трафик на HTTPS, удалив доступ по HTTP.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: Нет перенаправления - Не вносить дальнейшие изменения в конфигурацию веб-сервера.
2: Перенаправить - Все запросы перенаправляются на безопасный доступ HTTPS. Выберите это для
новых сайтов или если вы уверены, что ваш сайт работает на HTTPS. Вы можете отменить это
изменение, отредактировав конфигурацию вашего веб-сервера.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Выберите соответствующий номер [1-2], затем [введите] (нажмите 'c' для отмены): 2
Наберите 2 и нажмите Enter, чтобы установить SSL Let’s Encrypt для вашего веб-сайта:
Включен модуль переопределения Apache
Перенаправление vhost в /etc/apache2/sites-enabled/passbolt.conf на ssl vhost в /etc/apache2/sites-available/passbolt-le-ssl.conf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Поздравляем! Вы успешно включили https://passbolt.linuxbuz.com
Вы должны протестировать вашу конфигурацию на:
https://www.ssllabs.com/ssltest/analyze.html?d=passbolt.linuxbuz.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ВАЖНЫЕ ЗАМЕТКИ:
- Поздравляем! Ваш сертификат и цепочка были сохранены по адресу:
/etc/letsencrypt/live/passbolt.linuxbuz.com/fullchain.pem
Ваш файл ключа был сохранен по адресу:
/etc/letsencrypt/live/passbolt.linuxbuz.com/privkey.pem
Ваш сертификат истечет 2020-10-23. Чтобы получить новый или измененный
вариант этого сертификата в будущем, просто запустите certbot снова
с опцией "certonly". Чтобы не взаимодействовать и продлить *все*
ваши сертификаты, выполните "certbot renew"
- Если вам нравится Certbot, пожалуйста, подумайте о поддержке нашей работы:
Пожертвование ISRG / Let's Encrypt: https://letsencrypt.org/donate
Пожертвование EFF: https://eff.org/donate-le
На этом этапе ваш веб-сайт защищен с помощью SSL Let’s Encrypt.
Установка Passbolt
Далее вы можете установить Passbolt, запустив скрипт установки Passbolt.
Сначала перейдите в каталог /var/www/passbolt:
cd /var/www/passboltДалее запустите скрипт установки Passbolt с помощью следующей команды:
sudo su -s /bin/bash -c "./bin/cake passbolt install --no-admin" www-dataПосле успешного завершения установки вы должны получить следующий вывод:
Все готово. Заняло 1.6533s
Импортируйте приватный ключ сервера в ключевое хранилище
---------------------------------------------------------------
Импортирование /var/www/passbolt/config/gpg/serverkey_private.asc
Инициализация ключевого хранилища OK
Установка Passbolt прошла успешно! Наслаждайтесь! ?
Далее вам нужно будет завершить настройку Passbolt через браузер. Откройте ваш веб-браузер и перейдите по адресу https://passbolt.linuxbuz.com. Вы должны увидеть следующий экран: 
Здесь вам нужно будет загрузить и установить плагин для вашего браузера. Нажмите на Скачать плагин, чтобы загрузить и установить плагин Passbolt. После установки вы можете перейти к следующему шагу.
Доступ к веб-интерфейсу Passbolt
Перед началом вам нужно будет создать администратора и установить пароль для Passbolt. Вы можете сделать это с помощью следующей команды:
cd /var/www/passbolt
sudo su -s /bin/bash -c "./bin/cake passbolt register_user -u [email protected] -f howtoforge -l Demo -r admin" www-dataВы должны получить следующий вывод:
____ __ ____
/ __ \____ _____ ____/ /_ ____ / / /_
/ /_/ / __ \/ ___/ ___/ __ \/ __ \/ / __/
/ ____/ /_/ (__ |__ ) /_/ / /_/ / / /
/_/ \__,_/____/____/_.___/\____/_/\__/
Менеджер паролей с открытым исходным кодом для команд
---------------------------------------------------------------
Пользователь успешно сохранен.
Чтобы начать регистрацию, перейдите по ссылке, указанной в вашем почтовом ящике или здесь:
https://passbolt.linuxbuz.com/setup/install/5bcfb186-3d9f-448f-8388-f705abd855c8/a2ba80dc-5ef2-433a-9138-11282747b377
Теперь скопируйте ссылку из вышеуказанного вывода и используйте ее, чтобы завершить настройку Passbolt в браузере. Вы должны увидеть следующий экран: 
Подтвердите, что URL и отпечаток GPG ключа верны, и нажмите кнопку Далее. Вы должны увидеть следующий экран: 
Укажите имя владельца, электронную почту и нажмите кнопку Далее. Вы должны увидеть следующий экран: 
Установите ваш пароль и нажмите кнопку Далее. Вы должны увидеть следующий экран: 
Скачайте ваш секретный ключ и нажмите кнопку Далее. Вы должны увидеть следующий экран: 
Установите токен безопасности и нажмите кнопку Далее. Вы должны увидеть следующий экран: 
Введите ваше имя пользователя, пароль и нажмите кнопку войти. Вы должны увидеть панель управления Passbolt на следующем экране: 
Заключение
Поздравляем! вы успешно установили менеджер паролей Passbolt с SSL Let’s Encrypt на сервере Ubuntu 20.04. Теперь вы можете хранить и делиться своими паролями с вашими командами и отдельными пользователями. Не стесняйтесь задавать мне вопросы, если у вас есть какие-либо.
Get new posts in your inbox
No spam. Unsubscribe anytime.