Cara Menyembunyikan IP Asli Server FiveM Menggunakan Proxy

Panduan menyembunyikan IP asli server FiveM di balik proxy TCP/UDP: konfigurasi server.cfg, firewall yang hanya menerima trafik dari proxy, daftar kebocoran IP yang sering terlewat, dan apa yang tidak bisa dilakukan proxy.

6 menit baca FiveM

Begitu server FiveM mulai ramai, IP server ikut jadi incaran. Orang yang tahu IP asli (origin) servermu bisa menyerangnya langsung, memindai port lain di mesin yang sama, atau sekadar mengganggu di jam ramai. Cara paling umum untuk mengurangi risiko itu adalah menaruh server di balik IP proxy: pemain connect ke IP proxy, proxy meneruskan trafik ke servermu, dan IP origin tidak pernah dibagikan.

Tapi proxy hanya setengah pekerjaan. Kalau IP origin masih bocor lewat jalur lain, atau firewall origin masih menerima koneksi dari siapa pun, proxy tidak banyak membantu. Panduan ini membahas setup lengkapnya: konfigurasi server.cfg, firewall allowlist, daftar kebocoran IP yang sering terlewat, dan batasan proxy yang perlu kamu tahu sebelum mengandalkannya.

Cara kerja proxy untuk FiveM

Proxy yang dibahas di sini adalah proxy di level jaringan (NAT forwarding), bukan proxy HTTP. Proxy menerima paket di port tertentu, misalnya 30120 TCP dan UDP, lalu meneruskannya ke IP dan port servermu. Balasan dari server kembali lewat proxy yang sama.

Pemain  ──►  PROXY_IP:30120  ──►  ORIGIN_IP:30120 (FXServer)
Pemain  ◄──  PROXY_IP:30120  ◄──  ORIGIN_IP:30120

Dari sisi pemain, yang terlihat hanya PROXY_IP. Dari sisi FXServer, semua koneksi datang dari PROXY_IP juga. Konsekuensi kedua ini penting dan akan kita bahas di bagian batasan.

Untuk FiveM, port yang perlu diteruskan adalah 30120 TCP dan UDP (atau port lain kalau kamu mengubah endpoint_add_tcp dan endpoint_add_udp). Port txAdmin (40120) jangan diteruskan lewat proxy. Panel admin tidak perlu bisa diakses publik.

Langkah setup proxy secara detail ada di cara menggunakan IP proxy untuk server FiveM. Di artikel ini kita fokus ke sisi keamanan: memastikan IP origin benar-benar tersembunyi.

Langkah 1: umumkan IP proxy di server.cfg

Secara default, server list FiveM menampilkan IP yang dipakai FXServer saat mendaftar ke Cfx.re, yaitu IP origin. Dua baris ini membuat server list menampilkan IP proxy:

set sv_forceIndirectListing true
set sv_listingIpOverride "PROXY_IP"

Ganti PROXY_IP dengan IP proxy kamu, lalu restart server. Setelah itu, bagikan ke pemain hanya alamat connect PROXY_IP:30120 atau link join dari server list.

Cara cek: buka halaman server kamu di server list, lalu lihat endpoint yang ditampilkan saat connect. Kalau masih muncul IP origin, cek ulang ejaan convar dan pastikan server sudah direstart, bukan hanya di-refresh resource-nya.

Langkah 2: kunci firewall origin

Ini langkah yang paling sering dilupakan. Selama port 30120 di origin masih terbuka untuk semua orang, siapa pun yang mengetahui IP origin tetap bisa connect atau menyerang langsung, melewati proxy. Tujuan kita: port game di origin hanya menerima trafik dari IP proxy.

Contoh dengan ufw

# izinkan SSH dulu supaya tidak terkunci (sesuaikan port/IP admin kamu)
sudo ufw allow from ADMIN_IP to any port 22 proto tcp

# port game hanya dari proxy
sudo ufw allow from PROXY_IP to any port 30120 proto tcp
sudo ufw allow from PROXY_IP to any port 30120 proto udp

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw enable
sudo ufw status numbered

Contoh dengan nftables

