Bahan yang Diperlukan:
- VPS (sudah terinstall WireGuard)
- Komputer lokal yang akan dijadikan online (sudah terinstall WireGuard)
- OS Debian/Ubuntu
Persiapan Awal
Pastikan Anda sudah melakukan konfigurasi dan instalasi VPN WireGuard. Anda dapat merujuk ke panduan berikut:
Langkah-langkah Konfigurasi:
Login ke VPS Lakukan login ke VPS Anda menggunakan SSH:
ssh user@ip_vps
Update Sistem Setelah login, lakukan update dan upgrade sistem:
sudo apt update -y && sudo apt upgrade -y
Instal Iptables Persistent Instal paket iptables-persistent
untuk mengatur aturan firewall dan port forwarding:
sudo apt install iptables-persistent
Konfigurasi Iptables Selanjutnya, Anda perlu mengedit file aturan iptables
sebagai berikut:
sudo nano /etc/iptables/rules.v4
Tambahkan konfigurasi berikut di bagian atas file:
*filter
:FORWARD ACCEPT [0:0]
-A FORWARD -p tcp -d 10.7.0.3 --dport 80 -j ACCEPT
COMMIT
*nat
:PREROUTING ACCEPT [0:0]
-A PREROUTING -p tcp --dport 81 -j DNAT --to-destination 10.7.0.3:80
-A POSTROUTING -d 10.7.0.7/32 -p tcp -m tcp --dport 1883 -j MASQUERADE
COMMIT
Restart Iptables Selanjutnya, Anda perlu merestart iptables
sebagai berikut:
sudo iptables-restore < /etc/iptables/rules.v4
sudo systemctl restart iptables
Penjelasan Konteks
Dalam konfigurasi ini kita memiliki sebuah client (komputer lokal) yang terhubung ke VPS melalui WireGuard . Dalam hal ini, 10.7.0.3
adalah alamat IP yang dialokasikan untuk client di dalam jaringan virtual VPN WireGuard. Berikut ini adalah penjelasan lebih lanjut:
- Client Lokal :
- Client lokal adalah perangkat (misalnya, komputer) yang sudah terpasang dan terkonfigurasi untuk menggunakan WireGuard .
- Saat terhubung ke VPN, client diberikan alamat IP
10.7.0.3
di dalam jaringan virtual.
- Koneksi WireGuard :
- WireGuard adalah teknologi VPN yang memungkinkan komunikasi yang aman antara client dan server.
- Client menggunakan IP
10.7.0.3
untuk berkomunikasi dengan perangkat lain di jaringan WireGuard, termasuk server VPS.
- Port 80 :
- Port 80 biasanya digunakan untuk layanan web (HTTP).
- Dalam konteks ini, client di alamat
10.7.0.3
menjalankan layanan yang mendengarkan di port 80, yang mungkin berupa aplikasi web atau server HTTP lainnya.
- Fungsi Port Forwarding :
- Konfigurasi iptables yang Anda berikan melakukan port forwarding untuk mengarahkan traffic yang masuk ke VPS pada port 81 ke port 80 di client lokal (10.7.0.3).
- Dengan demikian, jika ada permintaan HTTP yang masuk ke VPS di port 81, permintaan tersebut akan diteruskan ke client lokal (10.7.0.3) pada port 80.
Contoh Skenario
- Misalkan Anda ingin mengakses aplikasi web yang berjalan di client lokal dari internet.
- Anda dapat mengirimkan permintaan ke VPS di port 81, dan aturan NAT di VPS akan mengalihkan traffic tersebut ke client lokal (10.7.0.3:80).
- Client lokal kemudian akan merespons permintaan itu seolah-olah Anda mengakses aplikasi tersebut langsung.
Menyimpan Konfigurasi
Setelah menambahkan aturan di atas, simpan dan keluar dengan menekan CTRL + X
, lalu Y
, dan Enter
.
Verifikasi
Untuk memastikan semua konfigurasi berhasil, Anda dapat memeriksa aturan iptables dengan:
sudo iptables -t nat -L -n -v
sudo iptables -L -n -v
Kesimpulan
Anda telah berhasil melakukan konfigurasi port forwarding menggunakan WireGuard di VPS dengan iptables. Pastikan untuk menguji koneksi dari komputer lokal untuk memastikan semuanya bekerja seperti yang diharapkan.