Что такое Vaultwarden
Vaultwarden — это неофициальная реализация сервера Bitwarden с открытым исходным кодом. Она требует меньше ресурсов, проще в установке и предназначена для самостоятельного размещения. Совместима со всеми официальными клиентами Bitwarden и предоставляет большинство функций оригинального сервера, позволяя безопасно хранить и синхронизировать пароли под вашим полным контролем.
Как установить Docker и Docker Compose
Мы будем устанавливать Vaultwarden на Ubuntu 24.04, на Docker и из-за этого нам нужен Docker, а также Docker Compose.
Чтобы их установить, для начала в терминале выполняем команду проверки обновления ОС:
apt update && apt upgrade -y
После того как ОС обновилась, если было обновлении, выполняем команду для установки Docker:
apt install -y docker.io
Теперь вы должны настроить автозапуск Docker:
systemctl enable docker systemctl start docker
Ура, первый шаг мы прошли успешно, теперь мы должны установить Docker Compose, как он необходим для работы Vaultwarden:
apt install -y docker-compose
На этом мы завершили установку Docker и Docker Compose, теперь можем продолжить с установкой Vaultwarden и NGINX Proxy Manager который поможет нам легко сделать наш контейнер защищенным т.е. легко сделать прокси на порт с SSL сертификатом и таким способом увеличичить безопасность связи к контейнеру.
Как установить Vaultwardenad
Мы должны создать папку и войти в нее, так нам будет легче управлять в будущем с контейнером, это можно сделать с одной командой:
mkdir ~/vaultwarden-npm && cd ~/vaultwarden-npm
Теперь мы создаем файл в котором будут и сами настройки контейнера которые можно в любом моменте менять, файл создаем с помощью команды и сразу в него вставляем:
nano docker-compose.yml
version: "3" services: vaultwarden: image: vaultwarden/server:latest container_name: vaultwarden restart: unless-stopped ports: - "82:80" volumes: - ./vw-data:/data environment: - ADMIN_TOKEN=ОБЯЗАТЕЛЬНО УКАЖИТЕ ВАШ ПАРОЛЬ!!! npm-db: image: mariadb:10.5 container_name: npm-db restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: npm_root_pass MYSQL_DATABASE: npm MYSQL_USER: npm MYSQL_PASSWORD: npm_pass volumes: - ./npm-db-data:/var/lib/mysql nginx-proxy-manager: image: jc21/nginx-proxy-manager:latest container_name: nginx-proxy-manager restart: unless-stopped depends_on: - npm-db ports: - "80:80" # HTTP - "443:443" # HTTPS - "81:81" # Admin UI environment: DB_MYSQL_HOST: npm-db DB_MYSQL_PORT: 3306 DB_MYSQL_USER: npm DB_MYSQL_PASSWORD: npm_pass DB_MYSQL_NAME: npm volumes: - ./npm-data:/data - ./npm-letsencrypt:/etc/letsencrypt
Чтобы запустить контейнеры Vaulwarden и NGINX Proxy Manager, выполняем следующую команду:
docker-compose up -d
ВАЖНО!! Если у вас будет ошибка с Docker Compose, выполните следующую команду и затем снова выполните команду выше:
apt install pip -y
Ждем чтобы все контейнеры скачались, распаковались и установились:
После того как установка завершилась и контейнеры запустились, увидите данное сообщение в терминале.
Как настроить проксирование контейнера и SSL с помощью NGINX Proxy Manager
Чтобы настроить проксирование чтобы оно вело на наш домен, а также чтобы установить SSL, переходим по ссылке:
http://ip-аддресс:81
Данные для первого входа в панель:
Почта: [email protected]
Пароль: changeme
Сразу после входа будет необходимо их поменять.
Сначала меняем почту, а затем пароль.
Чтобы добавить наш домен/поддомен который уже смотрит на IP сервера, нажимаем на Hosts, затем на Proxy hosts
После того как вошли в нужное меню, нажмите на Add proxy host
Затем нужно заполнить данные домена/поддомена таким способом, указав домен/поддомен, IP и порт на котором работает Vaultwarden.
Теперь нужно нажать на SSL, выберите Force SSL, HTTP/2 Support, согласитесь с условиями и сохраните.
После того как сертификат выдался и прокси настроился, вы должны увидеть такую картину
Видим что SSL выдался и Vaultwarden теперь доступен по нашему домену/поддомену.
Переходим по ссылке и если все хорошо – откроется Vaulwarden.
Чтобы создать аккаунт где будете хранить пароли, нажмите на Create account. На русском будет написано Создать аккаунт.
После перехода на страницу регистрации, вы должны заполнить все поля и зарегистрироваться.
После регистрации вы должны зайти на сайт Bitwarden и скачать приложение, как для браузера, так и для телефона и Windows, MacOS, Linux.
Ссылка на их сайт: https://bitwarden.com/download/
Первый вход в аккаунт выглядит именно так. Здесь вы можете настроить все папки и прочее.
При настройке на устройстве при добавлении аккаунта вы должны указать тип аккаунта self-hosted и затем указать ссылку на ваш Vaultwarden, почту пользователя которого вы создали и пароль.
Вы помните пароль который мы указали в docker-compose.yml? Именно его вы можете использовать для входа в админскую панель для управлении вашего Vaultwarden, по ссылке
https://vaultwarden.primer/admin
Сразу после входа у вас будет возможность с легкостью управлять с вашим Vaultwarden, как в нем есть много настроек которые вы можете сделать под себя.
Спасибо что прочитали инструкцию по установке Vaultwarden до конца. Теперь вы научили как его можно с легкостью установить на свой сервер и хранить свои пароли самостоятельно, а не на серверах которые не администрируются вами.