Глава 7 · 7.2
Vaultwarden: Вашият собствен трезор за пароли
Vaultwarden е лек сървър за приложенията и разширенията за браузър на Bitwarden. Така паролите Ви се съхраняват на Вашия собствен VPS. Това обаче изисква грижа: ако сървърът Ви се повреди или липсва резервно копие, ще загубите паролите си.
Всяка рецепта надгражда работната папка /srv/diensten с Caddy от Вашата работна папка с compose.yaml, .env и Caddy. Добавяте услуга в compose.yaml, блок в Caddyfile, както и A- и AAAA-запис за името (вижте A и AAAA запис в Моите домейни).
1. DNS
Създайте A- и AAAA-запис за kluis.example.com.
2. compose.yaml
vaultwarden:
image: vaultwarden/server:1.37.5
restart: unless-stopped
environment:
DOMAIN: "https://kluis.example.com"
SIGNUPS_ALLOWED: "true"
ADMIN_TOKEN: ${VW_ADMIN_TOKEN}
volumes:
- ./vw-data:/data
Проверете на страницата с версиите на Vaultwarden коя е най-новата версия и я посочете в тага.
3. Caddyfile и стартиране
kluis.example.com {
reverse_proxy vaultwarden:80
}
anna@web1:/srv/diensten$ sudo docker compose up -d
anna@web1:/srv/diensten$ sudo docker compose exec -w /etc/caddy caddy caddy reload
4. Токенът за администриране в .env
Административния панел /admin защитавате с токен. Не въвеждайте там четима парола, а хеш. Този хеш създавате със самия Vaultwarden, след като контейнерът вече работи:
anna@web1:/srv/diensten$ sudo docker compose exec vaultwarden /vaultwarden hash
Password:
Confirm Password:
ADMIN_TOKEN='$argon2id$v=19$m=65540,t=3,p=4$...'
Добавете в .env реда VW_ADMIN_TOKEN='$argon2id$...', с единични кавички. Рестартирайте контейнера с sudo docker compose up -d. За вход в /admin използвайте паролата, която въведохте, а не хеша.
5. Затваряне на регистрацията
- Отворете
https://kluis.example.comи създайте своя акаунт, както и акаунтите на семейството или колегите си. - Задайте в
compose.yamlSIGNUPS_ALLOWED: "false". - Изпълнете
sudo docker compose up -d.
След това каните нови хора чрез административния панел. Ако искате поканите да се изпращат по имейл, настройте SMTP чрез пощенска кутия на порт 587 (вижте Reverse DNS и изпращане на поща от Вашия VPS).
Резервно копие
Всичко се намира в папката /srv/diensten/vw-data: базата данни, прикачените файлове и ключовете. Включете я в резервното си копие с restic (вижте Правилно архивиране на бази данни и Docker volumes) и тествайте възстановяването. Уикито на Vaultwarden описва как да копирате базата данни безопасно, докато тя работи.
Съвет: Вашите приложения и разширения за браузър пазят копие на трезора Ви. Ако сървърът Ви временно спре да работи, пак можете да четете паролите си, но не и да ги променяте.
