Cloudflare Tunnel via CLI

ISP kamu pakai nat, tapi pengin punya server pribadi dirumah sendiri alias self-hosted, yang dapat diakses dimana saja dan oleh siapa saja

Cloudflare Tunnel via CLI
Photo by Samuel Sng / Unsplash

Bingung, internet connection kamu ga punya ip kepala 36 (isp indihome), atau dimonopoli sama komplek perumahan kamu, tapi tetap ingin punya website pribadi dengan self hosted di rumah sendiri (bahasa gampangnya: komputer server nya dirumah kita sendiri)

Terdapat 7 langkah yang dapat kamu lakukan, disini saya memakai os Debian, oh iya, cloudflare tunnel ini free alias gratis alias Rp 0,- alias nol rupiah -tetapi- masih diperlukan kartu kredit sebagai syaratnya

Kita mulai saja

Langkah 1

Download and install cloudflared ;

Ketik

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

tekan enter

Langkah 1 dilakukan di posisi di root

Langkah 1 — SELESAI

Langkah 2

Authenticate cloudflared

Ketik

cloudflared tunnel login

Tekan enter

Akan muncul di terminal kita,

https://dash.cloudflare.com/argotunneblablablablabalabla

Link tersebut kita copas ke browser,
kemudian pilih pilih nama domain yang kita mau --> diwebkusendiri.com
kemudian klik authorize


kembali ke terminal
cek dan lihat (apakah ada) nama file (cert.pm) --> (ini wajib ada, dilihat kasat mata saja)
harus keluar tulisan
/root/.cloudflared/cert.pm --> (ini wajib ada, dilihat kasat mata saja)


Langkah 2 dilakukan di posisi di root

Langkah 2 — SELESAI

Langkah 3

Create a tunnel and give it a name

Ketik

cloudflared tunnel create <NAME>

Disini saya ketik sebagai berikut

cloudflared tunnel create makalah

Tekan enter

Untuk cara mengecek nya
ketik

cloudflared tunnel list
Langkah 3 dilakukan di posisi di root

Langkah 3 — SELESAI

Langkah 4

Create a configuration file

Pindah directory dulu yah, karena langkah 4 ini masuk kedalam kategori 'jantungnya'

ketik
cd /root/.cloudflared/
terus enter
ketik
touch config.yml
terus enter
ketik
nano config.yml

tunnel: motorkunomor123456kerensekali123loh
credentials-file: /root/.cloudflared/motorkunomor123456kerensekali123loh.json
ingress:
  - hostname: diwebkusendiri.com
    service: http://192.168.1.1:80
  - service: http_status:404

tekan
ctrl o
terus
tekan
ctrl x

Untuk cara mengecek nya
ketik

cat config.yml
Langkah 4 dilakukan di posisi di /root/.cloudflared/

Langkah 4 — SELESAI

Langkah 5

Start routing traffic

Di langkah ini, posisi kita HARUS masih di /root/.cloudflared/

Ketik

cloudflared tunnel route dns <UUID or NAME> <hostname>

Disini saya ketik sebagai berikut

cloudflared tunnel route dns makalah diwebkusendiri.com
Langkah 5 dilakukan di posisi di /root/.cloudflared/

Langkah 5 — SELESAI

Langkah 6

Run the tunnel

Di langkah ini, kita mencoba menjalankan perintah config.yml tadi dan posisi kita HARUS masih di /root/.cloudflared/ -— mengetes apakah sudah oke atau belom

ketik

cloudflared tunnel run <UUID or NAME>

Disini saya ketik sebagai berikut

cloudflared tunnel run makalah
Langkah 6 dilakukan di posisi di /root/.cloudflared/

Langkah 6 — SELESAI

Langkah 7

Run as a service

Di langkah ini, kita menginstall agar tunnel ini bisa berfungsi 'permanen'

ketik

cloudflared service install

Tekan enter
kemudian
ketik

systemctl start cloudflared

Tekan enter

kemudian untuk mengetahui tunnel ini sudah aktif atau belom
ketik

systemctl status cloudflared

Tekan enter

Note:
Apabila sudah sampai di langkah 7 -- ternyata mau ada perubahan lagi di config.yml nya – ingat selalu untuk me-restart cloudflared nya
ketik
systemctl restart cloudflared
Langkah 7 dilakukan di posisi di root

Langkah 7 — SELESAI

Apabila masih ada ketidakjelasan di setiap langkah nya, kamu dapat menghubungi saya di sini

Terima kasih