VaultWarden di VPS Linux sebagai Manajemen Password Self-hosted

Coba ingat kembali, bagaimana cara tim Anda saat ini berbagi akses credential penting—mulai dari password root server, login cPanel, dan yang lainnya? Apakah melalui pesan WhatsApp grup? DM Slack? Atau parahnya, tersimpan dalam satu file Excel yang dibagikan via link publik?

Jika jawabannya “Ya”, maka bisnis Anda sedang duduk di atas bom waktu keamanan.

Mengelola ratusan password secara manual bukan hanya tidak efisien, tapi juga membuka celah keamanan fatal (security breach). Satu perangkat karyawan hilang atau disusupi malware, seluruh akses vital perusahaan Anda bisa jatuh ke tangan yang salah.

Solusi standarnya biasanya adalah berlangganan layanan Password Manager komersial (seperti LastPass atau 1Password). Namun, bagi bisnis yang sedang berkembang, biaya langganan “per user/bulan” bisa membengkak menjadi angka operasional yang membebani. Belum lagi isu privasi: apakah Anda benar-benar rela mempercayakan seluruh kunci kerajaan bisnis Anda di server cloud pihak ketiga?

Vaultwarden hadir sebagai jawaban atas dilema tersebut.

Sebagai versi alternatif dari Bitwarden yang ditulis ulang, Vaultwarden menawarkan solusi Password Manager kelas enterprise yang bisa Anda host sendiri (self-hosted) di Cloud VPS.

Mengapa ini menjadi solusi terbaik?

  1. Hemat Biaya Signifikan: Tidak ada biaya langganan per pengguna. Anda hanya membayar biaya sewa VPS yang flat, tak peduli apakah tim Anda berisi 5 orang atau 50 orang.
  2. Fitur Premium Gratis: Fitur yang biasanya berbayar di Bitwarden resmi (seperti Organization Sharing dan lampiran file) tersedia gratis di sini.
  3. Data Sovereignty: Database password tersimpan aman di server Anda sendiri, terenkripsi, dan di bawah kendali penuh Anda.

Dalam panduan ini, kita akan membangun server Vaultwarden yang aman menggunakan Docker dan mengamankannya dengan SSL otomatis, menjadikan Cloud VPS Anda sebagai benteng pertahanan data yang kokoh.

Prasayarat

Sebelum memulai, pastikan Anda telah menyiapkan:

  1. Cloud VPS (Paket 1GB RAM sudah cukup untuk Vaultwarden karena sangat ringan).
  2. Domain/Subdomain (misalnya: domain.com) yang sudah diarahkan (A Record) ke IP VPS Anda.
  3. Docker yang sudah terinstrall, untuk panduan klik disini.
  4. Membuka koneksi port 443 pada UFW.

Disini kita akan coba pakai Ubuntu versi 22.04.

Konfigurasi Vaultwarden

Kita akan membungkus Vaultwarden dan Web Server (Caddy) dalam satu container environment agar rapi. Sebelumnya kita akan membuat folder kerja di VPS.

mkdir -p vaultwarden/data
cd vaultwarden

Selanjutnya, buat file docker-compose.yml. File ini adalah rancangan yang mengatur bagaimana server password manager kita berjalan dengan docker.

nano docker-compose.yml

masukan kode dibawah ini

version: '3'

services:
  vaultwarden:
    image: vaultwarden/server:latest
    container_name: vaultwarden
    restart: always
    environment:
      - WEBSOCKET_ENABLED=true
      - SIGNUPS_ALLOWED=true    # Ubah jadi 'false' setelah Anda selesai membuat akun admin
    volumes:
      - ./data:/data

  caddy:
    image: caddy:2
    container_name: caddy
    restart: always
    ports:
      - 80:80
      - 443:443
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile
      - caddy_data:/data
      - caddy_config:/config
    environment:
      - DOMAIN=https://domain.com  # GANTI DENGAN DOMAIN ANDA

volumes:
  caddy_data:
  caddy_config:

Konfigurasi SSL Otomatis (Caddyfile)

Vaultwarden wajib menggunakan HTTPS. Jika tidak, browser akan menolak koneksi enkripsi. Kita gunakan Caddy untuk menangani ini secara otomatis.

Buat file bernama Caddyfile:

nano Caddyfile

masukan baris kode ini

pass.domain.com {
    reverse_proxy vaultwarden:80
}

Deploy & Jalankan

Selanjutnya jalankan docker compose yang telah kita buat tadi.

docker compose up -d

Tunggu beberapa saat. Docker akan mendownload image, menjalankannya, dan Caddy akan otomatis meminta sertifikat SSL dari Let’s Encrypt.

Coba akses subdomain Anda di browser (https://domain.com). Jika muncul halaman login Vaultwarden yang bersih, selamat! Server Anda sudah aktif.

Tips Keamanan

Secara default, siapa saja yang tahu URL kita bisa mendaftar (Register) di server kita. Tentu kita tidak ingin server kantor dipakai orang asing, bukan?

Setelah Anda dan tim selesai membuat akun, matikan fitur pendaftaran dan Restart container:

Edit kembali file docker-compose.yml.

nano docker-compose.yml

Ubah baris SIGNUPS_ALLOWED=true menjadi false.

docker compose down && docker compose up -d

Sekarang, server kita tertutup untuk umum (Private), tapi user yang sudah ada tetap bisa login dengan normal.

Kesimpulan

Dengan mengikuti panduan ini, Anda telah berhasil membangun infrastruktur keamanan siber tingkat enterprise dengan biaya yang sangat minimal.

Menggunakan Vaultwarden di Cloud VPS memberikan Anda tiga keuntungan strategis sekaligus:

  1. Kendali Data Penuh: Database password terenkripsi ada di tangan Anda, bukan di layanan cloud pihak ketiga.
  2. Efisiensi Biaya: Menghilangkan biaya langganan bulanan per-user yang mahal.
  3. Fleksibilitas: Dapat diakses dari perangkat manapun (Android, iOS, Windows, Mac) dengan sinkronisasi real-time.

Keamanan bukanlah produk yang Anda beli, melainkan proses yang Anda bangun. Memigrasikan manajemen password tim ke server mandiri adalah langkah awal yang solid untuk menjaga kedaulatan data bisnis Anda.

Selamat mencoba!

Leave a Reply

Your email address will not be published. Required fields are marked *