table inet filter {
  chain input {
    type filter hook input priority 0; policy drop;

    iif "lo" accept
    ct state established,related accept

    # SSH hanya dari IP admin
    ip saddr ADMIN_IP tcp dport 22 accept

    # FiveM hanya dari proxy
    ip saddr PROXY_IP tcp dport 30120 accept
    ip saddr PROXY_IP udp dport 30120 accept
  }
}

Simpan sebagai /etc/nftables.conf, jalankan sudo nft -c -f /etc/nftables.conf untuk cek sintaks, lalu sudo systemctl enable --now nftables. Selalu uji dari sesi SSH kedua sebelum menutup sesi pertama, supaya kalau salah aturan kamu tidak terkunci dari server sendiri.

Kalau kamu memakai Game CDN, ingat bahwa node CDN juga mengambil file dari /files/ di port 30120 (TCP). Tambahkan IP node CDN ke allowlist TCP 30120, atau CDN tidak bisa mengisi cache.

Akses txAdmin tanpa membuka port

Setelah port 40120 ditutup, akses txAdmin lewat SSH tunnel:

ssh -L 40120:127.0.0.1:40120 user@ORIGIN_IP

Lalu buka http://localhost:40120 di browser. Alternatif lain: VPN seperti WireGuard, atau allowlist port 40120 hanya untuk IP admin.

Langkah 3: tutup jalur kebocoran IP

IP origin bisa bocor dari banyak tempat selain server list. Periksa satu per satu:

  • Record DNS lama. Kalau dulu play.namaserver.com mengarah ke IP origin, layanan riwayat DNS publik mungkin masih menyimpannya. Arahkan record ke IP proxy, dan pertimbangkan bahwa IP lama sudah "terbakar".
  • Link connect lama. Pesan Discord, pin channel, banner, atau postingan forum yang berisi connect ORIGIN_IP. Hapus atau edit semuanya.
  • txAdmin dan panel lain. Port 40120, panel database (phpMyAdmin, Adminer), atau panel hosting yang terbuka di IP yang sama langsung membuka identitas mesin.
  • Layanan lain di IP yang sama. Website, bot Discord dengan endpoint publik, API custom, atau server game lain. Kalau website di-host di mesin yang sama, IP-nya sama dengan origin.
  • Port database. MariaDB/MySQL (3306) seharusnya hanya mendengarkan di 127.0.0.1. Ini bukan hanya soal kebocoran IP, tapi juga keamanan data. Cek bind-address di konfigurasi MariaDB.
  • Request HTTP keluar dari resource. Script yang memanggil webhook Discord, API eksternal, atau layanan analytics mengirim request dari IP origin. Pihak ketiga itu, dan siapa pun yang punya akses ke log mereka, bisa melihat IP tersebut. Kalau server berisi script dari sumber tidak jelas, request keluar bisa jadi jalur kebocoran yang disengaja.
  • Email dari server. Header email yang dikirim langsung dari origin memuat IP pengirim.

Cara cepat mengecek port yang terbuka di origin dari luar (jalankan dari mesin lain, terhadap servermu sendiri):

nmap -Pn -p 22,3306,30120,40120 ORIGIN_IP
nmap -Pn -sU -p 30120 ORIGIN_IP

Setelah firewall terpasang, hasil dari mesin selain proxy dan IP admin seharusnya filtered untuk semua port.

Kalau IP origin sudah terlanjur bocor

Menyembunyikan IP yang sudah diketahui orang tidak efektif. Firewall allowlist tetap membantu, karena koneksi langsung ke port game akan ditolak, tapi serangan volumetrik ke IP origin tetap bisa memenuhi uplink server sebelum firewall sempat bekerja. Dalam kasus itu, opsi yang realistis adalah berganti IP origin (minta IP baru ke penyedia atau pindah server), lalu memastikan IP baru tidak pernah dipublikasikan sejak hari pertama.

Batasan proxy yang perlu kamu tahu

Server tidak melihat IP asli pemain

