Перейти к основному контенту

Установка и настройка vaultwarden в lxc контейнере

Vaultwarden — это легковесная реализация сервера Bitwarden, написанная на Rust.

Ключевые особенности:
Совместим с официальными клиентами Bitwarden (браузер, мобильные apps, desktop)

Self-hosted — ставится на свой сервер/LXC/Proxmox

Маленький — ~10MB RAM против 1GB+ у официального Bitwarden

Открытый код (unofficial Bitwarden server)

Зачем нужен:
Вместо облачного Bitwarden ($10/мес) ставишь свой менеджер паролей на домашний сервер, используешь те же приложения и расширения браузера.

Установка

Для установки vaultwarden понадобится скрипт с сайта https://community-scripts.github.io/ProxmoxVE/scripts?id=vaultwarden

А так же настроенный VPN на роутере, для того что бы включить VPN соединение на всей сети, это необходимо так как некоторые пакеты в скрипте не доступны из России

В консоли ноды необходимо ввести 

bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/vaultwarden.sh)"

Во время установки могут возникнуть ошибки по конфигурации ipv4, скрипт не пройдет проверки, сообщение о ошибках можем игнорировать, на все вопросы отвечает Y

Установка может занять довольно много времени

После установки в ноде появится контейнер, к нему необходимо подключиться.

Настройка

Далее необходимо сгенерировать admin token, он понадобится при настройке файла конфигурации, сделать это можно в тестовом или текущем контейнере командой

openssl rand -base64 48

Вывод необходимо записать

Далее необходимо отредактировать файл конфигурации

/opt/vaultwarden/.env

Файл конфигурации необходимо привести к виду

ADMIN_TOKEN='<admin token который мы сгенерировали>'
ROCKET_ADDRESS=0.0.0.0
DATA_FOLDER=/opt/vaultwarden/data
DATABASE_MAX_CONNS=10
WEB_VAULT_FOLDER=/opt/vaultwarden/web-vault
WEB_VAULT_ENABLED=true

После чего перезагрузить lxc контейнер.

Панель vaultwarden доступна только через https c ssl сертификатом, поэтому нам необходимо выдать для <ip lxc контейнера>:8000 домен через любой обратный прокси.