OpenVPN adalah software open source untuk membangun Virtual Private Network (VPN) — membuat koneksi point-to-point yang terenkripsi antara dua titik lewat internet. Autentikasi memakai private key, sertifikat, atau username/password, dengan enkripsi memakai OpenSSL. Kegunaannya beragam: mengakses server/data pribadi dari jarak jauh secara aman, menyambungkan kantor cabang, atau mengamankan trafik saat memakai jaringan publik.
Instalasi OpenVPN di Server (Ubuntu Server 22.04/24.04)
Distro Ubuntu Server modern sudah pindah dari easy-rsa versi 2.0 (dengan skrip ./build-ca, ./build-key) ke easy-rsa versi 3.x. Berikut langkah yang sesuai untuk versi terbaru.
1. Install OpenVPN dan Easy-RSA
sudo apt update sudo apt install openvpn easy-rsa
2. Siapkan Public Key Infrastructure (PKI)
make-cadir ~/easy-rsa cd ~/easy-rsa ./easyrsa init-pki
3. Buat Certificate Authority (CA)
./easyrsa build-ca nopass
Isi Common Name sesuai kebutuhan (mis. nama organisasi). Opsi nopass membuat CA tanpa passphrase — untuk lingkungan produksi, pertimbangkan tanpa opsi ini demi keamanan tambahan.
4. Buat Sertifikat dan Key Server
./easyrsa gen-req server nopass ./easyrsa sign-req server server
5. Generate Diffie-Hellman Parameters dan TLS Key
./easyrsa gen-dh openvpn --genkey secret ta.key
6. Salin File yang Dibutuhkan ke /etc/openvpn/server/
sudo cp pki/ca.crt pki/issued/server.crt pki/private/server.key pki/dh.pem ta.key /etc/openvpn/server/
7. Buat Sertifikat untuk Klien
./easyrsa gen-req client1 nopass ./easyrsa sign-req client client1
File yang perlu dikirim ke klien: ca.crt, client1.crt, client1.key, dan ta.key.
8. Konfigurasi Server
Salin contoh konfigurasi bawaan paket, lalu sesuaikan:
sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/server/ sudo gzip -d /etc/openvpn/server/server.conf.gz sudo nano /etc/openvpn/server/server.conf
Pastikan baris berikut sesuai nama file yang tadi disalin:
ca ca.crt cert server.crt key server.key dh dh.pem tls-auth ta.key 0
9. Jalankan OpenVPN Server (systemd)
Instance systemd OpenVPN modern memakai nama file konfigurasi sebagai suffix:
sudo systemctl start openvpn-server@server sudo systemctl enable openvpn-server@server sudo systemctl status openvpn-server@server
10. Verifikasi Interface tun0
ip addr show tun0
Konfigurasi di Sisi Klien
Install OpenVPN di klien, lalu salin ca.crt, client1.crt, client1.key, dan ta.key dari server. Buat file client.ovpn yang menggabungkan konfigurasi dan sertifikat ini (format modern menyatukan semuanya dalam satu file .ovpn memakai tag <ca>, <cert>, <key>), lalu jalankan:
sudo openvpn --config client.ovpn
Test koneksi ke server lewat IP tunnel (default 10.8.0.1):
Mau Kuasai Instalasi OpenVPN di Ubuntu Server 12.04 Sampai Bisa Praktik Langsung?
Materi ini juga kami ajarkan langsung di kelas Edusoft Center, dibimbing mentor, sampai kamu bisa praktik nyata — bukan cuma baca teori.
Tanya Kursus via WhatsApp Lihat contoh project nyata dari siswa kami →
ping 10.8.0.1
Alternatif: WireGuard
Untuk kebutuhan baru, pertimbangkan juga WireGuard — protokol VPN yang lebih modern, konfigurasinya lebih ringkas, dan performanya umumnya lebih cepat dibanding OpenVPN. OpenVPN tetap relevan untuk kompatibilitas luas dan fitur enterprise (autentikasi berbasis sertifikat multi-level, dukungan proxy).
Apakah easy-rsa versi 2 (seperti ./build-ca) masih bisa dipakai?
Sudah tidak direkomendasikan. Repository Ubuntu/Debian modern menyediakan easy-rsa versi 3.x dengan sintaks berbeda (./easyrsa init-pki, ./easyrsa build-ca, dst). Skrip versi 2 tidak lagi disertakan di paket easy-rsa terbaru.
OpenVPN atau WireGuard, mana yang sebaiknya dipilih?
WireGuard lebih ringkas dan cepat untuk kebutuhan baru. OpenVPN lebih cocok jika butuh kompatibilitas luas dengan perangkat lama atau fitur enterprise seperti autentikasi bertingkat dan dukungan proxy.
Kenapa systemctl start openvpn tidak berhasil menjalankan server?
Di sistem systemd modern, service instance-nya bernama openvpn-server@NAMAFILE, mengikuti nama file konfigurasi tanpa ekstensi .conf. Jika file konfigurasi bernama server.conf, perintahnya adalah systemctl start openvpn-server@server, bukan systemctl start openvpn.
Materi VPN, firewall, dan hardening server dibahas lebih lengkap di Kursus Networking Fundamentals Edusoft Center.
Direview oleh Komarudin Syarif — Trainer Edusoft Center.
Terakhir diperbarui: 11 Agustus 2026.
Mau Kuasai Instalasi OpenVPN di Ubuntu Server 12.04 Sampai Bisa Praktik Langsung?
Materi ini juga kami ajarkan langsung di kelas Edusoft Center, dibimbing mentor, sampai kamu bisa praktik nyata — bukan cuma baca teori.
Tanya Kursus via WhatsApp Lihat contoh project nyata dari siswa kami →
4 Comments
Terimakasih om, cari tutorial digoogle gak ada yg bisa, sampe putus asa.
akhirnya 2minggu ditinggal, hari ini coba lagi dan nemu tutorial ini akhirnya sukses
sama-sama mas 🙂
gan maun tanya, kalau konfigurasi port knocking pada VPN bagaimana ya caranya. terimakasih atas jawabannya
tinggal setting aja pada linuxnya, berikut link tutorialnya https://edusoftcenter.com/debian-ubuntu-setting-port-knocking-dengan-knockd-dan-iptables.html