Cover
Foto profil

Bembi Pramudya

@bembipramudya

Halo! Saya Bembi Pramudya, developer dari Indonesia. Saya menghabiskan waktu luang untuk membangun software, ngoprek web tools, dan eksplorasi desain frontend.

DeveloperIndonesiabembi.dev
Tutorial

SSH Reverse Tunnel yang Selalu Hidup dengan systemd

15 Sep 2026 · 5 menit baca

SSH Reverse Tunnel yang Selalu Hidup dengan systemd

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.