bolt Valebyte VPS від $4/міс — NVMe, запуск за 60 секунд.

Отримати VPS arrow_forward
eco Початковий Туторіал

Установка и настройка Vaultwarden на VPS: селф-хостинг

calendar_month May 12, 2026 schedule 9 хв. читання visibility 4012 переглядів
Установка и настройка Vaultwarden на VPS: селф-хостинг менеджера паролей с Docker и SSL
info

Потрібен сервер для цього гайду? Ми пропонуємо виділені сервери та VPS у 50+ країнах з миттєвим налаштуванням.

Установка и настройка Vaultwarden на VPS: селф-хостинг
play_circle

Дивитися за 90 секунд

Ті самі кроки на реальному VPS: команди в терміналі та веб-інтерфейс без пропусків. Текст нижче — детальна версія з параметрами й варіантами.

YouTube ↗

Потрібен сервер для цього гайду?

Розгорніть VPS або виділений сервер за хвилини.

Встановлення та налаштування Vaultwarden на VPS: селф-хостинг менеджера паролів з Docker та SSL

TL;DR

У цьому посібнику розглядається процес розгортання Vaultwarden (легкої реалізації Bitwarden на Rust) на віртуальному сервері під управлінням Ubuntu 24.04/26.04. Ми налаштуємо Docker-контейнери, забезпечимо автоматичне отримання SSL-сертифікатів через Caddy та організуємо систему регулярного резервного копіювання. Підсумком стане повністю приватний, захищений менеджер паролів, доступний на всіх ваших пристроях без абонентської плати та обмежень хмарних провайдерів.

  • Стек: Docker, Docker Compose, Caddy (Reverse Proxy), Vaultwarden.
  • Безпека: Автоматичний HTTPS (Let's Encrypt), Fail2ban, ізоляція контейнерів.
  • Складність: Середня (потрібні базові навички роботи в терміналі Linux).
  • Час виконання: 30–45 хвилин.
  • Результат: Власний сервер паролів з підтримкою 2FA, вкладень та організації груп.
Швидкий вибір
Шукаєте сервер, який просто працює?
Valebyte VPS — NVMe, підтримка 24/7, запуск за 60 секунд.
Тарифи VPS

1. Що ми налаштовуємо і навіщо

Схема: 1. Что мы настраиваем и зачем
Схема: 1. Що ми налаштовуємо і навіщо

У 2026 році питання безпеки особистих даних стоїть гостріше, ніж будь-коли. Популярні хмарні менеджери паролів (LastPass, 1Password, Bitwarden Cloud) залишаються мішенями для масштабних хакерських атак. Селф-хостинг — це спосіб повернути контроль над своїми секретами. Ми будемо встановлювати Vaultwarden.

Vaultwarden — це альтернативна реалізація API Bitwarden, написана мовою Rust. Вона повністю сумісна з усіма офіційними додатками Bitwarden (iOS, Android, розширення для браузерів, десктоп), але при цьому споживає в десятки разів менше оперативної пам'яті, ніж оригінальний сервер на .NET. Це робить його ідеальним кандидатом для запуску на недорогому VPS.

Що ви отримаєте в результаті:

  • Повний контроль над базою даних паролів.
  • Відсутність обмежень на кількість пристроїв і користувачів.
  • Підтримку функцій Premium-версії Bitwarden (2FA через YubiKey, TOTP-генератор, звіти про безпеку) абсолютно безкоштовно.
  • Синхронізацію між усіма девайсами через ваш власний домен.

Альтернативою є використання офіційного Bitwarden Unified або хмарних версій, але Vaultwarden виграє за рахунок продуктивності та простоти обслуговування на малих і середніх інсталяціях.

2. Який VPS-конфіг потрібен під цю задачу

Схема: 2. Какой VPS-конфиг нужен под эту задачу
Схема: 2. Який VPS-конфіг потрібен під цю задачу

Vaultwarden вкрай невимогливий до ресурсів. Основне навантаження створює не сам додаток, а супутні сервіси: Docker-демон та Reverse Proxy. Для комфортної роботи системи на 5-10 користувачів достатньо мінімальних характеристик.

Ресурс Мінімальні вимоги Рекомендовані вимоги
Процесор (CPU) 1 ядро (Shared) 1-2 ядра (Dedicated thread)
Оперативна пам'ять (RAM) 512 МБ 1-2 ГБ (для стабільної роботи Docker та кешування)
Диск (SSD/NVMe) 10 ГБ 20 ГБ+ (з урахуванням бекапів та логів)
ОС Ubuntu 22.04 LTS Ubuntu 24.04 / 26.04 LTS або Debian 12

Якщо ви плануєте використовувати Vaultwarden тільки для себе і сім'ї, можна взяти VPS початкового рівня. Цього буде більш ніж достатньо для миттєвого відгуку інтерфейсу. Якщо ж передбачається зберігання великої кількості вкладень (скани документів, ключі), варто звернути увагу на об'єм дискового простору або можливість підключення зовнішнього об'єктного сховища (S3).

Локація сервера: Оскільки затримка (latency) критична для синхронізації мобільних додатків, вибирайте дата-центр ближче до вашого основного місця проживання. Однак, враховуючи малий об'єм даних, що передаються, навіть сервер на іншому континенті буде працювати прийнятно.

Dedicated vs VPS: Для менеджера паролів виділений сервер (dedicated) є надмірним, якщо тільки ви не розгортаєте інфраструктуру на сотні співробітників компанії з жорсткими вимогами до ізоляції ресурсів. Для 99% задач віртуалізації KVM на VPS достатньо.

3. Підготовка сервера

Схема: 3. Подготовка сервера
Схема: 3. Підготовка сервера

Перш ніж приступати до встановлення, необхідно базово захистити сервер. Ми припускаємо, що у вас є свіжа установка Ubuntu 24.04/26.04.

Першим ділом оновимо індекси пакетів і саму систему:


sudo apt update && sudo apt upgrade -y

Створимо нового користувача з правами sudo, щоб не працювати під root (замініть user на ваше ім'я):


adduser user
usermod -aG sudo user

Налаштуємо базовий брандмауер (UFW). Нам потрібно відкрити порти для SSH, HTTP і HTTPS:


sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable

Встановимо Fail2ban для захисту від брутфорс-атак на SSH:


sudo apt install fail2ban -y

Конфігурація за замовчуванням вже захищає SSH, блокуючи IP після декількох невдалих спроб входу. Це критично важливо для сервера, на якому зберігаються ваші паролі.

Швидкий вибір
Шукаєте сервер, який просто працює?
Valebyte VPS — NVMe, підтримка 24/7, запуск за 60 секунд.
Тарифи VPS

4. Встановлення Docker і необхідних утиліт

Схема: 4. Встановлення Docker і необхідних утиліт
Схема: 4. Встановлення Docker і необхідних утиліт

Vaultwarden офіційно розповсюджується у вигляді Docker-образу, що значно спрощує його розгортання та оновлення. Ми будемо використовувати сучасний метод встановлення через офіційний репозиторій Docker.

Видалимо старі версії, якщо вони були:


for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

Встановимо залежності та додамо GPG-ключ Docker:


sudo apt update
sudo apt install ca-certificates curl gnupg -y
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

Додамо репозиторій в джерела apt:


echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update

Тепер встановимо сам Docker і плагін Docker Compose:


sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

Додамо нашого користувача до групи docker, щоб запускати контейнери без sudo (потрібен перезахід в сесію):


sudo usermod -aG docker $USER

5. Розгортання Vaultwarden через Docker Compose

Схема: 5. Розгортання Vaultwarden через Docker Compose
Схема: 5. Розгортання Vaultwarden через Docker Compose

Створимо робочу директорію для нашого проєкту. Це допоможе тримати всі конфіги і дані в одному місці, що спрощує бекап.


mkdir ~/vaultwarden && cd ~/vaultwarden

Створимо файл docker-compose.yml. В цьому файлі ми опишемо два сервіси: сам Vaultwarden і Caddy, який буде виступати в ролі веб-сервера і менеджера SSL-сертифікатів.


nano docker-compose.yml

Вставте наступний вміст (уважно вивчіть коментарі):


services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: always
    environment:
      - SIGNUPS_ALLOWED=true # Дозволити реєстрацію (вимкнемо після створення акаунту)
      - ADMIN_TOKEN=your_strong_random_token # Токен для доступу до адмін-панелі
      - DOMAIN=https://pass.yourdomain.com # Ваш домен
    volumes:
      - ./vw-data:/data

  caddy:
    image: caddy:2-alpine
    container_name: caddy
    restart: always
    ports:
      - 80:80
      - 443:443
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile
      - ./caddy-data:/data
      - ./caddy-config:/config
    depends_on:
      - vaultwarden
Важливо: Замініть your_strong_random_token на довгий випадковий рядок. Ви можете згенерувати його командою openssl rand -base64 32. Цей токен дозволить вам заходити в панель управління сервером.

6. Налаштування Reverse Proxy і SSL через Caddy

Схема: 6. Налаштування Reverse Proxy і SSL через Caddy
Схема: 6. Налаштування Reverse Proxy і SSL через Caddy

Caddy — це сучасний веб-сервер, який автоматично отримує і оновлює SSL-сертифікати від Let's Encrypt або ZeroSSL. Це позбавляє нас від необхідності вручну налаштовувати certbot і cron-завдання.

Створимо файл конфігурації Caddyfile в тій же директорії:


nano Caddyfile

Додайте в нього наступні рядки (замініть pass.yourdomain.com на ваш реальний домен):


pass.yourdomain.com {
    # Логування (опціонально)
    log {
        output file /data/access.log
    }

    # Проксування запитів до контейнера Vaultwarden
    reverse_proxy vaultwarden:80 {
       # Налаштування заголовків для коректної роботи WebSocket (потрібно для миттєвої синхронізації)
       header_up X-Real-IP {remote_host}
    }
}

Перед запуском переконайтеся, що ваш A-запис домену в панелі управління DNS вказує на IP-адресу вашого VPS. Тепер запускаємо всю зв'язку:


docker compose up -d

Docker скачає образи і запустить контейнери. Caddy автоматично зв'яжеться з Let's Encrypt і випустить сертифікат. Через 1-2 хвилини ваш менеджер паролів буде доступний за адресою https://pass.yourdomain.com.

Швидкий вибір
Шукаєте сервер, який просто працює?
Valebyte VPS — NVMe, підтримка 24/7, запуск за 60 секунд.
Тарифи VPS

7. Тонке налаштування і панель адміністратора

Схема: 7. Тонке налаштування і панель адміністратора
Схема: 7. Тонке налаштування і панель адміністратора

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

Перейдіть до панелі адміністратора за адресою: https://pass.yourdomain.com/admin. Для входу використайте ADMIN_TOKEN, який ви вказали в docker-compose.yml.

Рекомендовані налаштування в адмін-панелі:

  • General settings: Вимкніть "Allow new signups", якщо ви вже створили всі потрібні акаунти.
  • SMTP Settings: Налаштуйте відправку пошти (наприклад, через SendGrid, Mailgun або особисту поштову скриньку). Це необхідно для верифікації e-mail та отримання повідомлень про нові входи.
  • Security settings: Увімкніть "Duo" або "YubiKey", якщо плануєте використовувати апаратні ключі.

Щоб зміни набули чинності (якщо ви змінюєте їх через файл, а не через адмінку), потрібно перезапустити контейнер:


docker compose up -d --force-recreate

8. Бекапи та обслуговування

Схема: 8. Бекапи та обслуговування
Схема: 8. Бекапи та обслуговування

База даних Vaultwarden за замовчуванням зберігається в SQLite (файл db.sqlite3 в папці vw-data). Це зручно, так як для бекапу достатньо скопіювати один файл. Однак робити це потрібно правильно, щоб не отримати "битий" знімок під час запису в базу.

Простий скрипт для бекапу:

Створимо скрипт backup.sh:


#!/bin/bash
BACKUP_DIR="/home/user/backups"
TIMESTAMP=$(date +"%Y%m%d_%H%M%S")
SOURCE_DIR="/home/user/vaultwarden/vw-data"

mkdir -p $BACKUP_DIR

# Використовуємо sqlite3 .backup для безпечного копіювання запущеної бази
sqlite3 $SOURCE_DIR/db.sqlite3 ".backup '$BACKUP_DIR/db_$TIMESTAMP.sqlite3'"

# Архівуємо вкладення та конфіги
tar -czf $BACKUP_DIR/attachments_$TIMESTAMP.tar.gz $SOURCE_DIR/attachments

# Видаляємо старі бекапи (старше 30 днів)
find $BACKUP_DIR -type f -mtime +30 -delete

Не забудьте встановити sqlite3 (sudo apt install sqlite3) та дати права на виконання скрипту (chmod +x backup.sh). Налаштуйте виконання за розкладом через crontab -e:


0 3   * /home/user/vaultwarden/backup.sh

Цей крон буде робити бекап кожну ніч о 3:00. Ідеально — налаштувати відправку цих файлів на інше сховище (S3, Google Drive або інший VPS) за допомогою rclone.

9. Troubleshooting + FAQ

Помилка SSL: Caddy не може отримати сертифікат

Перевірте, чи відкриті порти 80 та 443 в UFW (sudo ufw status). Також переконайтеся, що домен правильно делегований та DNS-записи оновились. В логах Caddy можна побачити точну причину: docker logs caddy.

Vaultwarden споживає занадто багато пам'яті

Зазвичай Vaultwarden споживає близько 50-100 МБ RAM. Якщо ви бачите значення вище 500 МБ, перевірте кількість активних WebSocket-з'єднань або логи на наявність помилок циклічного перезавантаження. Для маленьких VPS переконайтеся, що у вас ввімкнено Swap-файл.

Як оновити Vaultwarden до останньої версії?

Оновлення виконується трьома командами:


docker compose pull
docker compose up -d
docker image prune -f

Який VPS-конфіг мінімально підійде?

Мінімально достатньо 1 ядра CPU та 512 МБ RAM. Однак для комфортної роботи ОС Ubuntu та Docker у 2026 році рекомендується мати хоча б 1 ГБ оперативної пам'яті. Це запобіжить спрацюванню OOM Killer (Out of Memory) при оновленні пакетів або важких операціях з базою даних.

Що вибрати — VPS чи dedicated для цієї задачі?

Для селф-хостингу менеджера паролів VPS — оптимальний вибір. Ви отримуєте гнучкість, легке масштабування та можливість робити знімки (snapshots) всієї системи. Dedicated сервер потрібен тільки в разі, якщо ви параноїдально ставитесь до сусідства з іншими віртуальними машинами на одному гіпервізорі або якщо кількість користувачів перевищує 500 осіб.

Забув пароль адміністратора (Admin Token), що робити?

Ви можете змінити його в docker-compose.yml в розділі environment, після чого виконати docker compose up -d. Якщо ви втратили основний майстер-пароль від акаунту — відновити його неможливо, так як сервер не зберігає його у відкритому вигляді (zero-knowledge encryption). Тільки імпорт з бекапу в новий акаунт.

Чи можна запустити Vaultwarden без домену?

Технічно — так, за IP-адресою. Але сучасні браузери та програми Bitwarden блокують роботу криптографічних API (Web Crypto API) на незахищених з'єднаннях (без HTTPS). Тому наявність домену та SSL-сертифіката є обов'язковою вимогою.

Швидкий вибір
Шукаєте сервер, який просто працює?
Valebyte VPS — NVMe, підтримка 24/7, запуск за 60 секунд.
Тарифи VPS

10. Висновки та наступні кроки

Ми успішно розгорнули захищений, приватний менеджер паролів на власному сервері. Тепер у вас є інструмент, який не залежить від політики сторонніх компаній та доступний тільки вам. Використання Docker та Caddy робить цю установку максимально сучасною та простою в обслуговуванні.

Ваші наступні кроки:

  • Встановіть розширення Bitwarden в браузер та мобільний додаток на смартфон. В налаштуваннях додатків вкажіть адресу вашого сервера (Self-hosted URL).
  • Увімкніть двофакторну аутентифікацію (2FA) для свого основного акаунту.
  • Імпортуйте паролі зі старого менеджера (Vaultwarden підтримує імпорт з CSV/JSON практично всіх популярних сервісів).
  • Налаштуйте експорт бекапів в хмарне сховище для максимального збереження даних.

Пам'ятайте, що тепер відповідальність за безпеку даних лежить на вас: регулярно оновлюйте систему (apt update && apt upgrade) та слідкуйте за актуальністю Docker-образів.

Чи був цей гайд корисним?

Ваш відгук допомагає нам покращувати гайди.

Share this post:

Надішліть гайд тому, кому він може стати в пригоді.

Telegram VKVK WhatsApp Facebook LinkedIn XX

установка и настройка vaultwarden на vps: селф-хостинг менеджера паролей с docker и ssl
support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.