Apa yang bisa kami bantu?

A. Pendahuluan

Vaultwarden merupakan implementasi ringan dan kompatibel dengan protokol Bitwarden yang dapat dijalankan secara mandiri (self-hosted) di server VPS. Dengan Vaultwarden, pengguna dapat menyimpan dan menyinkronkan password, catatan aman, serta data autentikasi lainnya tanpa bergantung pada layanan pihak ketiga.

Pada panduan ini, instalasi Vaultwarden akan dipraktikkan menggunakan VPS dengan sistem operasi Ubuntu 22.04. Proses instalasi mencakup persiapan server, pemasangan komponen pendukung, konfigurasi domain, hingga menjalankan layanan Vaultwarden agar dapat diakses melalui browser secara aman.

Dengan mengikuti langkah-langkah pada artikel ini, Anda dapat membangun layanan password manager pribadi yang lebih fleksibel, mudah dikelola, dan sesuai untuk kebutuhan individu maupun tim kecil.

B. Prerequisites

Sebelum memulai instalasi, pastikan beberapa kebutuhan berikut telah disiapkan:

1. Server VPS dengan sistem operasi Ubuntu 22.04 LTS.
2. Akses pengguna dengan hak akses root atau sudo.
3. Domain atau subdomain aktif yang telah diarahkan (pointing) ke alamat IP VPS.
4. Koneksi internet yang stabil untuk mengunduh paket dan dependensi selama proses instalasi.

C. Langkah Instalasi

1. Perbarui Repository Sistem

Perbarui daftar paket dan sistem agar seluruh dependensi yang dibutuhkan menggunakan versi terbaru

sudo apt update && sudo apt upgrade -y

2. Install Docker

Vaultwarden dijalankan menggunakan Docker, sehingga Docker Engine perlu diinstal terlebih dahulu.

sudo apt install docker.io -y

Aktifkan Docker agar berjalan otomatis saat server dinyalakan.

sudo systemctl enable --now docker

Cek Status Docker.

systemctl status docker.service
Gambar 1: Status Docker Service

3. Install Docker Compose

Docker Compose digunakan untuk memudahkan pengelolaan container Vaultwarden.

sudo apt install docker-compose-v2 -y

Verifikasi instalasi.

docker compose version
Gambar 2: Verifikasi Docker Compose

4. Membuat Direktori Vaultwarden

Buat direktori yang akan digunakan untuk menyimpan konfigurasi dan data Vaultwarden.

mkdir -p ~/vaultwarden
cd ~/vaultwarden

Verifikasi folder yang dibuat.

ls -l ~
Gambar 3: Verifikasi Folder

5. Membuat File Docker Compose

Buat file docker-compose.yml sebagai konfigurasi utama container Vaultwarden.

nano docker-compose.yml

Masukkan konfigurasi berikut.

version: "3.8"

services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: always
    environment:
      DOMAIN: "https://namadomain.com"
      WEBSOCKET_ENABLED: "true"
      SIGNUPS_ALLOWED: "true"
      INVITATIONS_ALLOWED: "false"
      ADMIN_TOKEN: "GANTI_DENGAN_TOKEN_YANG_DIINGINKAN"

      SMTP_HOST: "mail.namadomain.com"
      SMTP_FROM: "admin@namadomain.com"
      SMTP_FROM_NAME: "Vault"
      SMTP_PORT: "587"
      SMTP_SECURITY: "starttls"
      SMTP_USERNAME: "admin@namadomain.com"
      SMTP_PASSWORD: "password"
      SMTP_TIMEOUT: "15"

      ENABLE_PREMIUM: "true"
      ENABLE_TOTP: "true"

    volumes:
      - ./vw-data:/data

    networks:
      - vault_net

  caddy:
    image: caddy:2
    container_name: caddy
    restart: always
    ports:
      - "80:80"
      - "443:443"
    environment:
      DOMAIN: "namadomain.com"
      EMAIL: "admin@namadomain.com"
      LOG_FILE: "/data/access.log"
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile:ro
      - ./caddy-config:/config
      - ./caddy-data:/data
    networks:
      - vault_net

networks:
  vault_net:

Keterangan:

  • SMTP Settings: Gunakan alamat email dari domain Anda atau akun Gmail. Apabila menggunakan Gmail, masukkan App Password sebagai password SMTP, bukan password login akun Gmail.
  • DOMAIN: Isi dengan nama domain atau subdomain yang akan digunakan untuk mengakses Vaultwarden.
  • EMAIL: Masukkan alamat email yang akan digunakan sebagai pengirim notifikasi dari Vaultwarden.
  • ADMIN_TOKEN: Masukkan token atau password unik yang akan digunakan untuk mengakses halaman administrasi Vaultwarden. Simpan token ini dengan baik karena akan diperlukan setiap kali mengakses halaman admin.

