Cloudflare Tunnel

Nestero
Bismillahirrahmanirrahim

Catatan ini akan membahas tentang Cloudflare Tunnel, dari membuat tunnel, membuat konfigurasi tunnel, dan membuat service runitnya.

Apa itu Cloudflare Tunnel

Cloudflare Tunnel adalah layanan dari Cloudflare yang memungkinkan untuk menghubungkan server lokal ke internet secara aman tanpa perlu membuka port di firewall atau mengatur NAT di router. Cloudflare Tunnel dapat menghubungkan server web HTTP, server SSH, dan protokol aman lainnya ke Cloudflare.

Cara Kerja Cloudflare Tunnel

Cloudflare Tunnel membuat koneksi outbound (keluar) dari server ke jaringan Cloudflare. Jadi, tidak perlu membuka port 80 atau 443, dan server tetap aman di balik NAT atau firewall.

How it Works

Contoh Use Case

  • Akses dashboard lokal
  • Development server
  • Hosting aplikasi internal tanpa harus pakai VPN

Hal - hal yang perlu dipersiapkan

  • 1. Memiliki akun Cloudflare.
  • 2 .Memiliki Domain yang terdaftar di cloudflare, baik yang dibeli di cloudflare atau sekedar numpang parkir.

Menginstall Cloudflared

Void Linux

sudo xbps-install -S cloudflared

Binary

wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64
mv cloudflared-linux-amd64 ~/.local/bin/cloudflared
chmod +x ~/.local/bin/cloudflared

Membuat Tunnel

Login ke cloudflare tunnel

cloudflared tunnel login 
  • browser akan terbuka untuk login ke zero trust, pilih domain yang akan digunakan nantinya.

Membuat tunnel

cloudflared tunnel create nama-tunnel 
  • kredensial tunnel akan disimpan di ~/.cloudflared

Membuat konfigurasi

  • buat file ~/.cloudflared/config.yml
tunnel: nama-tunnel 
credentials-file: /home/<username>/.cloudflared/*****.json 

ingress:
  - hostname: subdomain.domain.com
    service: http://localhost:8000
  - service: http_status:404
  • sesuaikan hostname dan servicenya

Membuat DNS record

cloudflared tunnel route dns nama-tunel subdomain.domain.com

Menjalankan tunnel

cloudflared tunnel run nama-tunnel

Membuat Service Runit

Membuat folder service

sudo mkdir -p /etc/sv/cloudflare

Membuat file run, /etc/sv/cloudflare/run

#!/bin/sh

exec cloudflared tunnel --config /home/<username>/.cloudflared/config.yml run
sudo chmod +x /etc/sv/cloudflare/run

Mengaktifkan Service

sudo ln -s /etc/sv/cloudflare /var/service
sudo sv status cloudflare # cek status service 
sudo sv down cloudflare # menghentikan Service 
sudo sv up cloudflare # mengaktifkan service

Tambahan

konfigurasi tunnel untuk lebih dari satu subdomain

ingress:
  - hostname: api.domain.com
    service: http://localhost:8000
  - hostname: dashboard.domain.com
    service: http://localhost:3000
  - service: http_status:404

Kelebihan dan Kekurangan Cloudflare Tunnel

Kelebihan Cloudflare TunnelKekurangan Cloudflare Tunnel
✅ Tidak perlu buka port publik❌ Bergantung pada layanan Cloudflare
✅ Setup mudah dengan cloudflared CLI❌ Butuh domain yang pakai Cloudflare DNS
✅ Gratis untuk kebutuhan dasar❌ Setup awal bisa membingungkan untuk pemula
✅ Akses dari mana saja dengan domain custom❌ Batasan bandwidth untuk penggunaan besar (non-enterprise)
✅ Integrasi dengan DNS dan Cloudflare Access❌ Semua trafik harus melewati jaringan Cloudflare
✅ Support multi-platform (Linux, Windows, dll)❌ Tidak bisa digunakan offline

Tags:

Referensi:

Imam Az-Zuhri rahimahullah mengatakan :

Sesungguhnya yang menyebabkan ilmu hilang adalah lupa dan tidak mengulanginya.

"Sesungguhnya yang menyebabkan ilmu hilang adalah lupa dan tidak mengulanginya."

Catatan Terkait :

#semuabisaonline dengan Jetdino

Jetdino

comments powered by Disqus
Catatan Nestero

Nestero

🔥 GNU/Linux Enthusiast 🔥
🌟 Void Linux User 🌟

Catatan Terbaru :

Cloudflare Tunnel

Nestero
Catatan Nestero

Create a Hugo Theme

Nestero
Catatan Nestero

FastApi

Nestero
Catatan Nestero

Steam on Void

Nestero
Catatan Nestero