Більшість нашої особистої та фінансової інформації ховається лише за логіном і паролем, важливість надійного зберігання цих даних дуже висока.
Для зручності зберігання і введення паролів на сайтах існують менеджери паролів, вони бувають як локальні таки хмарні.
Сьогодні ми з вами розберемося як встановити власний менеджер паролів на ваш віртуальний сервер.
Встановлення 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.