Cara Install Server VPN di Ubuntu Server
OpenVPN adalah solusi VPN Transport Layer Security (TLS) sumber terbuka lengkap yang mengakomodasi beragam konfigurasi. Dalam tutorial ini, Anda akan menyiapkan OpenVPN pada server Ubuntu, lalu mengonfigurasinya supaya dapat diakses dari mesin klien.

Saat ini, OpenVPN diakui sebagai salah satu protokol paling terpercaya dalam dunia VPN. Fungsinya mencakup perangkat lunak dan protokol VPN yang mampu memberikan tingkat keamanan yang tinggi. Dengan menggunakan langkah-langkah keamanan yang beragam, OpenVPN mampu menyediakan konektivitas antar situs atau melindungi koneksi titik-ke-titik dalam jaringan.
Penting untuk dicatat bahwa saat ini, banyak penyedia VPN dan pengguna akhir mengandalkan protokol ini. James Yohan adalah tokoh di balik kelahiran OpenVPN pada tahun 2001. Dengan fleksibilitasnya dalam pemilihan port dan pilihan metode enkripsi, protokol ini memberikan kebebasan untuk menyesuaikan pengalaman VPN sesuai kebutuhan. Selain digunakan untuk keperluan koneksi VPN, OpenVPN juga dapat diadopsi untuk proyek-proyek lain atau bahkan dijelajahi melalui sumber kode untuk mengidentifikasi dan memecahkan masalah.
Dalam keseluruhan konsepnya, OpenVPN memberikan solusi yang canggih dalam mengatur komunikasi antara server dan klien. Dengan membentuk terowongan yang sangat aman, protokol ini memastikan transfer data yang lancar dan dilindungi antara perangkat Anda dan server VPN. Keunggulannya dapat dilihat dari berbagai platform yang mendukungnya, termasuk macOS, iOS, Windows, Linux, Android, dan router.
Bagaimana Cara Kerja OpenVPN?
Ketika Anda menggunakan koneksi VPN, privasi koneksi internet Anda menjadi terjaga bahkan saat Anda beroperasi dari lokasi yang jauh seperti hotel, bandara, atau negara lain. Pada intinya, VPN mengarahkan seluruh arus lalu lintas jaringan Anda melalui saluran terenkripsi. Dengan cara ini, semua data yang Anda kirim dan terima menjadi terlindungi.
Prinsip dasar VPN adalah mengalirkan semua lalu lintas jaringan melalui terowongan yang aman. Saat Anda mengakses internet, lalu lintas tersebut diarahkan melalui server VPN yang melindungi informasi Anda dengan penyandian. Selain itu, pengalihan lalu lintas ini juga menyembunyikan alamat IP asli Anda. Sebagai gantinya, alamat IP dan lokasi yang terlihat adalah milik server VPN. Ini mengaburkan identitas Anda dan membingungkan upaya untuk melacak lokasi fisik Anda.
Selain manfaat privasi, koneksi VPN juga memberikan perlindungan terhadap potensi serangan dari luar. Dengan mengarahkan lalu lintas melalui terowongan terenkripsi, VPN menyediakan lapisan pertahanan yang efektif terhadap upaya intrusi atau pemantauan yang tidak sah. Dengan demikian, VPN menjadi solusi andal untuk menjaga keamanan dan kerahasiaan data Anda saat menjelajahi dunia digital.
Manfaat Utama Penggunaan OpenVPN
OpenVPN adalah salah satu protokol VPN yang paling diakui dan dipercayai, dan ada beberapa manfaat utama yang membuatnya menjadi pilihan populer bagi pengguna dan penyedia layanan VPN. Berikut adalah beberapa keuntungan utama dari menggunakan OpenVPN:
- Keamanan yang Kuat: OpenVPN mengimplementasikan metode enkripsi yang kuat, seperti AES (Advanced Encryption Standard) dan RSA (Rivest-Shamir-Adleman), yang menjaga kerahasiaan data Anda. Ini membuatnya sangat sulit bagi pihak-pihak yang tidak sah untuk membaca atau mengintip lalu lintas Anda.
- Fleksibilitas Konfigurasi: OpenVPN memungkinkan Anda untuk mengonfigurasi berbagai aspek koneksi, termasuk pilihan enkripsi, algoritma, dan port yang digunakan. Ini memungkinkan pengguna dan administrator untuk menyesuaikan pengalaman VPN sesuai dengan kebutuhan spesifik.
- Dukungan untuk Berbagai Platform: OpenVPN dapat digunakan pada berbagai platform dan sistem operasi, termasuk Windows, macOS, Linux, Android, dan bahkan router. Ini memungkinkan Anda untuk menjaga keamanan dan privasi di berbagai perangkat.
- Kemampuan Penetrasi API: OpenVPN memiliki kemampuan untuk bekerja melalui firewall dan router dengan dukungan terhadap banyak protokol. Ini membuatnya lebih dapat diandalkan dalam situasi di mana akses ke server VPN mungkin dibatasi.
- Kecepatan dan Kinerja: OpenVPN memiliki reputasi untuk memiliki kinerja yang baik dan kecepatan yang cukup tinggi, terutama jika dikonfigurasi dengan benar. Hal ini membuatnya ideal untuk penggunaan sehari-hari maupun untuk mengatasi tuntutan koneksi yang lebih tinggi.
- Dukungan Komunitas yang Kuat: OpenVPN memiliki komunitas yang aktif dan berdedikasi, serta dokumentasi yang luas. Ini berarti jika Anda mengalami masalah atau memerlukan bantuan, ada sumber daya yang tersedia untuk membantu Anda.
- Protokol Open Source: OpenVPN adalah perangkat lunak open-source, artinya kode sumbernya dapat diperiksa dan diaudit oleh komunitas untuk memastikan keamanan dan integritasnya. Ini juga memungkinkan pengembang untuk memodifikasi dan memperbaikinya sesuai kebutuhan.
- Dukungan untuk Mode Jaringan yang Berbeda: OpenVPN mendukung berbagai mode jaringan, termasuk mode routed dan mode bridged. Ini memberikan fleksibilitas dalam desain jaringan dan integrasi dengan infrastruktur yang ada.
Dengan semua keuntungan ini, OpenVPN menjadi pilihan yang solid untuk mereka yang mencari solusi VPN yang aman, andal, dan serbaguna. Namun, seperti halnya dengan semua teknologi, penting untuk mengonfigurasi dan mengelola OpenVPN dengan benar agar dapat memaksimalkan manfaatnya dan menjaga keamanan data Anda.
Cara Memasang OpenVPN di Ubuntu
Bagian ini menunjukkan kepada Anda cara menginstal server dan klien OpenVPN di server Ubuntu 20.04/22.04.
Persiapan Awal
- Server yang terinstall Ubuntu 20.04 atau 22.04
- Pengguna root atau pengguna dengan hak sudo.
- Akses VPS bisa pakai putty / bitvise ssh client
Perbarui Sistem
Sebelum memulai, Anda perlu memperbarui semua paket sistem Anda ke versi terbaru. Anda dapat memperbarui semuanya dengan menjalankan perintah berikut.
apt update -y
apt upgrade -y
Setelah semua paket diperbarui, Anda melanjutkan ke langkah berikutnya.
Install OpenVPN
Secara default, paket OpenVPN disertakan dalam repositori default Ubuntu. Anda menginstalnya melalui perintah berikut.
apt install openvpn -y
Setelah server OpenVPN diinstal, verifikasi versi OpenVPN dengan perintah berikut.
openvpn --version
Instal Easy-RSA dan Membuat PKI untuk OpenVPN
Selanjutnya, Anda perlu menginstal alat manajemen infrastruktur kunci publik (PKI) Easy-RSA di server Anda. Secara default, ini tersedia di repositori default Ubuntu. Silakan instal menggunakan perintah berikut.
apt install easy-rsa -y
Setelah terinstal, navigasikan ke direktori Easy-RSA Anda dan buat file vars untuk membuat kunci pribadi dan sertifikat server OpenVPN.
cd /usr/share/easy-rsa/
nano vars
Tambahkan konfigurasi berikut (Sesuaikan saja)
set_var EASYRSA "$PWD"
set_var EASYRSA_PKI "$EASYRSA/pki"
set_var EASYRSA_DN "cn_only"
set_var EASYRSA_REQ_COUNTRY "ID"
set_var EASYRSA_REQ_PROVINCE "ID"
set_var EASYRSA_REQ_CITY "Jakarta"
set_var EASYRSA_REQ_ORG "MikroTik.web.id"
set_var EASYRSA_REQ_EMAIL "admin@mikrotik.web.id"
set_var EASYRSA_REQ_OU "EASY CA"
set_var EASYRSA_KEY_SIZE 2048
set_var EASYRSA_ALGO rsa
set_var EASYRSA_CA_EXPIRE 7500
set_var EASYRSA_CERT_EXPIRE 365
set_var EASYRSA_NS_SUPPORT "no"
set_var EASYRSA_NS_COMMENT "CERTIFICATE AUTHORITY"
set_var EASYRSA_EXT_DIR "$EASYRSA/x509-types"
set_var EASYRSA_SSL_CONF "$EASYRSA/openssl-easyrsa.cnf"
set_var EASYRSA_DIGEST "sha256"
Simpan dan tutup file setelah Anda selesai. Kemudian, jalankan perintah berikut untuk menginisialisasi PKI.
./easyrsa init-pki
Anda akan melihat layar berikut.
Menciptakan Otoritas Sertifikat dan CSR
Selanjutnya, Anda perlu membangun otoritas sertifikat dan CSR di server Anda. Pertama, jalankan perintah berikut untuk membangun CA.
./easyrsa build-ca nopass
Selanjutnya, buat permintaan sertifikat dengan perintah berikut.
./easyrsa gen-req server nopass
Gunakan CA untuk Menandatangani Kunci Server
Selanjutnya, Anda perlu menandatangani permintaan menggunakan file CA yang dihasilkan seperti yang ditunjukkan di bawah ini.
./easyrsa sign-req server server
Sekarang, verifikasi semua sertifikat yang dihasilkan menggunakan perintah berikut.
openssl verify -CAfile pki/ca.crt pki/issued/server.crt
Jika semuanya baik-baik saja, Anda akan mendapatkan output berikut.
pki/issued/server.crt: OK
Selanjutnya, Anda juga perlu membuat kunci Diffie-Hellman untuk digunakan dalam pertukaran kunci. YHasilkan dengan perintah berikut.
./easyrsa gen-dh
Anda akan melihat keluaran berikut.
Terakhir, salin semua file sertifikat dan kunci ke direktori server OpenVPN.
cp pki/ca.crt pki/dh.pem pki/private/server.key pki/issued/server.crt /etc/openvpn/server/
Setelah Anda selesai, lanjutkan untuk membuat sertifikat dan kunci klien.
Membuat Sertifikat dan Kunci Klien
Pada titik ini, sertifikat OpenVPN Anda siap digunakan. Sekarang, Anda perlu membuat sertifikat dan file kunci untuk klien. Pertama, buat kunci klien menggunakan perintah berikut.
./easyrsa gen-req client nopass
Kemudian, tandatangani kunci menggunakan perintah berikut.
./easyrsa sign-req client client
Terakhir, salin semua kunci klien dan file sertifikat ke direktori klien.
cp pki/ca.crt pki/issued/client.crt pki/private/client.key /etc/openvpn/client/
Setelah Anda selesai, lanjutkan untuk mengkonfigurasi server OpenVPN.
Mengonfigurasi Server OpenVPN
Selanjutnya, Anda perlu membuat file konfigurasi OpenVPN dan menentukan port, serta jalur semua sertifikat dan kunci yang Anda buat. Buat file konfigurasi menggunakan perintah berikut.
nano /etc/openvpn/server.conf
port 1194
proto udp
dev tun
ca /etc/openvpn/server/ca.crt
cert /etc/openvpn/server/server.crt
key /etc/openvpn/server/server.key
dh /etc/openvpn/server/dh.pem
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1"
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
duplicate-cn
cipher AES-256-GCM
auth SHA256
auth-nocache
keepalive 20 60
persist-key
persist-tun
compress lz4
daemon
user nobody
group nogroup
log-append /var/log/openvpn.log
verb 3
explicit-exit-notify 0
Simpan dan tutup file setelah selesai. Kemudian, mulai layanan OpenVPN dan aktifkan untuk memulai saat reboot sistem.
systemctl start openvpn@server
systemctl enable openvpn@server
Verifikasi status layanan OpenVPN menggunakan perintah berikut.
systemctl status openvpn@server
Secara bersamaan, OpenVPN membuat antarmuka jaringan baru bernama tun0 secara otomatis setelah memulai layanan. Verifikasi menggunakan perintah berikut.
ip a show tun0
Mengonfigurasi IP Forward
Untuk merutekan semua lalu lintas melalui OpenVPN, Anda perlu mengaktifkan penerusan IP di server Anda. Lakukan dengan mengedit file sysctl.conf.
nano /etc/sysctl.conf
Hapus komentar pada baris berikut.
net.ipv4.ip_forward = 1
Simpan dan tutup file lalu jalankan perintah berikut untuk menerapkan perubahan.
sysctl -p
Membuat File Konfigurasi Klien OpenVPN
Selanjutnya, Anda perlu membuat file konfigurasi client.ovpn untuk menghubungkan klien OpenVPN ke server. Anda membuatnya dengan perintah berikut.
nano /etc/openvpn/client/client.ovpn
Tentukan IP server OpenVPN Anda, port, dan nama sertifikat seperti yang ditunjukkan di bawah ini:
client
dev tun
proto udp
remote vpn-server-ip 1194
ca ca.crt
cert client.crt
key client.key
cipher AES-256-GCM
auth SHA256
auth-nocache
resolv-retry infinite
compress lz4
nobind
persist-key
persist-tun
mute-replay-warnings
verb 3
explicit-exit-notify 0
Installi OpenVPN Client
Bagian ini menjelaskan cara menginstal OpenVPN pada sistem klien dan menghubungkannya ke server OpenVPN.
Pertama, masuk ke mesin klien dan instal paket OpenVPN menggunakan perintah berikut.
apt install openvpn -y
Setelah instalasi berhasil, Anda perlu menyalin semua sertifikat klien, kunci dan file konfigurasi ke mesin klien. Anda menyalin semuanya dengan perintah berikut.
scp -r root@vpn-server-ip:/etc/openvpn/client/* /etc/openvpn/client/
Selanjutnya, navigasikan ke direktori klien dan jalankan perintah berikut untuk terhubung ke server OpenVPN.
cd /etc/openvpn/client/
openvpn --config client.ovpn
Selamat Anda terhubung ke server OpenVPN
Kesimpulannya
Kami berharap bahwa Anda sekarang siap untuk mengimplementasikan OpenVPN dalam lingkungan organisasi Anda guna meningkatkan keamanan jaringan Anda. Dalam menggunakan OpenVPN, sebuah protokol VPN yang bersifat open-source, dan perangkat lunak klien VPN, pengguna dapat membentuk koneksi VPN yang dapat diandalkan dalam hal keamanan. Dengan benar, penyedia layanan VPN telah mengadopsi protokol ini karena mengandalkan pustaka OpenSSL, menerapkan enkripsi 256 bit, serta menawarkan kompatibilitas lintas platform yang luas.
Secara keseluruhan, sangat disarankan untuk memilih layanan VPN yang memberikan akses ke opsi koneksi OpenVPN dan juga protokol VPN lainnya. Dengan begitu, Anda dapat memanfaatkan keunggulan dari kombinasi fitur-fitur kuat seperti pustaka OpenSSL, enkripsi tingkat lanjut, dan kemampuan beroperasi di berbagai platform. Dengan menerapkan solusi OpenVPN ini, Anda dapat memastikan keamanan yang lebih tinggi dalam lingkungan jaringan Anda.