Установка Passbolt на AlmaLinux 9 с MariaDB и Nginx
Важно: храните файл восстановления GPG и секретную фразу в надёжном месте. Без них восстановление доступа к ключам будет невозможно.
О чём этот документ
Это пошаговая инструкция по развертыванию Passbolt CE (Community Edition) на AlmaLinux 9. Подойдёт для небольших команд и личного использования. Покрывается установка репозитория, настройка MariaDB, SSL, Nginx и базовая конфигурация Passbolt. В дополнение — чеклист безопасности, планы отката и советы по обслуживанию.
Ключевые термины (1‑строчные определения)
- Passbolt — менеджер паролей с открытым исходным кодом, ориентирован на команды.
- OpenPGP — стандарт для шифрования и подписывания данных.
- GnuPG / GPG — реализация OpenPGP для управления ключами.
- PHP‑FPM — обработчик PHP‑процессов для Nginx.
Требования
- Сервер с AlmaLinux 9 (в примерах используется хостнейм almalinux9).
- Пользователь с правами sudo.
- Домен, указывающий на IP сервера.
- SSL сертификаты либо возможность получения через Let’s Encrypt/Certbot.
- Доступ в интернет для загрузки пакетов.
Подготовка репозитория Passbolt
Passbolt распространяется через репозиторий поставщика. На сервере установите wget и добавьте репозиторий.
Сначала установите wget:
sudo dnf install wget -y
Скачайте скрипт настройки репозитория и файл SHA512SUM:
wget https://download.passbolt.com/ce/installer/passbolt-repo-setup.ce.sh
wget https://github.com/passbolt/passbolt-dep-scripts/releases/latest/download/passbolt-ce-SHA512SUM.txtПроверьте контрольную сумму и выполните скрипт установки репозитория:
sudo export LC_ALL=en_EN.UTF-8
sha512sum -c passbolt-ce-SHA512SUM.txt && sudo bash ./passbolt-repo-setup.ce.sh || echo "Bad checksum. Aborting" && rm -f passbolt-repo-setup.ce.shЕсли контрольная сумма верна и скрипт выполнен, вы увидите подтверждение добавления репозитория:

Совет: если вы работаете в изолированной сети, сохраните скрипт и пакеты локально и проверьте их контрольные суммы заранее.
Установка Passbolt CE
Установите основной пакет Passbolt CE:
sudo dnf install passbolt-ce-serverПодтвердите установку, согласившись с зависимостями и ключами GPG репозиториев.

После установки запустите утилиту конфигурации:
sudo /usr/local/bin/passbolt-configureУстановка предложит добавить GPG‑ключы и запустить мастер конфигурации.

Настройка MariaDB
В мастере выберите установку MariaDB (в мастере это обычно предлагается автоматом). Введите:
- Подтверждение установки MariaDB.
- Пароль root для MariaDB.
- Имя пользователя для Passbolt (например, passbolt).
- Пароль для пользователя passbolt.
- Имя базы данных (например, passbolt).
Пример ввода в мастере и создание базы данных:

Важно: запишите пароли и храните их в менеджере секретов или в защищённом файле конфигурации.
Ускорение генерации ключей
Мастер предложит установить haveged для улучшения генерации случайных чисел при создании GPG‑ключей и SSL‑сертификатов. Рекомендуется согласиться:

Настройка домена и SSL
Укажите домен установки Passbolt (в примере используется pb.howtoforge.local):

Выберите метод установки SSL. В мастере доступны ручной режим и автоматический (Let’s Encrypt). В этом примере используется ручной режим — укажите пути к файлам сертификата и приватного ключа:
- Выберите метод 1 для ручной конфигурации.
- Укажите полный путь к публичному сертификату.
- Укажите полный путь к приватному ключу.

Если вы предпочитаете автоматическую установку через Let’s Encrypt, убедитесь, что DNS коррелирует с доменом и порт 80 открыт.
Пример развёртывания MariaDB
Процесс установки MariaDB будет показан в выводе мастера:

После завершения конфигурации вы увидите сообщение об успешной настройке Passbolt.
Проверка сервисов и настройка брандмауэра
Убедитесь, что сервисы включены в автозапуск:
sudo systemctl is-enabled mariadb
sudo systemctl is-enabled php-fpm
sudo systemctl is-enabled nginxПроверьте правила firewalld, чтобы убедиться, что открыты HTTP и HTTPS:
sudo firewall-cmd --list-all
Если HTTP и HTTPS отсутствуют, добавьте их:
sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reloadПроверьте состояние сервисов:
sudo systemctl status mariadb nginx php-fpmОжидаемый результат — all services active (running).

Если какой‑то сервис не запущен, просмотрите журналы через journalctl, например:
sudo journalctl -u nginx -b --no-pager | tail -n 200Настройка Passbolt со стороны клиента
- На рабочей машине установите расширение Passbolt для браузера.
- Passbolt для Firefox.
- Passbolt для Google Chrome/Chromium.
- Откройте URL установки, например https://pb.howtoforge.local/.
- Нажмите Get Started и следуйте мастеру на веб‑интерфейсе.

Мастер проверит окружение. Дождитесь зелёных чеков и нажмите Start Configuration.

Далее введите параметры доступа к базе данных (host, database, username, password). В примере всё на localhost и база passbolt.

Укажите серверное имя, email администратора для создания GPG‑ключа и SMTP параметры (можно настроить SMTP позже).


Создайте администратора: фамилия, имя, email.

Во время установки веб‑мастер создаст локальный GPG‑ключ для администратора. Вам будет предложено задать секретную фразу (passphrase) для ключа — запомните её.

Файл recovery kit (passbolt-recovery-kit) автоматически загрузится на рабочую машину. Это крайне важный файл, содержащий приватный ключ для восстановления.

Вы также сможете привязать аппаратный токен (YubiKey и т.п.) для дополнительной защиты сессии.

После завершения установки откроется дашборд Passbolt.