Setelah selesai melakukan konfigurasi, simpan file dengan menekan Ctrl + X, kemudian Y, dan tekan Enter.

6. Membuat File Caddyfile

Buat file Caddyfile

nano Caddyfile

Kemudian masukkan konfigurasi berikut.

{$DOMAIN}:443 {

  log {
    level INFO
    output file {$LOG_FILE} {
      roll_size 10MB
      roll_keep 10
    }
  }

  tls {$EMAIL}

  encode gzip

  header {
    Strict-Transport-Security "max-age=31536000;"
    X-XSS-Protection "1; mode=block"
    X-Frame-Options "DENY"
    X-Robots-Tag "none"
    -Server
  }

  reverse_proxy /notifications/hub vaultwarden:3012

  reverse_proxy vaultwarden:80 {
    header_up X-Real-IP {remote_host}
  }
}

Setelah selesai melakukan konfigurasi, simpan file dengan menekan Ctrl + X, kemudian Y, dan tekan Enter.

7. Menjalankan Vaultwarden

Jalankan container Vaultwarden menggunakan Docker Compose.

sudo docker compose up -d
Gambar 4: Output Command docker composer up -d

Pastikan container telah berjalan.

sudo docker ps
Gambar 5: Output Command sudo docker ps

D. Verifikasi

Buka browser menggunakan nama domain yang digunakan pada konfigurasi vaultwarden.

Gambar 6: Halaman Login Vaultwarden

Untuk bisa login, silakan membuat akun terlebih dahulu melalui tombol “Create Account”.

Gambar 7: Klik Tombol Create Account pada Halaman Login

Masukkan alamat email dan nama yang ingin digunakan.

Gambar 8: Input Email dan Nama Akun

Buat master password dan password hint. Jika sudah klik tombol “Create Account”

Gambar 9: Input Master Password dan Password Hint

Setelah berhasil membuat akun vaultwarden coba login menggunakan akun yang telah dibuat.

Gambar 10: Login menggunakan Akun
Gambar 11: Input Password Akun Vaultwarden

Jika sudah berhasil login maka vaultwarden Anda siap digunakan.

Gambar 12: Dashboard Utama Vaultwarden

Setelah Vaultwarden berhasil dijalankan, Anda dapat mengakses halaman administrator melalui https://namadomain.com/admin. Selanjutnya, masukkan ADMIN_TOKEN yang telah ditentukan pada file docker-compose.yml di Langkah 5 untuk masuk ke panel admin.

Gambar 13: Halaman Login Panel Admin Vaultwarden

Berikut tampilan Admin panel dari Vaultwarden.

Gambar 14: Dashboard Utama Panel Admin Vaultwarden

Sebagai tambahan, apabila Vaultwarden tidak ingin digunakan oleh public dan hanya untuk kebutuhan internal atau pribadi maka dapat menonaktifkan fitur Sign Up atau Registrasi Account.

Untuk melakukan hal tersebut, akses kembali file docker-compose.yml

nano docker-compose.yml

Ubah bagian SIGNUPS_ALLOWED: “true” menjadi SIGNUPS_ALLOWED: “false”

Gambar 15: Konfigurasi untuk Disable Fitur Sign Up Account

Setelah selesai melakukan konfigurasi, simpan file dengan menekan Ctrl + X, kemudian Y, dan tekan Enter.

Selanjutnya untuk menerapkan perubahan konfigurasi jalankan ulang perintah berikut.

sudo docker compose up -d

Kemudian apabila dicoba Create Account kembali melalui portal login akan muncul notifikasi seperti berikut.

Gambar 16: Uji Coba Create Account setelah Disable Fitur Sign Up

E. Penutup

Dengan mengikuti panduan ini, Anda telah berhasil menginstal dan mengonfigurasi Vaultwarden sebagai self-hosted password manager pada VPS Ubuntu 22.04. Selanjutnya, Anda dapat mulai menyimpan dan mengelola kredensial secara terpusat melalui antarmuka web maupun aplikasi Bitwarden yang kompatibel. Untuk menjaga keamanan layanan, pastikan selalu menggunakan HTTPS, memperbarui image Vaultwarden secara berkala, serta menyimpan ADMIN_TOKEN dan data Vaultwarden di lokasi yang aman melalui proses backup rutin.

Semoga artikel ini dapat membantu Anda. Temukan bantuan lainnya melalui Knowledge Base Biznet Gio. Jika Anda masih memiliki kendala silakan hubungi Support Biznet GIO melalui email support@biznetgio.com atau live chat maupun WA ke website www.biznetgio.com dan bisa juga melalui telepon ke nomor (021) 5714567.