Seiring meningkatnya penggunaan VPS untuk hosting website, aplikasi, dashboard monitoring, hingga layanan self-hosted seperti Proxmox, Grafana, dan Nextcloud, keamanan menjadi salah satu aspek yang tidak boleh diabaikan.

Banyak administrator masih mengakses layanan mereka dengan membuka port publik seperti 80, 443, 8080, atau bahkan 8006 untuk Proxmox. Cara ini memang mudah, tetapi juga meningkatkan risiko serangan seperti brute force, port scanning, exploit terhadap aplikasi, dan kebocoran alamat IP server.

Salah satu solusi modern yang banyak digunakan adalah Cloudflare Zero Trust yang dikombinasikan dengan Cloudflare Tunnel. Teknologi ini memungkinkan layanan di VPS tetap dapat diakses dari internet tanpa harus membuka port aplikasi ke publik.

Dengan Cloudflare Zero Trust, administrator dapat:

Artikel ini membahas langkah-langkah implementasi Cloudflare Zero Trust pada VPS berbasis Linux secara lengkap, mulai dari instalasi hingga troubleshooting.

Persiapan Sebelum Instalasi

Sebelum memulai konfigurasi, pastikan tersedia:

Kebutuhan Sistem


Tutorial Konfigurasi Cloudflare Zero Trust

1. Mengaktifkan Cloudflare Zero Trust

Login ke dashboard Cloudflare.

Pilih menu:

Zero Trust

Jika baru pertama kali menggunakan layanan ini, Cloudflare akan meminta pembuatan organisasi.

Contoh:

Nama Organisasi: homelab

Pilih paket Free karena sudah cukup untuk sebagian besar kebutuhan VPS pribadi.


2. Menginstal Cloudflared di VPS

Perbarui repository sistem:

sudo apt update
sudo apt upgrade -y

Unduh paket cloudflared:

wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb

Install paket:

sudo dpkg -i cloudflared-linux-amd64.deb

Verifikasi instalasi:

cloudflared --version

Jika berhasil akan muncul informasi versi cloudflared.


3. Menghubungkan VPS ke Akun Cloudflare

Jalankan perintah:

cloudflared tunnel login

Sistem akan menghasilkan URL autentikasi.

Contoh:

https://dash.cloudflare.com/argotunnel?token=xxxx
Buka URL tersebut melalui browser.

Pilih domain yang akan digunakan untuk tunnel. Setelah proses selesai, file sertifikat akan tersimpan secara otomatis pada VPS.


4. Membuat Tunnel Baru

Buat tunnel dengan nama yang mudah dikenali:

cloudflared tunnel create vps-tunnel

Contoh hasil:

Created tunnel vps-tunnel
Tunnel ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Catat Tunnel ID tersebut karena akan digunakan pada konfigurasi berikutnya.


5. Membuat DNS Record Otomatis

Misalnya ingin membuat subdomain:

grafana.domainanda.com

Jalankan:

cloudflared tunnel route dns vps-tunnel grafana.domainanda.com

Cloudflare akan membuat DNS record secara otomatis.


6. Membuat File Konfigurasi Tunnel

Buat direktori konfigurasi:

sudo mkdir -p /etc/cloudflared

Buat file konfigurasi:

sudo nano /etc/cloudflared/config.yml

Isi file:

tunnel: TUNNEL-ID
credentials-file: /root/.cloudflared/TUNNEL-ID.json

ingress:
  - hostname: grafana.domainanda.com
    service: http://localhost:3000
  - service: http_status:404

Ganti:

Simpan konfigurasi.


7. Menjalankan Tunnel Sebagai Service

Install service:

sudo cloudflared service install

Aktifkan service:

sudo systemctl enable cloudflared
sudo systemctl start cloudflared

Periksa status:

sudo systemctl status cloudflared

Jika muncul:

active (running)

berarti tunnel sudah berjalan normal.


8. Menambahkan Proteksi Login dengan Zero Trust Access

