Гид по технологиям

Установка Bitwarden на Ubuntu 22.04

5 min read DevOps Обновлено 27 Nov 2025
Установка Bitwarden на Ubuntu 22.04
Установка 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

  1. Получите Installation ID и Installation Key на странице хостинга Bitwarden. Скриншот:

Страница получения Host ID для Bitwarden

  1. Переключитесь на пользователя bitwarden и скачайте инсталлятор:
su - bitwarden  
curl -Lso bitwarden.sh https://go.btwrdn.co/bw-sh
  1. Сделайте скрипт исполняемым и запустите установку:
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 или ваш домен. Вы должны увидеть страницу входа:

Страница входа в Bitwarden

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

Форма создания аккаунта Bitwarden

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

Поле мастер-пароля Bitwarden

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

Панель управления 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 — пошаговый план установки (кратко)

  1. Обновить систему: apt update && apt upgrade.
  2. Установить зависимости (apt-transport-https, curl и т.д.).
  3. Добавить GPG-ключ и репозиторий Docker.
  4. Установить docker-ce и docker-compose; проверить версии.
  5. Создать пользователя bitwarden и подготовить /opt/bitwarden.
  6. Скачать bitwarden.sh, запустить install, ввести Installation ID/Key.
  7. Проверить логи, запустить ./bitwarden.sh start.
  8. Настроить HTTPS и firewall.
  9. Настроить резервное копирование 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.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро