Сервер для паролей, совместимый с Bitwarden, на своём VPS: Docker, HTTPS через Caddy, токен админа, регистрация закрыта, офсайт-бэкапы.
Vaultwarden — лёгкий сервер на Rust, совместимый со всеми официальными клиентами Bitwarden: расширениями браузера, мобильными и настольными приложениями. База паролей хранится в SQLite на вашем VPS — за вашим доменом и вашим HTTPS-сертификатом.
apt update && apt install -y ufw
ufw allow OpenSSH && ufw allow 80/tcp && ufw allow 443/tcp && ufw --force enable
mkdir -p /opt/vaultwarden/data && cd /opt/vaultwarden
echo "ADMIN_TOKEN=$(openssl rand -base64 48)" > .env # сохраните этот токен!
cat > docker-compose.yml <<'EOF'
services:
vaultwarden:
image: vaultwarden/server:latest
restart: unless-stopped
env_file: .env
environment:
- DOMAIN=https://vault.example.com
- SIGNUPS_ALLOWED=true
- WEB_VAULT_ENABLED=true
ports:
- "127.0.0.1:8085:80"
volumes:
- ./data:/data
EOF
docker compose up -dПанель привязана только к `127.0.0.1` — в интернет она выходит через Caddy на следующем шаге. Всё (хранилище `db.sqlite3`, вложения, конфигурация) лежит в `./data`.
apt install -y caddy
cat > /etc/caddy/Caddyfile <<'EOF'
vault.example.com {
reverse_proxy 127.0.0.1:8085
}
EOF
systemctl reload caddyСначала направьте A-запись, затем откройте `https://vault.example.com`, зарегистрируйте аккаунт — и сразу переключите `SIGNUPS_ALLOWED=false` в `docker-compose.yml` и снова выполните `docker compose up -d`. Панель администратора находится по адресу `/admin` под защитой `ADMIN_TOKEN`.
В любом клиенте Bitwarden на экране входа выберите Self-hosted и введите `https://vault.example.com`. Для резервных копий всё хранилище — одна папка: руководство по restic с ежедневным таймером хранит зашифрованную копию вне сервера — пароли как раз те данные, которые вы не хотите восстанавливать заново.
Да — расширения браузера, клиенты iOS/Android и настольные приложения имеют режим собственного сервера; укажите свой домен и входите как обычно. Две оговорки: премиум-функции вроде Bitwarden Send — собственные реализации Vaultwarden, а официальные функции только для облака (общий доступ организаций с облачным биллингом) работают лишь там, где Vaultwarden их реализует.
Очень немного: ~100–200 МБ RAM, несколько процентов CPU даже при синхронизации. Core VPS 4 (€12/мес) — это роскошь, и он делит машину с другими сервисами; даже самый маленький тариф избыточен, и в этом суть — цена вопроса в вашей дисциплине, а не в счёте.