Menyimpan ratusan sandi di browser atau catatan adalah kebiasaan yang mahal. Vaultwarden adalah implementasi ringan dari protokol Bitwarden: peramban, ekstensi, dan ponsel tetap memakai aplikasi resmi Bitwarden, tetapi datanya tersimpan di servermu sendiri.

Ringkasan singkat
- HTTPS wajib untuk Web Crypto.
- Tutup
SIGNUPS_ALLOWEDsetelah akun dibuat. - Panel admin memakai
ADMIN_TOKEN. - Backup folder
datasaat container berhenti.
Yang perlu disiapkan
- Ubuntu Server dengan Docker.
- Domain dan HTTPS — wajib, karena Web Crypto hanya aktif pada koneksi aman.
- RAM 512 MB sudah cukup.
1. Jalankan container
mkdir -p /opt/vaultwarden && cd /opt/vaultwarden
cat > compose.yaml <<'EOF'
services:
vaultwarden:
image: vaultwarden/server:latest
restart: unless-stopped
environment:
DOMAIN: https://vault.contoh.com
SIGNUPS_ALLOWED: "true"
ADMIN_TOKEN: ganti_token_acak_panjang
volumes:
- ./data:/data
ports:
- "127.0.0.1:8081:80"
EOF
docker compose up -d
docker compose logs --tail=30
Port diikat ke localhost karena seluruh akses harus lewat proxy ber-HTTPS. Jangan membuka 8081 langsung ke internet.
2. Buat akun pertama
Buka https://vault.contoh.com/#/register (setelah proxy siap), buat akun, lalu simpan master password di tempat aman. Master password tidak bisa direset oleh admin — itu by design.
3. Tutup pendaftaran
nano compose.yaml # SIGNUPS_ALLOWED: "false"
docker compose up -d
Kalau pendaftaran dibiarkan terbuka, siapa pun yang menemukan domainmu bisa membuat akun. Setelah akun keluarga dibuat, tutup kembali.
4. Panel admin
Akses https://vault.contoh.com/admin dengan ADMIN_TOKEN. Panel ini menampilkan jumlah pengguna, mengatur undangan, dan memeriksa diagnostik. Simpan token hanya di password manager, bukan di chat.
5. Pasang di klien
- Ekstensi Bitwarden di peramban → ikon gerigi → Self-hosted environment.
- Isi
https://vault.contoh.com, lalu login. - Aplikasi ponsel: Settings → Server URL, isi alamat yang sama.
Setelah itu ekstensi, aplikasi desktop, dan ponsel memakai basis data yang sama. Perubahan sandi muncul di semua perangkat.
6. Backup yang benar
docker compose stop vaultwarden
tar czf /backup/vaultwarden-$(date +%F).tar.gz -C /opt/vaultwarden data
docker compose start vaultwarden
Folder data berisi db.sqlite3, lampiran, kunci RSA, dan konfigurasi. Menyalin hanya basis datanya membuat lampiran hilang; menyalin folder saat container berjalan berisiko menghasilkan salinan tidak konsisten.
7. Perbarui dengan aman
docker compose pull
docker compose up -d
Baca catatan rilis. Vaultwarden jarang merusak kompatibilitas, tetapi migrasi basis data tidak bisa dibatalkan.
8. Berbagi untuk keluarga
Organisasi memungkinkan beberapa akun berbagi item tertentu tanpa memberi akses ke seluruh vault. Buat organisasi di panel web, undang anggota, lalu pindahkan item ke koleksi yang sesuai.
Hindari satu akun dipakai bersama: riwayat perubahan dan audit menjadi tidak berarti, dan master password tidak bisa dicabut dari satu orang saja.
9. Memulihkan dari backup
docker compose stop vaultwarden
sudo tar xzf /backup/vaultwarden-2026-10-28.tar.gz -C /opt/vaultwarden
docker compose start vaultwarden
Uji pemulihan di folder lain sebelum benar-benar dibutuhkan. Perhatikan: setelah restore, klien perlu login ulang karena sesi bergantung pada kunci di folder data.
10. Membatasi percobaan login
Tambahkan rate limit di proxy atau jail fail2ban untuk endpoint login. Vaultwarden sendiri tidak membatasi percobaan secara agresif; lapisan luar tetap diperlukan.
11. Backup terjadwal
Membuat arsip manual jarang dilakukan. Jadwalkan lewat cron agar berjalan tanpa diingat:
0 3 * * * cd /opt/vaultwarden && docker compose stop vaultwarden && tar czf /backup/vw-$(date +\%F).tar.gz data && docker compose start vaultwarden
Simpan arsip di mesin lain. Backup yang hanya ada di server yang sama akan hilang bersama server.
12. Uji restore
Setahun sekali, pulihkan arsip ke folder percobaan dan buka dengan akun uji. Ini membuktikan dua hal: arsipnya utuh, dan kamu ingat langkahnya saat panik.
13. Kapan sebaiknya tidak self-host?
Kalau kamu belum nyaman mengurus sertifikat TLS, backup, dan pembaruan, layanan berbayar lebih aman. Vaultwarden menuntut disiplin operasional: satu salah konfigurasi bisa membuat seluruh keluarga kehilangan akses ke sandi mereka.
Masalah yang sering muncul
| Gejala | Penyebab | Solusi |
|---|---|---|
| Ekstensi gagal login | Server URL salah atau bukan HTTPS | Periksa sertifikat dan URL |
| Halaman kosong | WebSocket/proxy salah | Teruskan header Upgrade dan Connection |
| Tidak bisa mendaftar | SIGNUPS_ALLOWED=false | Kirim undangan dari panel admin |
| Data hilang setelah recreate | Volume tidak dipasang | Pastikan ./data:/data |
| Admin tidak bisa masuk | Token berubah | Set ulang ADMIN_TOKEN, restart |
Pertanyaan yang sering diajukan
Apakah ini Bitwarden resmi?
Bukan. Vaultwarden adalah implementasi ulang yang kompatibel dengan klien Bitwarden, ditulis dengan Rust agar ringan.
Apakah aman?
Data dienkripsi di klien sebelum dikirim; server menyimpan blob terenkripsi. Risiko terbesar tetap master password yang lemah dan server yang tidak diperbarui.
Bisa dipakai keluarga?
Bisa. Buat akun untuk tiap anggota, lalu tutup pendaftaran publik. Organisasi tersedia untuk berbagi item tertentu.
Kalau server mati?
Klien tetap menyimpan salinan terenkripsi di perangkat, tetapi perubahan baru tidak tersinkron. Itu alasan backup rutin.
Baca juga:
0 comments:
Post a Comment