![](https://hub.netly.win/wp-content/uploads/2024/01/Thumbnail-NATVPS.id-3.png)
Untungnya, kita dapat menggunakan Cloudflare Tunnel untuk membuka port tanpa perlu membukanya secara terbuka (publik). Pada artikel ini, kita akan membahas mengenai penggunaan Cloudflare Tunnel untuk mengekspos port tertentu agar dapat diakses oleh publik melalui server Cloudflare.
Apa Itu Cloudflare Tunnel?
Singkatnya, Cloudflare Tunnel adalah layanan tunnel untuk menghubungkan server lokal dengan server Cloudflare, tanpa perlu untuk membuka publik port tersebut.
Ketika suatu user mengakses Cloudflare Tunnel menggunakan domain tertentu, maka server Cloudflare akan mengakses layanan yang dituju dari dalam server lokal, lalu diteruskan kembali ke user.
Karena diakses dari dalam server, maka port yang dituju tidak wajib dibuat publik, sehingga tetap menjaga keamanan dari port tersebut, dari DDoS misalnya. Dan juga, Cloudflare Tunnel dapat menjadi solusi untuk mempublikasikan sebuah layanan localhost (seperti web server) agar dapat diakses dari mana saja.
Cloudflare Tunnel tidak hanya mendukung web server tapi juga port TCP, SSH, Websocket, dan masih banyak lagi.
Persyaratan Penggunaan
Beberapa persyaratan untuk dapat menggunakan Cloudflare Tunnel adalah:
- Harus memiliki domain aktif: Cloudflare Tunnel memerlukan domain aktif
- Domain telah dihubungkan ke Cloudflare: Domain yang akan digunakan untuk Cloudflare Tunnel harus telah dihubungkan ke layanan DNS Cloudflare (mengganti nameserver ke server Cloudflare).
Instalasi Cloudflare Tunnel (cloudflared)
Sebelum dapat menggunakan layanan tunnel, kita harus memasang sebuah layanan bernama cloudflared di server yang akan dipublikasikan port nya. cloudflared inilah yang akan menjadi penghubung antara Cloudflare dan server kita.
Pertama-tama, buka dashboard Cloudflare One (https://one.dash.cloudflare.com).
Buka Tab Access lalu pilih Tunnel.
Pilih Create a tunnel untuk membuat layanan tunnel baru.
Anda akan diminta untuk memasukkan nama tunnel. Silahkan masukkan nama bebas, contoh: testunnel.
Masuk pada tahap Install and run a connector. Pada Choose your environment, pilih sistem operasi server Anda beserta arsitektur nya.
Anda juga dapat menggunakan Docker.
Geser ke bawah lalu salin kode perintah di sebelah kiri.
Tempel dan eksekusi pada server Anda.
Jika tidak ada error, maka cloudflared berhasil dipasang.
Contoh Penggunaan di NAT VPS
Semisal kita mempunyai sebuah web server yang berjalan di port 3000 dengan domain testunnel.nvps.my.id, dan ingin dibuat publik menggunakan Cloudflare Tunnel.
Buka Tab Public Hostname -> Add a public hostname
- Subdomain:Jika ingin menggunakan subdomain (contoh: testunnel.nvps.my.id), masukkan disini
- Domain Pilih domain yang akan digunakan untuk tunnel
- Path: Jika ingin tunnel berada di URI path (misal /tunnel), masukka disini
- Type: Protokol layanan yang ingin di-tunnel. Untuk web server gunakan HTTP (port 80) atau HTTPS (port 443).
- URL: Alamat URL layanan yang dapat diakses dari dalam server. Misal, 127.0.0.1:3000. cloudflared dalam server akan mengakses alamat tersebut dari dalam server, sehingga 127.0.0.1 tersebut merupakan alamat yang berada di server.
Selesai! Sekarang, ketika Anda mengakses testunnel.nvps.my.id, yang akan tampil adalah layanan web server yang berada di server dengan alamat 127.0.0.1:3000.