fbpx
Перейти до вмісту

Встановлення Vaultwarden (Bitwarden) на VPS

Більшість нашої особистої та фінансової інформації ховається лише за логіном і паролем, важливість надійного зберігання цих даних дуже висока.

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

Сьогодні ми з вами розберемося як встановити власний менеджер паролів на ваш віртуальний сервер.

Встановлення Vaultwarden

Для встановлення Vaultwarden нам необхідно встановити на сервері Docker, доменне ім’я, яке буде направлено на ваш сервер, і SSL сертифікат. Ви можете направити доменне ім’я на Cloudflare і використовувати їхній SSL сертифікат. Детальніше про те, як встановити Docker, ви можете дізнатися в цій статті.


Для встановлення Vaultwarden нам необхідно буде виконати всього одну команду

docker run -d --name vaultwarden -v /vw-data/:/data/ -p 80:80 vaultwarden/server:latest

У цій команді замініть шлях /vw-data/ на ваш власний, у цій директорії буде збережено файли, необхідні для роботи Vaultwarden.

Після завершення встановлення контейнера ви можете перейти за адресою доменного імені вашого сервера і ви потрапите на сторінку входу в Vaultwarden.

Vaultwarden і HTTPS

Для коректної роботи Vaultwarden необхідно, щоб на доменному імені був налаштований ssl-сертифікат, наприклад, ви можете використовувати Cloudflare і просто направити ваше доменне ім’я на сервер, або налаштувати реверс проксі.

Один із найпростіших способів – використовувати реверс проксі Caddy. Щоб одразу ж розгорнути Vaultwarden і Caddy, створимо файл docker-compose.yaml і внесемо в нього такі дані

version: '3'

services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: always
    environment:
      WEBSOCKET_ENABLED: "true"  # Enable WebSocket notifications.
    volumes:
      - ./vw-data:/data

  caddy:
    image: caddy:2
    container_name: caddy
    restart: always
    ports:
      - 80:80  # Needed for the ACME HTTP-01 challenge.
      - 443:443
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile:ro
      - ./caddy-config:/config
      - ./caddy-data:/data
    environment:
      DOMAIN: "https://vaul.domain.com"  # Your domain.
      EMAIL: "[email protected]"                 # The email address to use for ACME registration.
      LOG_FILE: "/data/access.log"

У цій же директорії створимо файл Caddyfile в який ми внесемо такі дані

{$DOMAIN}:443 {
  log {
    level INFO
    output file {$LOG_FILE} {
      roll_size 10MB
      roll_keep 10
    }
  }

  # Use the ACME HTTP-01 challenge to get a cert for the configured domain.
  tls {$EMAIL}

  # This setting may have compatibility issues with some browsers
  # (e.g., attachment downloading on Firefox). Try disabling this
  # if you encounter issues.
  encode gzip

  # Notifications redirected to the WebSocket server
  reverse_proxy /notifications/hub vaultwarden:3012

  # Proxy everything else to Rocket
  reverse_proxy vaultwarden:80 {
       # Send the true remote IP to Rocket, so that vaultwarden can put this in the
       # log, so that fail2ban can ban the correct IP.
       header_up X-Real-IP {remote_host}
  }
}

Якщо ж ви хочете запустити Vaultwarden у локальній мережі для локального доменного імені, то файл Caddyfile матиме такий вигляд

domain.local:443 {
        reverse_proxy vaultwarden:80
        tls internal
}

Створення користувача у Vaultwarden

Для створення нового акаунта необхідно натиснути Create account в низу під кнопкою Continue.

На цьому встановлення Vaultwarden завершено. Ви можете використовувати Bitwarden розширення для браузера або десктопа, в налаштуваннях вам необхідно буде вказати доменне ім’я, на якому доступі Vaultwarden.