Cloudflared Tunnel di Container MikroTik adalah cara modern yang memungkinkan Anda menghubungkan aplikasi, server, atau jaringan lokal ke internet tanpa IP Public dan Port Forwarding. Di RouterOS 7, Anda bisa menjalankannya langsung di docker container MikroTik tanpa perlu server tambahan.
Alasan Deploy Cloudflared Tunnel di Container Mikrotik
Sejak RouterOS versi 7, MikroTik menyediakan fitur Container yang memungkinkan menjalankan aplikasi docker langsung di router dan tentu saja mempunyai keuntungan seperti :
- Hemat perangkat — tidak perlu tambahan komputer server
- Konfigurasi terpusat di router.
- Expose Aplikasi Web Internal ke Internet tanpa Public IP langsung dari router gateway utama ke Cloudfare, mengurangi hop dan latency.
Syarat Install Cloudflared di Mikrotik
Sebelum memulai, pastikan :
- RouterOS v7.7 atau lebih baru.
- Paket Container aktif.
- Arsitektur router ARM, ARM64 atau x86.
- Penyimpanan cukup — disarankan USB terpisah.
- Koneksi Internet.
Contoh di artikel ini menggunakan Routerboard Hap Ac2 (RBD52G-5HacD2HnD) dan versi RouterOS v7.19.4
Cara Deploy Cloudflared Tunnel di Container MikroTik
Alur koneksi Cloudflared Tunnel di Container MikroTik client → Cloudflare Edge → MikroTik → container Cloudflared → server internal.
Metode 1 – Quick Tunnel (Token)
Metode ini paling sederhana untuk testing.
Step 1: Buat Tunnel di Cloudflare
- Login ke Cloudflare Dashboard → Zero Trust → Access → Tunnels.
- Klik Create a Tunnel → pilih Cloudflared → Docker.
- Salin token yang disediakan.
Step 2: Jalankan Container
/container/add \
remote-image=cloudflare/cloudflared \
interface=bridge1 \
root-dir=usb1-part1/container-image/cloudflared \
cmd="tunnel --no-autoupdate run --token <UUID_TUNNEL_ANDA>"
Step 3– Start Container
/container/start 0
Verifikasi di Coudflare Dahsboard – Tunnel akan berstatus Healthy
Metode 2 – Named Tunnel (Config.yml + Credentials)
Metode ini untuk deployment jangka panjang dan multi-services.
Langkah 1 – Buat Named Tunnel
- Cloudflare Dashboard → Zero Trust → Access → Tunnels.
- Create a Tunnel → beri nama (mis.
mikrotik-main) → download file credentials<UUID>.json.
Upload:
- File
<UUID>.jsonkeusb1-part1/container-data/cloudflared/conf/. - Buat file
config.ymlseperti ini:
tunnel: <UUID_TUNNEL_ANDA>
credentials-file: /etc/cloudflared/<UUID_TUNNEL_ANDA>.json
ingress:
- hostname: app.domain.com
service: http://192.168.1.10:80
- service: http_status:404
Langkah 2 – Jalankan Container
/container/add \
remote-image=cloudflare/cloudflared \
interface=bridge1 \
root-dir=usb1-part1/container-image/cloudflared \
mounts=usb1-part1/container-data/cloudflared/conf:/etc/cloudflared \
cmd="tunnel --no-autoupdate run --token <UUID_TUNNEL_ANDA>"
Langkah 3 – Start Container
/container/start 0
Troubleshooting
Tunnel tidak muncul di dashboard:
- Cek token atau UUID tunnel di command container.
- Pastikan DNS router bekerja (
/ping cloudflare.com).
Container tidak jalan:
- Aktifkan logging
/container/set numbers=0 logging=yes
- Periksa log:
/log print where message~"container"
Untuk versi ARM seperti di Hap Ac2 (RBD52G-5HacD2HnD) pull image non-official zoeyvid/cloudflared :
/container/add \
remote-image=zoeyvid/cloudflared \
interface=veth1-cloudflared \
root-dir=usb1-part1/container-image/cloudflared \
cmd="tunnel --no-autoupdate run --token <UUID_TUNNEL_ANDA>"
Kesimpulan
Dengan menjalankan Cloudflared Tunnel di Docker Container MikroTik, Anda bisa mengakses layanan internal dari mana saja tanpa risiko port terbuka.
Metode Quick Tunnel cocok untuk uji coba, sementara Named Tunnel ideal untuk deployment produksi.
Keduanya membuat jaringan lebih aman, rapi, dan mudah dikelola.