Установка Bitwarden на Ubuntu 22.04
Что такое Bitwarden
Bitwarden — это бесплатный и открытый менеджер паролей, который хранит логины и пароли и синхронизирует их между устройствами. Поддерживает Linux, Windows и macOS, обеспечивает шифрование, двухфакторную аутентификацию, аудит паролей и мониторинг утечек. Можно хостить в облаке или локально.
Основные требования
- Сервер с Ubuntu 22.04.
- Настроен root-пароль или доступ через sudo.
Перед началом
Важно: выполните обновление системы и установите нужные зависимости.
Обновите пакеты:
apt update -y
apt upgrade -yУстановите зависимости:
apt install apt-transport-https ca-certificates curl software-properties-common -yДобавление репозитория Docker CE
Добавьте GPG-ключ Docker:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -Добавьте репозиторий Docker CE:
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu jammy stable"После добавления репозитория можно устанавливать Docker.
Установка Docker CE
Установите Docker CE:
apt install docker-ce -yПроверьте статус сервиса Docker:
systemctl status dockerПример вывода статуса (для справки):
? docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2022-08-28 05:52:18 UTC; 47s ago
TriggeredBy: ? docker.socket
Docs: https://docs.docker.com
Main PID: 2719 (dockerd)
Tasks: 7
Memory: 30.3M
CPU: 312ms
CGroup: /system.slice/docker.service
??2719 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.379341986Z" level=info msg="scheme \"unix\" not registered, fallback to d>
Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.379467088Z" level=info msg="ccResolverWrapper: sending update to cc: {[{u>
Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.379593467Z" level=info msg="ClientConn switching balancer to \"pick_first>
Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.427861369Z" level=info msg="Loading containers: start."
Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.620267088Z" level=info msg="Default bridge (docker0) is assigned with an >
Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.713742709Z" level=info msg="Loading containers: done."
Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.744925054Z" level=info msg="Docker daemon" commit=a89b842 graphdriver(s)=>
Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.745338168Z" level=info msg="Daemon has completed initialization"
Aug 28 05:52:18 ubuntu2204 systemd[1]: Started Docker Application Container Engine.
Aug 28 05:52:18 ubuntu2204 dockerd[2719]: time="2022-08-28T05:52:18.805663866Z" level=info msg="API listen on /run/docker.sock"Примечание: сообщения в выводе сервиса могут отличаться по версии Docker и окружению.
Установка Docker Compose
Скачайте бинарник docker-compose:
curl -sL "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composeДайте права на исполнение:
chmod +x /usr/local/bin/docker-composeПроверьте версию:
docker-compose --versionОжидаемый пример вывода:
docker-compose version 1.29.2, build 5becea4cСоздание пользователя для Bitwarden
Рекомендуется запускать Bitwarden от отдельного пользователя:
useradd -G docker,sudo -s /bin/bash -m -d /opt/bitwarden bitwardenЗадайте пароль для пользователя:
passwd bitwardenОжидаемый вывод процесса установки пароля:
New password:
Retype new password:
passwd: password updated successfullyСмените владельца директории:
chown -R bitwarden: /opt/bitwardenУстановка Bitwarden на Ubuntu 22.04
- Получите Installation ID и Installation Key на странице хостинга Bitwarden. Скриншот:

- Переключитесь на пользователя bitwarden и скачайте инсталлятор:
su - bitwarden
curl -Lso bitwarden.sh https://go.btwrdn.co/bw-sh- Сделайте скрипт исполняемым и запустите установку:
chmod +x bitwarden.sh
sudo ./bitwarden.sh installВо время установки вам предложат ввести домен или IP, данные SSL и имя базы данных. Пример диалога установки (фрагменты):
(!) Enter the domain name for your Bitwarden instance (ex. bitwarden.example.com): 208.117.81.243
(!) Do you want to use Let's Encrypt to generate a free SSL certificate? (y/n): n
(!) Enter the database name for your Bitwarden instance (ex. vault): bitwardenЗатем будет предложено ввести Installation ID и Installation Key полученные на сайте Bitwarden:
(!) Enter your installation id (get at https://bitwarden.com/host): c1908405-5beb-497f-9f09-aefe00f87c3f
(!) Enter your installation key: yQVH9PTcUIPftio0ZM8L
(!) Do you have a SSL certificate to use? (y/n): n
(!) Do you want to generate a self-signed SSL certificate? (y/n): yВажно: Bitwarden требует HTTPS для корректной работы веб-витрины и приложений. Если вы не используете сертификат от Let’s Encrypt или собственный, обязательно ставьте обратный HTTPS-прокси на фронт (Nginx, Traefik и т. п.).
После успешной установки вы увидите сообщения сборки и инструкции по дальнейшим шагам:
Installation complete
If you need to make additional configuration changes, you can modify
the settings in `./bwdata/config.yml` and then run:
`./bitwarden.sh rebuild` or `./bitwarden.sh update`
Next steps, run:
`./bitwarden.sh start`Запуск и проверка
Запустите Bitwarden:
sudo ./bitwarden.sh startПример фрагмента вывода при старте контейнеров (сокращённый):
Pulling mssql ... done
Pulling web ... done
Pulling attachments ... done
Pulling api ... done
Pulling identity ... done
...
Creating directory /opt/bitwarden/bwdata/core
Creating network "docker_default" with the default driver
Creating bitwarden-nginx ... done
...
Bitwarden is up and running!
===================================================
visit http://bitwarden.example.comПроверьте загруженные образы:
sudo docker imagesПример вывода образов:
REPOSITORY TAG IMAGE ID CREATED SIZE
bitwarden/mssql 2022.8.4 0fde97fd6c2b 11 days ago 1.4GB
bitwarden/setup 2022.8.4 c3f86466c311 11 days ago 271MB
...Проверьте запущенные контейнеры:
sudo docker psПример вывода запущенных контейнеров (сокращённый):
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9af240bb8845 bitwarden/nginx:2022.8.4 "/entrypoint.sh" 33 seconds ago Up 28 seconds (health: starting) 80/tcp, 0.0.0.0:80->8080/tcp, :::80->8080/tcp, 0.0.0.0:443->8443/tcp, :::443->8443/tcp bitwarden-nginx
...Доступ к веб-интерфейсу
Откройте в браузере URL https://your-server-ip или ваш домен. Вы должны увидеть страницу входа:

Нажмите кнопку Create Account (Создать аккаунт). На форме создания заполните Email и Master password:

После создания аккаунта войдите в систему через форму логина:

Доступ к панели управления Bitwarden:

Важные рекомендации
Важно: всегда используйте HTTPS для продакшен-инсталляции. Самоподписанный сертификат подходит только для тестов.
Примечание: храните Installation Key и Installation ID в защищённом месте — они нужны для обновлений и восстановления.
Планы и альтернативы
Если вы не хотите запускать весь стек на Docker, рассмотрите альтернативы:
- Использовать официальное облачное хостинг-решение Bitwarden (сервисный SaaS).
- Запуск через Podman/Podman-compose (требует адаптации compose-файлов).
- Использовать упрощённые self-host решения (например Vaultwarden — совместимый и легче по ресурсам форк на Rust).
Когда этот подход не подходит: если у вас ограниченные ресурсы сервера (<1 vCPU, <1–2 ГБ ОЗУ) или строгие требования к сертификации безопасности, рассмотрите управляемые сервисы.
Факты и ключевые номера
- Минимальные требования: Docker и docker-compose, свободное место для bwdata (рекомендуется >= 10 ГБ для начала).
- Примеры версий из установки: Docker 20.10.17, docker-compose 1.29.2, Bitwarden setup 2022.8.4.
- Образы Bitwarden могут занимать десятки сотен мегабайт каждый (в сумме порядка 1–2 ГБ и более).
Ментальные модели и heuristics
- Изолируйте Bitwarden от публичного доступа на уровне брандмауэра и используйте прокси с HTTPS.
- Регулярно делайте бэкапы директории /opt/bitwarden/bwdata (особенно mssql/backups и config.yml).
- Тестируйте обновления в staging перед production.
Роли и чек‑листы
Системный администратор:
- Убедиться в обновлении сервера и установленных зависимостях.
- Настроить firewall и резервное копирование bwdata.
- Настроить HTTPS (Let’s Encrypt или собственный сертификат).
DevOps-инженер:
- Автоматизировать обновления Docker и backup.
- Настроить мониторинг контейнеров (healthchecks, экспорт метрик).
Офицер по безопасности:
- Проверить политики паролей и 2FA.
- Провести аудит доступа к ключам установки.
Пользователь (конечный):
- Записать мастер-пароль в надежном месте.
- Включить 2FA для аккаунта.
SOP — пошаговый план установки (кратко)
- Обновить систему: apt update && apt upgrade.
- Установить зависимости (apt-transport-https, curl и т.д.).
- Добавить GPG-ключ и репозиторий Docker.
- Установить docker-ce и docker-compose; проверить версии.
- Создать пользователя bitwarden и подготовить /opt/bitwarden.
- Скачать bitwarden.sh, запустить install, ввести Installation ID/Key.
- Проверить логи, запустить ./bitwarden.sh start.
- Настроить HTTPS и firewall.
- Настроить резервное копирование bwdata.
Руководство по устранению неполадок (runbook)
Проблема: контейнеры не стартуют
- Шаг 1: смотреть логи: sudo docker ps -a; sudo docker logs
- Шаг 2: проверить свободное место: df -h
- Шаг 3: проверить корректность конфигурации bwdata/config.yml
- Шаг 4: запустить ./bitwarden.sh rebuild и ./bitwarden.sh start
Проблема: веб-интерфейс не доступен по HTTPS
- Проверьте проброс портов nginx (0.0.0.0:443->8443).
- Убедитесь, что сертификаты есть в ./bwdata/ssl и правильно указаны в конфиге.
- Для Let’s Encrypt проверьте доступность ACME challenge по HTTP.
Проблема: проблемы с базой данных
- Проверьте контейнер bitwarden-mssql и его логи.
- Убедитесь, что права на каталоги bwdata/mssql корректные.
Критерии приёмки
- Все сервисы запущены и имеют статус Up в sudo docker ps.
- Доступ к веб-интерфейсу по HTTPS и возможность создать аккаунт.
- Выполнен бэкап директории /opt/bitwarden/bwdata.
Короткий глоссарий (1 строка)
- bwdata — рабочая директория Bitwarden с конфигурацией, базой данных и логами.
- Installation ID/Key — пара ключей, получаемых на сайте Bitwarden для self-host.
Итог
Вы установили Bitwarden на Ubuntu 22.04 с использованием Docker и docker-compose, создали пользователя, получили Installation ID/Key и запустили сервис. Следующий шаг — настроить HTTPS с действительным сертификатом и организовать резервное копирование.
Если нужна помощь с конкретной ошибкой — пришлите вывод sudo docker ps, логи проблемного контейнера и содержимое ./bwdata/logs.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента