Konfigurasi IP Public Ubuntu 20.04 & 22.04 LTS diperlukan ketika server tidak memiliki IP publik langsung karena berada di balik NAT, jaringan private, atau infrastruktur internal ISP. Dengan konfigurasi IP public Ubuntu melalui VPN, server tetap dapat diakses dari internet menggunakan IP publik secara aman.
Melalui artikel ini, kita akan membahas cara konfigurasi vpn ip public ubuntu 20.04 & 22.04 menggunakan StrongSwan (IPsec) dan xl2tpd (L2TP) secara lengkap, sistematis, dan mudah dipahami, baik untuk pemula maupun level intermediate.
Apa Itu VPN IP Public?
VPN IP Public adalah koneksi VPN di mana server atau perangkat klien mendapatkan alamat IP publik dari sisi VPN server, sehingga seluruh atau sebagian trafik internet keluar menggunakan IP publik tersebut, meskipun secara fisik server berada di jaringan private atau di balik NAT, sehingga:
- IP public ter-assign ke interface VPN
- Semua trafik yang keluar bisa menggunakan IP tersebut
- Cocok untuk server cloud, RT/RW Net, dan kebutuhan ISP
Kenapa Menggunakan StrongSwan + xl2tpd?
Kombinasi ini dipilih karena:
- Stabil dan mature di Linux
- Mendukung IPsec + L2TP
- Kompatibel dengan banyak VPN server
- Performa baik untuk full-route VPN
- Mudah dikonfigurasi di Ubuntu 20.04 & 22.04
Prerequisite
Sebelum memulai, pastikan:
- Ubuntu Server 20.04 LTS atau 22.04 LTS
- Akses root / sudo
- Koneksi internet aktif
- Informasi VPN

Cara Konfigurasi IP Public di Ubuntu 20.04 & 22.04 LTS
Update System

Sebelum memulai instalasi StrongSwan dan xl2tpd, lakukan pembaruan sistem Linux terlebih dahulu. Proses ini bertujuan untuk memastikan seluruh package berada pada versi terbaru, sehingga StrongSwan dan dependensi IPsec yang terpasang merupakan versi paling stabil dan up-to-date.
sudo apt update && sudo apt upgrade -y
Instalasi StrongSwan dan xl2tpd

Pada tahap berikutnya, lakukan instalasi StrongSwan dan xl2tpd. Kedua layanan ini akan digunakan untuk mengonfigurasi VPN IP Public PerwiraMedia pada server Linux.
sudo apt install strongswan xl2tpd -y
Konfigurasi IPsec (StrongSwan)

sudo nano /etc/ipsec.secrets

Selanjutnya, buka file konfigurasi /etc/ipsec.secrets untuk menambahkan baris Pre-Shared Key (PSK). Tambahkan konfigurasi berikut:
: PSK "perwiramedia"
Agar konfigurasi lebih rapi dan mudah dibaca, Anda dapat menghapus baris lain yang tidak digunakan (baris dengan tanda #) dengan menekan Ctrl + K. Setelah selesai, simpan perubahan dengan menekan Ctrl + O, lalu keluar dari editor menggunakan Ctrl + X.

sudo nano /etc/ipsec.conf

Selanjutnya, lakukan konfigurasi pada file ipsec.conf. Anda dapat menyalin (copy–paste) script yang telah kami sediakan. Namun, pastikan untuk menyesuaikan parameter right=45.149.93.3 dengan alamat IP VPN Server PerwiraMedia yang dapat dilihat pada detail layanan Anda.
Sebagai saran, apabila file ipsec.conf sudah memiliki isi sebelumnya, hapus baris yang diawali tanda # agar konfigurasi lebih bersih dan mudah dibaca. Anda dapat menghapusnya dengan menekan Ctrl + K. Setelah konfigurasi selesai dan dipastikan sudah sesuai, simpan perubahan dengan Ctrl + O, lalu keluar dari editor menggunakan Ctrl + X.
config setup
charondebug="ike 2, knl 2, cfg 2"
uniqueids=no
conn l2tp-perwiramedia
keyexchange=ikev1
authby=secret
type=transport
left=%defaultroute
leftprotoport=17/1701
right=IP_VPN_SERVER
rightprotoport=17/1701
ike=aes128-sha1-modp1024
esp=aes128-sha1
forceencaps=yes
auto=add
Sebelum melanjutkan konfigurasi IP public Ubuntu, jika kalian menggunakan Mikrotik. Anda dapat membaca panduan Cara Mengonlinekan Server Lokal dengan IP Public Mikrotik di blog kami.
Konfigurasi L2TP (xl2tpd)

sudo nano /etc/xl2tpd/xl2tpd.conf

Pada tahap ini, Anda dapat menyalin (copy–paste) script konfigurasi yang telah disediakan.
Namun, pastikan untuk menyesuaikan parameter lns = 45.149.93.3 dengan alamat IP VPN Server PerwiraMedia sesuai dengan detail layanan yang Anda miliki.
Agar konfigurasi lebih rapi dan mudah dibaca, hapus baris yang diawali tanda # jika tidak digunakan. Setelah seluruh konfigurasi sudah sesuai, simpan perubahan dengan menekan Ctrl + O, lalu keluar dari editor menggunakan Ctrl + X.
[global]
port = 1701
[lac vpn-perwiramedia]
lns = IP_VPN_SERVER
pppoptfile = /etc/ppp/options.perwiramedia.xl2tpd.client
length bit = yes
ppp debug = yes
Config PPP di Linux

sudo nano /etc/ppp/options.perwiramedia.xl2tpd.client

Selanjutnya, buat file konfigurasi baru dengan nama options.perwiramedia.xl2tpd.client yang akan digunakan sebagai konfigurasi PPP untuk layanan VPN. Setelah file dibuat, silakan menyalin (copy–paste) script yang telah kami sediakan. Pastikan untuk menyesuaikan parameter username dan password sesuai dengan data yang tertera pada detail layanan VPN IP Public PerwiraMedia.
Setelah konfigurasi dipastikan sudah benar, simpan perubahan dengan menekan Ctrl + O, lalu keluar dari editor menggunakan Ctrl + X.
ipcp-accept-local
ipcp-accept-remote
refuse-eap
require-mschap-v2
noccp
noauth
mtu 1400
mru 1400
persist
logfile /var/log/ppp.log
connect-delay 5000
name USERNAME_VPN
password PASSWORD_VPN
Restart & Enable Services

sudo systemctl restart strongswan
atau
sudo systemctl restart strongswan-starter
sudo systemctl restart xl2tpd
Setelah seluruh konfigurasi di atas selesai, langkah berikutnya adalah me-restart layanan StrongSwan dan xl2tpd agar sistem memuat konfigurasi terbaru yang telah ditambahkan.
Tahap ini bersifat krusial, karena nama service pada sistem terkadang tidak persis sama seperti yang diperkirakan. Oleh karena itu, disarankan untuk menggunakan fitur Tab (auto-complete) saat mengetik perintah restart service guna memastikan nama service yang dijalankan sudah benar.

Sebagai tambahan, Anda juga dapat mengaktifkan layanan StrongSwan dan xl2tpd agar berjalan otomatis saat sistem melakukan reboot. Hal ini dapat dilakukan dengan perintah systemctl enable, sehingga service akan langsung aktif setelah server dinyalakan kembali.
sudo systemctl enable strongswan-starter
sudo systemctl enable xl2tpd
Establish Koneksi IPsec

sudo ipsec up l2tp-perwiramedia


Sebagai langkah terakhir, aktifkan terlebih dahulu layanan IPsec. Setelah muncul status “established successfully”, lanjutkan dengan menambahkan perintah c perwiramedia pada l2tp-control.
Perintah tersebut digunakan untuk menginisiasi koneksi L2TP sehingga perangkat dapat terhubung ke layanan VPN IP Public PerwiraMedia.
echo "c vpn-perwiramedia" | sudo tee /var/run/xl2tpd/l2tp-control
Testing dan Verifikasi Koneksi

Apabila interface ppp0 sudah muncul, hal tersebut menandakan bahwa konfigurasi VPN IP Public pada Linux telah berhasil dengan sempurna. Selanjutnya, layanan dapat diuji dengan mengakses server dari jaringan mana pun.
Dan jika ingin menonaktifkan VPN IP Public tersebut bisa gunakan command berikut.
echo "d vpn-perwiramedia" | sudo tee /var/run/xl2tpd/l2tp-control
Kesimpulan
Demikian panduan konfigurasi VPN IP Public di Ubuntu 20.04 menggunakan StrongSwan dan xl2tpd yang dapat Anda ikuti langkah demi langkah. Dengan penerapan konfigurasi yang tepat, server Ubuntu Anda dapat terhubung ke internet menggunakan IP public melalui VPN secara aman dan stabil.
Apabila selama proses konfigurasi Anda menemui kendala, error, atau membutuhkan bantuan lebih lanjut, jangan sungkan untuk menghubungi admin atau tim teknis kami. Kami siap membantu memberikan arahan dan solusi sesuai kebutuhan Anda.
Semoga panduan ini bermanfaat dan dapat menjadi referensi teknis yang membantu dalam pengelolaan server dan layanan jaringan Anda.