---
title: "Self-host pengelola kata sandi Vaultwarden: domain, menutup pendaftaran, berbagi dengan tim, dan backup"
description: "Deploy Vaultwarden di server Anda sendiri dari template Zenavo, pasang domain HTTPS, tutup pendaftaran publik setelah mendaftar, siapkan email untuk mengundang rekan kerja, hubungkan klien Bitwarden, lalu atur backup dan upgrade."
date: 2026-11-13
language: id-ID
url: https://zenavo.app/id-ID/blog/self-host-vaultwarden
---

# Self-host pengelola kata sandi Vaultwarden: domain, menutup pendaftaran, berbagi dengan tim, dan backup

[Vaultwarden](https://github.com/dani-garcia/vaultwarden) adalah server pengelola kata sandi open source yang kompatibel dengan klien resmi Bitwarden: ekstensi browser, aplikasi desktop, aplikasi ponsel, dan CLI semuanya bisa langsung terhubung ke sana. Vaultwarden ditulis dengan Rust dan memakai sangat sedikit memori, sehingga satu server kecil sudah cukup untuk satu tim.

Menyimpan brankas kata sandi di server sendiri berarti data Anda tidak melewati cloud pihak ketiga; artinya juga domain, pengaturan pendaftaran, backup, dan upgrade menjadi tanggung jawab Anda. Panduan ini memakai template Vaultwarden dari Zenavo, mulai dari deploy sampai backup.

Vaultwarden adalah proyek komunitas dan tidak berafiliasi dengan perusahaan Bitwarden.

## Deploy Vaultwarden

Pertama, [hubungkan server Linux](https://docs.zenavo.app/id-ID/servers/add-a-server) ke Zenavo, lalu buka [template Vaultwarden](https://zenavo.app/deploy?template=vaultwarden), pilih server, dan deploy.

Pengaturan template saat ini:

| Pengaturan | Nilai atau fungsi |
|---|---|
| Image | `vaultwarden/server:latest` |
| Port HTTP | `80` |
| Volume | `/data`: database SQLite, lampiran, file Send, kunci untuk login, dan pengaturan yang disimpan dari panel admin semuanya ada di sini |

Template tidak menyiapkan variabel lingkungan apa pun. Langkah-langkah berikut melengkapinya.

## Pasang domain dulu, baru mendaftar

Versi web Vaultwarden bergantung pada API kriptografi browser dan hanya bisa dipakai lewat HTTPS, jadi pasang domain **sebelum mendaftarkan akun**.

Di tab **Jaringan** pada layanan vaultwarden, pasang domain ke port `80`, misalnya `vault.example.com`, tambahkan record DNS A yang mengarah ke server, lalu tunggu HTTPS aktif. Langkah-langkahnya ada di [Domain & HTTPS](https://docs.zenavo.app/id-ID/networking/domains).

Lalu tambahkan di tab **Variabel**:

```sh
DOMAIN=https://vault.example.com
```

Simpan, lalu restart layanan. `DOMAIN` harus sama persis dengan alamat yang benar-benar Anda buka (termasuk `https://`); tautan di email dan beberapa fitur klien bergantung padanya.

## Buat akun, lalu tutup pendaftaran

Buka `https://vault.example.com`, klik **Buat akun** (Create account), lalu atur email dan kata sandi utama.

**Kata sandi utama tidak bisa dipulihkan.** Vaultwarden hanya menyimpan data yang sudah dienkripsi, dan admin server pun tidak bisa membukanya. Lupa kata sandi utama sama dengan kehilangan seluruh brankas, jadi catat di tempat yang aman, atau aktifkan buka kunci biometrik di klien sebagai cara masuk sehari-hari.

Secara bawaan, template mengizinkan siapa pun mendaftar. Setelah semua anggota tim mendaftar, tambahkan di **Variabel**:

```sh
SIGNUPS_ALLOWED=false
```

Simpan, lalu restart layanan. Setelah itu hanya orang yang diundang ke organisasi yang bisa bergabung (`INVITATIONS_ALLOWED` aktif secara bawaan). Jika Anda hanya ingin mengizinkan pendaftaran dengan email kantor, Anda juga bisa membiarkan pendaftaran tetap terbuka dan memakai `SIGNUPS_DOMAINS_WHITELIST=example.com`.

## Siapkan email (diperlukan untuk mengundang rekan kerja)

Mengundang anggota, verifikasi email, dan pemberitahuan login dari perangkat baru semuanya mengirim email. Tambahkan layanan SMTP Anda di **Variabel**:

```sh
SMTP_HOST=smtp.example.com
SMTP_PORT=587
SMTP_SECURITY=starttls
SMTP_FROM=vault@example.com
SMTP_USERNAME=nama pengguna SMTP Anda
SMTP_PASSWORD=kata sandi SMTP Anda
```

Untuk penyedia yang memakai port 465, ubah `SMTP_SECURITY` menjadi `force_tls`. Simpan, lalu restart layanan. Nilai variabel disimpan terenkripsi di Zenavo dan disembunyikan dari pengamat tim.

## Berbagi dengan tim: organisasi dan koleksi

Di versi web, klik **Organisasi baru** (New organization) untuk membuat organisasi, lalu buat **koleksi** (collections) sesuai kebutuhan, misalnya "Server", "Akun pihak ketiga", dan "Keuangan". Masukkan item yang perlu dibagikan ke dalam koleksi, lalu undang anggota dan tentukan koleksi mana yang bisa mereka akses.

Setelah anggota menerima undangan, admin organisasi masih harus **mengonfirmasi** (Confirm) sekali di daftar anggota sebelum anggota itu bisa melihat konten yang dibagikan. Langkah ini untuk bertukar kunci enkripsi, dan memang normal.

## Hubungkan klien Bitwarden

Semua klien Bitwarden bisa memilih server di halaman login:

1. Di halaman login, cari opsi server (atau "Masuk ke" / "Logging in on"), lalu pilih **Self-hosted**.
2. Isi URL server dengan `https://vault.example.com`.
3. Masuk dengan email dan kata sandi utama Anda.

Ekstensi browser, aplikasi desktop, dan aplikasi ponsel menyimpan salinan brankas terenkripsi secara lokal, sehingga item yang sudah ada tetap bisa dilihat saat server mati sebentar.

## Panel admin (opsional)

Vaultwarden punya panel admin `/admin` untuk melihat pengguna, menghapus akun, dan mengubah pengaturan. Panel ini nonaktif selama `ADMIN_TOKEN` tidak diatur; kami menyarankan membiarkannya nonaktif dan mengaktifkannya hanya saat diperlukan.

Saat mengaktifkannya, jangan langsung memakai kata sandi teks biasa. Jalankan perintah berikut di panel **Perintah** pada layanan vaultwarden:

```sh
/vaultwarden hash
```

Masukkan kata sandi dua kali sesuai petunjuk, dan perintah ini akan menampilkan string yang diawali `$argon2id$`. Simpan seluruh string itu sebagai nilai `ADMIN_TOKEN`, restart, lalu masuk ke `https://vault.example.com/admin` dengan kata sandi yang baru saja Anda masukkan.

Catatan: pengaturan yang disimpan di panel admin ditulis ke `/data/config.json` dan **menimpa** variabel lingkungan dengan nama yang sama. Jika nanti perubahan variabel tidak berpengaruh, periksa dulu apakah pengaturan itu juga diatur di panel admin.

## Backup

Semua data server ada di volume `/data`. Cadangkan volume ini dari tab **Backup & Pemulihan** pada layanan vaultwarden:

1. Pilih waktu saat tidak ada yang memakainya, lalu hentikan proyek (backup volume mengharuskan proyek dalam keadaan berhenti).
2. Buat backup, lalu jalankan kembali proyek setelah selesai. Selama beberapa menit itu, klien tetap bisa membaca cache lokal.
3. Unduh satu salinan backup untuk Anda simpan.

File backup berisi brankas yang terenkripsi, tetapi juga berisi lampiran dan kunci untuk login, jadi jaga sama seperti Anda menjaga kata sandi. Kami juga menyarankan setiap orang secara berkala mengekspor JSON terenkripsi dari versi web lewat **Alat → Ekspor brankas** (Tools → Export vault), sebagai salinan kedua yang tidak bergantung pada server.

Backup baru bisa diandalkan setelah dipulihkan dan diperiksa. Anda bisa memulihkan backup ke proyek baru, lalu login dan memastikan semua item ada.

## Upgrade

Template memakai tag `latest`, jadi setiap deploy ulang bisa mendapatkan versi baru. Untuk pemakaian jangka panjang, ubah image di **Sumber** pada **Pengaturan** layanan ke versi tetap, misalnya `vaultwarden/server:1.37.5` (sesuaikan dengan versi di [halaman rilis](https://github.com/dani-garcia/vaultwarden/releases)). Cadangkan dulu sebelum upgrade, dan baca catatan rilis sebelum mengganti versi.

## Pertanyaan umum

**Halaman web tidak terbuka, atau muncul pesan bahwa koneksi aman diperlukan?**
Versi web hanya bisa dipakai lewat HTTPS. Pastikan domain sudah terpasang, sertifikat sudah aktif, dan Anda membukanya dengan `https://`.

**Saya sudah menutup pendaftaran. Bagaimana cara menambah orang?**
Undang orang tersebut ke organisasi. Setelah SMTP disiapkan, mereka akan menerima email undangan; tanpa SMTP, alamat email yang diundang bisa langsung mendaftar di versi web.

**Bagaimana jika lupa kata sandi utama?**
Tidak bisa dipulihkan; tidak ada apa pun di server yang bisa mendekripsinya. Satu-satunya cara adalah menghapus akun itu dan mendaftar ulang, dan item lama akan hilang. Inilah alasan untuk mengekspor brankas secara berkala.

**Ponsel tidak mendapat sinkronisasi real-time?**
Versi web dan desktop menyinkronkan secara real-time lewat WebSocket. Notifikasi push untuk aplikasi ponsel memerlukan installation ID dan key yang didaftarkan di [bitwarden.com/host](https://bitwarden.com/host), lalu atur `PUSH_ENABLED=true`, `PUSH_INSTALLATION_ID`, dan `PUSH_INSTALLATION_KEY`. Tanpa itu, aplikasi ponsel menyinkronkan saat dibuka atau saat ditarik ke bawah untuk menyegarkan.

**Seberapa besar server yang dibutuhkan?**
Vaultwarden sendiri biasanya hanya memakai puluhan MB memori, jadi tidak masalah berbagi satu server kecil dengan aplikasi lain.

Mulailah dari [template Vaultwarden](https://zenavo.app/deploy?template=vaultwarden): pasang domain terlebih dahulu, lalu daftarkan akun, tutup pendaftaran, dan atur backup.
