vpsport forwardingiptableshaproxynetworkingtutorialhosting

Cara Port Forwarding di VPS: Panduan Lengkap HTTP, TCP & UDP

Tim Helipod

5 menit baca

Pelajari cara port forwarding di VPS Helipod untuk mengakses aplikasi dari internet. Panduan lengkap untuk HTTP/HTTPS, TCP, dan UDP port forwarding.

Port forwarding adalah teknik jaringan yang memungkinkan Anda mengakses aplikasi yang berjalan di dalam VPS dari internet. Di Helipod, port forwarding dikonfigurasi langsung melalui dashboard tanpa perlu perintah manual di terminal.

Apa itu Port Forwarding?

Port forwarding (juga dikenal sebagai port mapping) adalah proses mengarahkan lalu lintas dari port eksternal server ke port internal di dalam VPS. Misalnya, aplikasi Node.js berjalan di port 3000 di dalam VPS, tetapi Anda ingin mengaksesnya dari port 8080 di IP publik server.

Internet → Server IP:8080 → VPS Internal:3000

Port Range di Helipod

Setiap VPS di Helipod memiliki rentang port yang dapat digunakan. Rentang port ini ditampilkan di tab Network di dashboard VPS Anda.

  • Port Eksternal: Harus berada dalam rentang yang ditentukan (kecuali HTTP/HTTPS)
  • Port Internal: Port di mana aplikasi berjalan di dalam VPS

Jenis Port Forwarding

1. TCP/UDP Port Forwarding

Untuk aplikasi non-HTTP seperti:

  • Game server (Minecraft, Valheim, dll)
  • Database (MySQL, PostgreSQL, Redis)
  • Aplikasi custom yang menggunakan TCP/UDP

Cara konfigurasi:

  1. Buka dashboard VPS → tab Network
  2. Klik Add Port
  3. Pilih protokol: TCP, UDP, atau TCP + UDP
  4. Masukkan Port Eksternal (harus dalam rentang port VPS)
  5. Masukkan Port Internal (port aplikasi di dalam VPS)
  6. Klik Add

Contoh kasus: MySQL berjalan di port 3306 di dalam VPS, Anda ingin mengaksesnya dari port 33060 di IP publik.

External: 33060 → Internal: 3306 (MySQL)

2. HTTP/HTTPS Port Forwarding

Untuk aplikasi web yang menggunakan domain:

  • Web server (Nginx, Apache)
  • Aplikasi Node.js/Python/Go
  • API server

Cara konfigurasi:

  1. Buka dashboard VPS → tab Network
  2. Klik Add Port
  3. Pilih protokol: HTTP (port 80) atau HTTPS (port 443)
  4. Masukkan Domain Anda
  5. Masukkan Port Internal (port aplikasi di dalam VPS)
  6. Klik Add

Contoh kasus: Aplikasi Next.js berjalan di port 3000, Anda ingin mengaksesnya melalui https://example.com.

https://example.com → VPS Internal:3000 (Next.js)

Catatan: Untuk HTTP/HTTPS, port eksternal otomatis ditetapkan ke 80 atau 443. Anda tidak perlu (dan tidak bisa) mengubah port eksternal.

Contoh Konfigurasi untuk Berbagai Aplikasi

Node.js/Express App

// Aplikasi berjalan di port 3000
app.listen(3000, () => {
  console.log('Server running on port 3000');
});

Konfigurasi di Helipod:

  • Protocol: HTTP atau HTTPS
  • Domain: app.andadomain.com
  • Internal Port: 3000

MySQL Database

# MySQL berjalan di port 3306
sudo systemctl status mysql

Konfigurasi di Helipod:

  • Protocol: TCP
  • External Port: 33060 (atau port lain dalam rentang)
  • Internal Port: 3306

Minecraft Server

# Minecraft berjalan di port 25565
java -Xmx1024M -Xms1024M -jar server.jar nogui

Konfigurasi di Helipod:

  • Protocol: TCP + UDP
  • External Port: 25565
  • Internal Port: 25565

PostgreSQL Database

# PostgreSQL berjalan di port 5432
sudo systemctl status postgresql

Konfigurasi di Helipod:

  • Protocol: TCP
  • External Port: 54320
  • Internal Port: 5432

Tips Penting

1. Cek Port Yang Sudah Digunakan

Sebelum menambahkan port forwarding, pastikan port belum digunakan oleh aplikasi lain di dalam VPS:

# Cek port yang sedang digunakan
sudo netstat -tlnp
# atau
sudo ss -tlnp

2. Firewall di VPS

Pastikan firewall di dalam VPS mengizinkan lalu lintas pada port yang dikonfigurasi:

# UFW (Ubuntu)
sudo ufw allow 3000/tcp

# firewalld (CentOS/RHEL)
sudo firewall-cmd --permanent --add-port=3000/tcp
sudo firewall-cmd --reload

3. Binding Aplikasi

Pastikan aplikasi bound ke 0.0.0.0 atau all interfaces, bukan hanya 127.0.0.1:

// ❌ Salah - hanya bisa diakses dari localhost
app.listen(3000, '127.0.0.1');

// ✅ Benar - bisa diakses dari luar
app.listen(3000, '0.0.0.0');
// atau
app.listen(3000);

4. Domain untuk HTTP/HTTPS

Untuk HTTP/HTTPS, Anda perlu mengarahkan DNS domain Anda ke IP VPS:

Type: A Record
Name: @ atau subdomain
Value: IP Address VPS Anda
TTL: Auto

Troubleshooting

Aplikasi Tidak Bisa Diakses

  1. Cek status aplikasi: Pastikan aplikasi berjalan di port yang benar
  2. Cek port forwarding: Pastikan port sudah ditambahkan di dashboard
  3. Cek firewall: Pastikan firewall mengizinkan akses
  4. Cek binding: Pastikan aplikasi bound ke 0.0.0.0
# Cek apakah port terbuka dari luar
curl -v http://IP_VPS:PORT

Port Sudah Digunakan

Jika port sudah digunakan oleh aplikasi lain:

# Cari proses yang menggunakan port
sudo lsof -i :PORT
# atau
sudo netstat -tlnp | grep :PORT

# Hentikan proses jika perlu
sudo kill PID_PROSES

Koneksi Timeout

Kemungkinan penyebab:

  • Firewall memblokir lalu lintas
  • Aplikasi tidak berjalan
  • Port forwarding belum aktif (butuh beberapa detik)
# Test koneksi dari dalam VPS
telnet localhost PORT

Ringkasan

Protocol Port Eksternal Penggunaan
TCP Custom (dalam rentang) Database, Game Server, Aplikasi Custom
UDP Custom (dalam rentang) Game Server, VPN, DNS
TCP + UDP Custom (dalam rentang) Game Server yang butuh kedua protocol
HTTP 80 (otomatis) Website, API
HTTPS 443 (otomatis) Website, API (dengan SSL)

Port forwarding di Helipod dirancang untuk kemudahan penggunaan. Anda tidak perlu memahami IPTables atau HAProxy secara manual - cukup konfigurasi melalui dashboard dan sistem kami akan mengurus sisanya.


Butuh bantuan? Hubungi support kami di [email protected] atau kunjungi docs.helipod.io.

Siap coba Helipod?

Deploy aplikasi kamu sekarang. Gratis, tanpa kartu kredit.

Mulai Gratis →
WhatsApp