Установка и настройка self-hosted Bitwarden

Если вы ищете надёжный способ хранить пароли не на чьём-то чужом сервере, а у себя - этот гайд поможет вам быстро всё запустить.

Подготовка Linux-сервера

Установка Docker из репозитория

root@V-Dockers-1:~# apt-get -y install ca-certificates curl gnupg lsb-release
root@V-Dockers-1:~# mkdir -p /etc/apt/keyrings
root@V-Dockers-1:~# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
root@V-Dockers-1:~# echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
root@V-Dockers-1:~# apt-get -y update
root@V-Dockers-1:~# apt-get -y install docker-ce docker-ce-cli containerd.io docker-compose-plugin

Создание сервисного аккаунта для Bitwarden

root@V-Dockers-1:~# adduser bitwarden --no-create-home --ingroup docker

Создание учётной записи и организации в Bitwarden

Этот шаг нужен для получения лицензии.

  • Перейдите по адресу: https://vault.bitwarden.com/#/login
  • Введите свой email и нажмите «Create account»
  • Пройдите стандартную процедуру создания аккаунта
  • После этого создайте новую организацию (какую лицензию выбрать - решайте сами. Если вам важно SSO, он идёт только с Enterprise-лицензией, но не думаю что дома вам прям очень нужен Enterprise).
  • Запросите Installation ID и Key на странице https://bitwarden.com/host/Обязательно сохраните их - они понадобятся вам ещё не раз в процессе установки.

Установка Bitwarden

root@V-Dockers-1:~# mkdir /opt/bitwarden
root@V-Dockers-1:~# chmod -R 700 /opt/bitwarden
root@V-Dockers-1:~# chown -R bitwarden /opt/bitwarden
root@V-Dockers-1:~# su bitwarden
bitwarden@V-Dockers-1:/root$ cd /opt/bitwarden
bitwarden@V-Dockers-1:/opt/bitwarden$ curl -Lso bitwarden.sh https://go.btwrdn.co/bw-sh
bitwarden@V-Dockers-1:/opt/bitwarden$ chmod +x bitwarden.sh
bitwarden@V-Dockers-1:/opt/bitwarden$ ./bitwarden.sh install

После этого следуйте инструкциям в интерактивной установке - скрипт задаст несколько вопросов (Installation ID, Key и прочее).

<blockquote>Ваш аккаунт на vault.bitwarden.com не будет работать в self-hosted версии. Для локальной установки вам нужно будет создать отдельный аккаунт, уже в рамках вашей собственной инсталляции.</blockquote>

После создания аккаунта

Тут стандартно. Как только вы создадите учётную запись, можете в неё сразу и войти.

Включение SMTP

Чтобы получить доступ к админке в Bitwarden, нужно настроить SMTP. В этом примере используется Gmail, так как он всё ещё поддерживает SMTP AUTH - это позволяет быстро запустить систему без лишней возни.

Но есть важный момент: многие облачные и сторонние почтовые сервисы либо уже отключили, либо постепенно отключают поддержку SMTP AUTH.

Например, O365 предлагает более безопасный способ через коннекторы, но его настройка сложнее и требует больше времени.

Если вы хотите остаться на SMTP AUTH, но не находите подходящий сервис - можно развернуть локальный SMTP-сервер или поднять свой.

Настройка SMTP AUTH с Google

Чтобы использовать Gmail, нужно:

  1. Включить двухфакторную авторизацию (2FA)
  2. Создать пароль приложения

После этого перейдите на страницу создания пароля приложения и сгенерируйте один - он и будет использоваться в настройке SMTP.

Скопируйте созданный пароль приложения и пропишите его вместе с остальными параметрами в файле:

/opt/bitwarden/bwdata/env/global.override.env

Вот какие значения нужно задать:

globalSettings__mail__replyToEmail=email@gmail.com
globalSettings__mail__smtp__host=smtp.gmail.com
globalSettings__mail__smtp__port=587
globalSettings__mail__smtp__ssl=false
globalSettings__mail__smtp__username=email@gmail.com
globalSettings__mail__smtp__password={PASS}
globalSettings__disableUserRegistration=false
globalSettings__hibpApiKey=REPLACE
adminSettings__admins={MY EMAIL}
globalSettings__mail__smtp__startTls=true
globalSettings__mail__smtp__trustServer=true

После того как всё настроено - заходите в интерфейс и нажимайте Send email:

Чтобы попасть в админку Bitwarden, переходите по адресу: URL/admin.

Нажмите на ссылку в письме — и вы попадёте на такую страницу:

Собственно это и есть админка Bitwarden. Если всё настроено правильно, вы окажетесь внутри неё и сможете управлять настройками вашего хранилища паролей.