
Kadang kita butuh layanan di laptop atau VPS lokal bisa diakses dari internet — demo ke teman, webhook, atau dashboard pribadi. Kalau tidak punya IP publik, SSH reverse tunnel adalah jawabannya.
Perintah dasarnya satu baris: ssh -R 80:localhost:3000 user@server. Server akan meneruskan port 80-nya ke port 3000 di mesin lokalmu. Masalahnya: koneksi SSH bisa putus kapan saja.
Solusi paling rapi di Linux adalah systemd. Buat unit service dengan Restart=always dan RestartSec yang membesar (backoff), supaya tunnel mencoba lagi otomatis setiap gagal.
[Unit] Description=Reverse tunnel ke server After=network-online.target [Service] ExecStart=/usr/bin/ssh -N -R 80:127.0.0.1:3000 user@server Restart=always RestartSec=10 [Install] WantedBy=multi-user.target
Aktifkan dengan systemctl enable --now tunnel.service, dan tunnel akan hidup setiap boot serta bangkit sendiri saat putus. Tambahkan script kecil untuk mencatat URL publik ke file, supaya kamu selalu tahu alamat terbarunya.
Pola ini saya pakai untuk mengekspos dashboard lokal — sederhana, tanpa software tambahan, dan sudah terbukti stabil berhari-hari.