Pada proxy NAT, semua koneksi sampai ke FXServer dengan IP proxy. Akibatnya:

  • Ban berbasis IP tidak bisa membedakan pemain. Ban satu IP sama dengan ban semua pemain. Pakai identifier akun seperti license, discord, atau fivem untuk ban.
  • Log IP di server tidak berguna untuk investigasi multi-akun. Sesuaikan script anticheat atau logging yang mengandalkan IP.
  • Rate limit per IP di resource custom akan menganggap semua pemain sebagai satu klien.

Proxy bukan anti-DDoS

Proxy menyembunyikan IP origin, tapi tidak otomatis menyerap serangan. Kalau seseorang menyerang IP proxy dengan trafik yang melebihi kapasitas port atau jaringan proxy, pemain tetap terganggu. Yang kamu dapat adalah origin yang tidak bisa disasar langsung dan kemampuan mengganti titik masuk tanpa memindahkan server. Kalau kebutuhanmu adalah mitigasi DDoS aktif, cari layanan yang memang menyediakan proteksi di jaringannya, dan baca cara memilih hosting FiveM anti-DDoS.

Latency bisa naik atau turun

Trafik melewati satu hop tambahan. Kalau proxy berada di jalur yang searah (misalnya pemain di Indonesia, proxy di Jakarta, origin di Singapore), tambahan latensinya bisa kecil, dan kadang rute lewat proxy justru lebih stabil. Kalau proxy berada jauh dari jalur pemain ke origin, ping akan naik. Selalu ukur sebelum dan sesudah. Panduannya ada di cara menguji koneksi FiveM dengan MTR.

Checklist akhir

  1. Proxy meneruskan 30120 TCP + UDP, port 40120 tidak diteruskan.
  2. sv_forceIndirectListing dan sv_listingIpOverride aktif, server sudah direstart.
  3. Firewall origin: 30120 hanya dari IP proxy (dan IP CDN untuk TCP kalau dipakai), SSH hanya dari IP admin, sisanya drop.
  4. Database hanya mendengarkan di localhost.
  5. DNS, link connect, dan postingan lama sudah diganti ke IP proxy.
  6. Ban dan logging sudah memakai identifier, bukan IP.
  7. Scan port dari luar menunjukkan semua port origin filtered.

FAQ

Apakah cukup memakai Cloudflare untuk menyembunyikan IP FiveM?

Proxy Cloudflare biasa hanya untuk HTTP/HTTPS. Trafik gameplay FiveM berjalan di TCP dan UDP 30120, jadi butuh proxy yang meneruskan TCP dan UDP, bukan proxy web.

Apakah pemain bisa menemukan IP origin lewat F8 atau client?

Kalau server list dan connect memakai IP proxy, client hanya berkomunikasi dengan proxy. Kebocoran biasanya datang dari jalur lain di daftar di atas, bukan dari client.

Bisakah saya memakai lebih dari satu proxy?

Bisa, misalnya satu di Jakarta dan satu di Singapore yang sama-sama meneruskan ke origin. Tambahkan semua IP proxy ke allowlist firewall. Server list hanya menampilkan satu IP override, jadi proxy lain dibagikan sebagai alamat connect alternatif.

Apakah proxy membuat server lebih aman dari cheater?

Tidak. Proxy bekerja di level jaringan. Cheat berjalan di client dan berkomunikasi lewat koneksi game biasa. Anticheat tetap urusan resource dan konfigurasi server.

Penutup

Menyembunyikan IP server FiveM butuh tiga hal sekaligus: proxy yang meneruskan trafik game, firewall origin yang hanya menerima trafik dari proxy, dan disiplin menutup semua jalur kebocoran. Tanpa salah satunya, IP origin cepat atau lambat akan ditemukan.

Sebagai keterbukaan: Noctis menjual layanan IP Proxy. Setiap proxy adalah node Akamai Cloud (Linode) dengan IPv4 khusus di Jakarta atau Singapore, meneruskan TCP dan UDP sampai 32 aturan port, dan tujuan atau port bisa diganti dari panel dengan IP proxy yang tetap. Proxy ini tidak menyertakan anti-DDoS, dan server kamu akan melihat IP proxy, bukan IP pemain. Kalau itu sesuai kebutuhanmu, lihat paket dan detailnya di IP Proxy Noctis.

Gabung Discord