Masuk ke dashboard Zero Trust.

Pilih:

Access
→ Applications
→ Add Application

Pilih:

Self-hosted

Masukkan hostname:

grafana.domainanda.com

Klik Next.


9. Membuat Access Policy

Contoh hanya memperbolehkan email tertentu:

Action : Allow
Include :
Email
[email protected]

Atau seluruh domain perusahaan:

Action : Allow
Include :
Email Domain
perusahaan.com

Simpan konfigurasi.

Sekarang setiap pengguna harus melakukan autentikasi sebelum mengakses aplikasi.


10. Konfigurasi untuk Proxmox

Jika ingin mengamankan panel Proxmox:

- hostname: proxmox.domainanda.com
  service: https://192.168.1.10:8006
  originRequest:
    noTLSVerify: true

Kemudian tambahkan aplikasi baru pada Cloudflare Access menggunakan hostname tersebut.

Dengan konfigurasi ini, panel Proxmox tidak lagi diekspos langsung ke internet.

Problem dan Solusi

Problem 1: Tunnel Tidak Mau Berjalan

Gejala

systemctl status cloudflared
menampilkan:
failed

Penyebab

Solusi

Validasi konfigurasi:

cloudflared tunnel ingress validate

Pastikan lokasi file credential benar.


Problem 2: Domain Tidak Bisa Diakses

Gejala

Browser menampilkan:

Host Not Found

Penyebab

DNS record belum dibuat.

Solusi

Periksa DNS:

cloudflared tunnel route dns vps-tunnel subdomain.domain.com

Pastikan record muncul pada dashboard DNS Cloudflare.


Problem 3: Error 502 Bad Gateway

Gejala

Cloudflare menampilkan:

502 Bad Gateway

Penyebab

Aplikasi tujuan tidak berjalan.

Solusi

Pastikan service aktif:

sudo systemctl status grafana-server

atau

docker ps

Pastikan port yang dituju sesuai dengan konfigurasi ingress.


Problem 4: Login Cloudflare Berulang-Ulang

Penyebab

Cookie browser diblokir.

Solusi


Problem 5: Proxmox Tidak Bisa Login

Penyebab

Proxmox menggunakan sertifikat self-signed.

Solusi

Tambahkan parameter:

originRequest:
  noTLSVerify: true

Kemudian restart cloudflared:

sudo systemctl restart cloudflared

Best Practice Keamanan

Untuk meningkatkan keamanan VPS, beberapa rekomendasi berikut dapat diterapkan:

  • Gunakan autentikasi dua faktor (2FA) pada akun Cloudflare.
  • Batasi akses hanya untuk email tertentu.
  • Nonaktifkan password login SSH dan gunakan SSH Key.
  • Rutin memperbarui sistem operasi VPS.
  • Gunakan firewall seperti UFW.
  • Jangan membuka port aplikasi ke internet jika sudah menggunakan Cloudflare Tunnel.
  • Monitoring log akses secara berkala.

Kesimpulan

Cloudflare Zero Trust merupakan solusi modern untuk mengamankan layanan yang berjalan pada VPS tanpa harus membuka port publik. Dengan memanfaatkan Cloudflare Tunnel, administrator dapat menyembunyikan alamat IP server sekaligus memberikan lapisan autentikasi tambahan sebelum pengguna mengakses aplikasi.

Implementasi ini sangat cocok digunakan untuk berbagai layanan seperti Proxmox, Grafana, Portainer, Nextcloud, Home Assistant, maupun aplikasi internal perusahaan. Selain meningkatkan keamanan, konfigurasi ini juga mempermudah pengelolaan akses karena seluruh autentikasi dapat dikontrol langsung melalui dashboard Cloudflare Zero Trust.

Bagi pengguna VPS pribadi maupun administrator infrastruktur skala kecil hingga menengah, Cloudflare Zero Trust menjadi salah satu solusi yang efektif, gratis untuk kebutuhan dasar, dan relatif mudah diimplementasikan.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *