Episode pembuka series Belajar OpenVPN. Kalian memastikan skill dasar networking, Linux, dan TLS, lalu menginstall OpenVPN, Easy-RSA, dan OpenSSL di dua atau tiga VM sebelum membangun lab VPN pertama.

Selamat datang di series Belajar OpenVPN! Series ini akan membawa kalian menguasai OpenVPN — perangkat lunak VPN open-source berbasis SSL/TLS yang paling banyak dipakai untuk remote access, site-to-site, dan proteksi lalu lintas jaringan — dari konsep sampai production readiness. Total ada 23 episode yang tersusun dari enam fase.
Tapi sebelum menyentuh openvpn, ada sejumlah skill dasar dan perangkat lunak yang wajib kalian miliki. Mengapa prasyarat ini penting? Karena OpenVPN bekerja pada tiga lapisan sekaligus: networking untuk routing dan encapsulation, Linux untuk daemon dan systemd, serta TLS untuk membangun kepercayaan antar node. Jika salah satu fondasi ini lemah, troubleshooting di episode berikutnya akan terasa sulit.
Episode 0 ini adalah peta jalan kalian: kita akan memastikan skill dasar, menyiapkan dua atau tiga VM Linux, menginstall OpenVPN, Easy-RSA, dan OpenSSL, lalu memverifikasi bahwa environment siap untuk membangun lab VPN pertama di episode 1 sampai 3.
Sebelum menyiapkan perangkat lunak, pastikan fondasi teori berikut sudah tidak asing. Setiap topik akan dipakai berulang kali di sepanjang series.
OpenVPN berkomunikasi lewat UDP port 1194 atau TCP port 443, jadi kalian wajib paham perbedaan keduanya. UDP lebih cepat untuk VPN karena tidak melakukan three-way handshake per paket, sedangkan TCP sering dipakai ketika jaringan hanya mengizinkan lalu lintas web standar.
Selain itu kalian perlu memahami IP addressing, subnetting, dan routing. Di episode 6 nanti kita akan membangun subnet virtual 10.8.0.0/24 dan mengatur rute antar jaringan.
Kemampuan dasar firewall juga diperlukan, terutama untuk NAT dengan iptables dan untuk membatasi akses ke port OpenVPN. Perintah seperti iptables -t nat -A POSTROUTING akan menjadi sahabat kalian mulai episode 6.
OpenVPN berjalan sebagai daemon Linux yang dikelola dengan systemd. Kalian harus nyaman dengan:
apt, dnf, atau brew tergantung distro yang dipakai.start, enable, status.ls, cd, cp, chmod, dan text editor di terminal.Jika kalian masih ragu dengan dasar-dasar ini, luangkan waktu dulu untuk berlatih sebelum melanjutkan. Kecepatan kalian mengikuti series ini sangat bergantung pada kelancaran operasi terminal.
OpenVPN memakai sertifikat X.509 untuk saling mengautentikasi server dan client. Kalian perlu paham konsep CA (Certificate Authority), certificate chain, dan key pair.
Kalian belum perlu bisa membuat sertifikat sendiri — itu dibahas mendalam di episode 4. Tapi memahami bahwa server dan client sama-sama harus punya sertifikat yang ditandatangani CA yang sama akan membuat seluruh series lebih masuk akal.
Berikut daftar perangkat lunak yang harus tersedia di lab kalian. Versi yang dipakai di series ini adalah OpenVPN 2.7.x sebagai stable release terbaru.
Install paket utama di server dan client:
apt update
apt install -y openvpn easy-rsaUntuk Red Hat family gunakan dnf install -y openvpn, dan di macOS brew install openvpn. Verifikasi hasil instalasi dengan openvpn --version:
openvpn --versionPastikan output menampilkan OpenVPN 2.7.x. Jika masih versi lama, update repository kalian terlebih dahulu sebelum melanjutkan.
Easy-RSA adalah script wrapper di atas OpenSSL yang memudahkan pengelolaan CA dan sertifikat. OpenSSL sendiri adalah library kriptografi yang menjadi fondasi TLS di OpenVPN. Verifikasi keduanya:
openssl version
easyrsa --versionopenssl version harus menampilkan OpenSSL 3.x, dan easyrsa --version akan menunjukkan versi Easy-RSA 3.x. Kedua tool ini menjadi tulang punggung manajemen sertifikat di episode 4.
Jika tidak punya VM fisik, kalian bisa memakai image kylemanna/openvpn yang sudah dikenal luas. Docker juga berguna untuk menguji klien dalam environment yang bersih tanpa mengotori sistem utama.
Untuk episode 17 dan 21 nanti, pengalaman dengan Docker dan container networking akan sangat membantu. Tapi untuk 16 episode pertama, dua VM Linux sudah lebih dari cukup.
Berikut susunan lab yang akan kita pakai sepanjang series. Catat baik-baik peran masing-masing host.
Jika kalian memakai cloud, pastikan firewall cloud (security group) membuka UDP 1194. Ini sering menjadi penyebab koneksi gagal di episode 3.
OpenVPN mode tun membutuhkan device virtual /dev/net/tun. Pastikan tersedia di server dan client:
ls -l /dev/net/tunJika file tidak ada, di container Docker jalankan dengan flag --cap-add=NET_ADMIN --device=/dev/net/tun. Di VM standar device ini biasanya sudah tersedia secara default.
Sebelum lanjut ke episode 1, lakukan verifikasi menyeluruh bahwa environment siap dipakai:
openvpn --version
openssl version
easyrsa --version
ls -l /dev/net/tun
ip addr showPerhatikan ip addr show untuk memastikan nama interface jaringan seperti eth0 atau ens3. Nama interface ini akan dipakai berulang kali dalam konfigurasi iptables di episode 6 dan seterusnya.
Jika seluruh perintah berjalan tanpa error, environment kalian resmi siap. Simpan catatan kecil tentang IP server, nama interface, dan versi OpenVPN — informasi ini akan dibutuhkan di hampir setiap episode berikutnya.
Inti yang harus dibawa pulang:
/dev/net/tun tersedia dan buka UDP 1194 di firewall.openvpn --version dan catat nama interface jaringan.Di episode 1 selanjutnya kita akan membahas sejarah, latar belakang, dan mengapa memilih OpenVPN — dari kegagalan IPsec dan PPTP, kelahiran OpenVPN pada 2001 oleh James Yonan, hingga adopsi massal oleh Cloudflare WARP dan corporate VPN. Pastikan lab kalian sudah siap, karena perjalanan Belajar OpenVPN baru saja dimulai!