Проверки после установки
Короткая проверка работоспособности:
- Веб‑интерфейс доступен по HTTPS.
- Вход администратора проходит, расширение браузера подключается.
- SMTP отправляет тестовые письма (если настроено).
- База данных на месте и таблицы заполнены.
Команды для проверки в терминале:
# Проверить слушающие порты
sudo ss -tulpen | grep -E ":80|:443"
# Журнал Passbolt (может быть в /var/log/passbolt или через systemd)
sudo journalctl -u nginx -u php-fpm --no-pager | tail -n 200Безопасность и эксплуатация (рекомендации)
Резервные копии
- Делайте регулярные бэкапы базы данных: mysqldump или физическое копирование . InnoDB таблиц.
- Сохраняйте файлы конфигурации Nginx, php‑fpm и /etc/passbolt.
- Храните копии recovery kit в отдельном, зашифрованном хранилище.
Обновления
- Поддерживайте систему и Passbolt в актуальном состоянии: sudo dnf update.
- Тестируйте обновления в staging среде при возможности.
Сертификаты и HTTPS
- Автоматизируйте обновление сертификатов (если Let’s Encrypt — настройте certbot renew).
- Принудительно перенаправляйте HTTP на HTTPS.
Журналирование и мониторинг
- Собирайте логи Nginx, PHP‑FPM и MariaDB.
- Настройте алерты на недоступность сервиса и высокий ресурс использования.
Привилегии
- Не запускайте веб‑сервер под root.
- Минимизируйте права пользователя базы данных passbolt к необходимым.
Хранение ключей
- Никогда не храните приватный ключ в незашифрованном виде на рабочей станции.
- Настройте двухфакторную аутентификацию для администраторов (если доступно).
Резервное восстановление и план отката
Минимальный набор для восстановления сервиса:
- Дамп базы данных (полный экспорт).
- Копии каталога /var/www/passbolt (или где установлен Passbolt).
- Конфигурационные файлы /etc/nginx, /etc/php-fpm.d, /etc/passbolt.
- Файлы SSL и private key.
- Recovery kit и секретная фраза администратора.
Процедура восстановления — кратко:
- Развернуть AlmaLinux 9 на новом или восстановленном хосте.
- Установить Passbolt по инструкции (или восстановить пакеты).
- Восстановить сертификаты, конфигурации и файлы веб‑приложения.
- Восстановить базу данных через mysql import.
- Импортировать recovery kit и восстановить GPG‑ключи, установить пароли.
Критерии приёмки
- Веб‑интерфейс возвращает 200 по HTTPS.
- Вход администратора и создание сущности пароля проходит успешно.
- Расширение браузера подключается и может шифровать/дешифровать элементы.
Чеклист ролей
Администратор:
- Проверить доступность сервиса после обновления.
- Проверить бэкапы и их целостность.
- Управлять пользователями и правами.
Оператор (SRE):
- Следить за журналами и алертами.
- Контролировать состояние служб и дисков.
- Восстанавливать из бэкапа при необходимости.
Обычный пользователь:
- Установить расширение браузера.
- Сохранить recovery kit и секретную фразу в безопасном месте.
- Не делиться приватной частью ключа.
Отладка типичных ошибок
Проблема: Невозможно подключиться по HTTPS
- Проверьте сертификаты и путь к ним в конфигурации Nginx.
- Убедитесь, что DNS указывает на сервер и порт 443 открыт.
Проблема: Passbolt не может подключиться к базе
- Проверьте параметры в config.php (или в интерфейсе мастера).
- Убедитесь, что MariaDB запущен и слушает на localhost.
- Проверьте права пользователя на базе данных.
Проблема: Расширение не видит ключи
- Убедитесь, что в браузере установлен и активирован Passbolt extension.
- Проверьте, что GPG‑ключ был корректно сгенерирован и связана правильная учётная запись.
Альтернативные подходы
- Контейнеры: можно развернуть Passbolt в Docker‑контейнере или Kubernetes. Это упрощает изоляцию и масштабирование.
- Управляемые базы: использовать отдельный MariaDB/MariaDB Galera на другом хосте для отказоустойчивости.
- Автоматические сертификаты: использовать Certbot + nginx plugin для автоматизации TLS.
Совместимость и миграция
- Passbolt требует PHP и GnuPG; версии проверяйте в документации к релизу.
- При миграции с другой ОС проверьте пути к конфигурам и права на файлы.
- Для крупных инсталляций рекомендуется staging‑среда для тестирования миграций.
Малое руководство по безопасности (сводка)
- Ограничьте доступ к базе данных по сети (localhost или приватная сеть).
- Используйте HSTS и современные cipher suites.
- Регулярно обновляйте систему и Passbolt.
- Защитите recovery kit: офлайн‑копия в сейфе или HSM/опечатанный носитель.
Краткое руководство для проверки после апгрейда
- Выполнить sudo dnf update на тестовом сервере.
- Перезапустить службы: sudo systemctl restart php-fpm nginx mariadb.
- Прогнать Smoke тест: зайти в UI, создать тестовую запись, расшарить её пользователю.
- Проверить лог ошибок Nginx, PHP и MariaDB.
Заключение
Вы выполнили полную установку Passbolt CE на AlmaLinux 9 с MariaDB и Nginx. После первичной настройки обязательно сохраните recovery kit и секретную фразу в безопасном месте, настроьте регулярные бэкапы и мониторинг. Для продакшен‑сценариев дополнительно настройте резервирование MariaDB и автоматическое обновление TLS.
Краткие рекомендации:
- Храните ключи и бэкапы отдельно от сервера.
- Тестируйте процессы восстановления регулярно.
- Рассмотрите контейнеризацию для упрощения обновлений и масштабирования.
Дополнения
1‑строчный глоссарий:
- GPG — инструмент управления OpenPGP ключами.
Примеры тестов приёмки:
- UI доступен по HTTPS и отображает панель администратора.
- Создание пароля, шифрование и расшифровка работают через расширение браузера.
Небольшой шаблон SOP для обновления Passbolt:
- Снять бэкап базы данных и файлов.
- Обновить в тестовой среде.
- Прогони тесты приёмки.
- Обновить продакшен в окне обслуживания.
- Мониторить логи и откатить при критичных ошибках.
Примечание: все команды в статье предполагают, что вы выполняете их от имени пользователя с правами sudo.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента