Virtual Private Network (VPN) adalah suatu metode untuk menghubungkan suatu jaringan dengan jaringan lainnya melalui internet secara aman. Dengan VPN, suatu jaringan dapat dibuat seolah-olah dapat berkomunikasi dengan jaringan lain secara lokal. Pada tutorial kali ini saya akan menjelaskan proses instalasi OpenVPN Access Server di Linux. OpenVPN merupakan aplikasi open source yang sangat populer digunakan untuk implementasi VPN. OpenVPN sendiri terdapat 2 versi, yaitu Community Edition (CE) dan Access Server (AS). Bedanya, di Community Edition semua konfigurasi harus dilakukan via console / command line, sedangkan untuk Access Server terdapat web GUI yang sangat memudahkan bagi administrator baik dari instalasi sampai management VPN. Kedua versi tersebut sama-sama gratis, namun untuk Access Server, by default terdapat limit 2 concurrent user. Agar bisa digunakan lebih dari 2 user, kita harus membeli license tambahan. Harganya gak terlalu mahal sih, bisa dicek disini ya sob : https://openvpn.net/index.php/access-server/pricing.html
Kalau yang Community Edition itu 100 persen gratis, tetapi seperti yang disebutkan sebelumnya semua konfigurasinya harus via CLI jadi mungkin akan sedikit ribet kalau tidak terbiasa. Selain itu fiturnya juga relatif lebih terbatas. Untuk detail perbandingan fiturnya bisa dilihat di bawah ini :
Instalasi OpenVPN AS
OpenVPN AS dapat diinstall di Linux Red Hat, CentOS, Ubuntu, Debian, dan openSUSE. Tutorial ini saya fokuskan di Centos 7. Secara garis besar, sistem OpenVPN AS terdiri dari 3 komponen :
- Access Server yang merupakan utama yang menjalankan service routing, tunneling, encryption, dsb.
- Admin Web UI yaitu control panel untuk melakukan management server dengan mudah.
- VPN Client untuk melakukan koneksi ke Access Server agar bisa terhubung dengan network tujuan. OpenVPN client tersedia untuk Windows, Linux, dan MacOS .
Untuk memulai instalasi OpenVPN AS yuk ikuti langkah di bawah ini :
1 |
yum install net-tools |
Package net-tools dibutuhkan karena OpenVPN membutuhkan program ifconfig yang tersedia dalam package net-tools
1 |
curl –O http://swupdate.openvpn.org/as/openvpn-as-2.5-CentOS7.x86_64.rpm |
Command diatas akan mendownload OpenVPN AS versi 2.5 untuk Centos 7. Pastikan kamu menggunakan versi yang terbaru untuk distro yang kamu pilih. Untuk link download OpenVPN AS terbaru kamu dapat cek disini ya :
https://openvpn.net/index.php/access-server/download-openvpn-as-sw.html
Setelah itu kita install package RPM yang sudah didownload.
1 |
rpm -i openvpn-as-2.1.4-CentOS7.x86_64.rpm |
Setelah sukses di-install akan muncul pesan seperti di bawah ini :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
The Access Server has been successfully installed in /usr/local/openvpn_as Configuration log file has been written to /usr/local/openvpn_as/init.log Please enter "passwd openvpn" to set the initial administrative password, then login as "openvpn" to continue configuration here: https://<public IP>:943/admin To reconfigure manually, use the /usr/local/openvpn_as/bin/ovpn-init tool. +++++++++++++++++++++++++++++++++++++++++++++++ Access Server Web UIs are available here: Admin UI: https://<public IP>:943/admin Client UI: https://<public IP>:943/ +++++++++++++++++++++++++++++++++++++++++++++++ |
Selanjutnya kita harus tambahkan rules di firewalld agar service VPN dapat diakses dari luar.
1 2 3 4 5 |
sudo firewall-cmd --add-service=https --permanent sudo firewall-cmd --add-port=943/tcp --permanent sudo firewall-cmd --add-port=1194/udp --permanent sudo firewall-cmd --add-masquerade --permanent sudo firewall-cmd --reload |
Note : Jika server OpenVPN kamu ada di belakang firewall, pastikan kamu sudah allow port berikut ke server :
- TCP 443 : Untuk client Web UI
- TCP 943 : Untuk web admin UI
- UDP 1194 : Untuk service tunnel OpenVPN
Konfigurasi OpenVPN AS
Saat selesai proses instalasi OpenVPN di langkah sebelumnya, kita harus mengatur password untuk username “openvpn” yang akan digunakan untuk login ke halaman admin. Jalankan command berikut untuk mengubah password openvpn :
1 |
sudo passwd openvpn |
Masukkan password yang secure untuk username openvpn tersebut.
Untuk melakukan konfigurasi OpenVPN, kita dapat mengakses control Panel Admin OpenVPN melalui URL berikut :
1 |
https://<public IP>:943/admin |
Saat pertama kali diakses akan muncul warning berikut karena certificate yang digunakan adalah self-signed yang digenerate otomatis saat instalasi OpenVPN AS. Silahkan bypass atau ignore warning tersebut.
Halaman admin login akan muncul, silahkan login dengan menggunakan username “openvpn” dan password yang sudah diatur sebelumnya.
Jika berhasil login, maka kamu harus klik Agree terlebih dahulu dengan TnC yang muncul. Kalau lagi ada waktu, silahkan baca dan teliti semua pasalnya, tapi kalau males langsung aja klik Agree.
Berikut adalah tampilan status server OpenVPN AS.
Untuk menu konfigurasinya sendiri ada banyak dan saya tidak akan menjelaskan satu per satu secara detail. Silahkan refer ke web OpenVPN (https://openvpn.net) ya untuk detail menu-menunya.
By default, openvpn sudah membuat 1 username, yaitu “openvpn”. Untuk menambah user lain dapat dilakukan melalui menu User Management > User Permissions.
Silahkan input username di kolom “New Username” dan klik tombol More Settings untuk memasukkan password. Klik Save Settings untuk menyimpan perubahan. OpenVPN AS juga dapat diintegrasikan dengan Radius atau LDAP untuk centralized user management.
Btw seperti dijelaskan sebelumnya, OpenVPN AS ini hanya dapat digunakan oleh 2 concurrent users jika kamu belum beli licensenya. Kalau kebutuhan usernamenya buanyak, kamu bisa beli license tambahan. Harganya bisa dicek disini ya : https://openvpn.net/index.php/access-server/pricing.html
Kamu juga dapat mengatur network private yang diizinkan ke client VPN di menu Routing. Untuk menambahkan network dapat dilakukan melalui menu Configuration > VPN Settings > Routing
Akses OpenVPN as Client
Untuk konek ke network tujuan, kamu harus menginstall OpenVPN Client (OpenVPN Connect) terlebih dahulu. Untuk install OpenVPN Connect, kamu bisa login ke halaman web OpenVPN AS
1 |
https://public_ip |
Masukkan username dan password yang sudah dibuat sebelumnya, lalu pilih Login.
Nah tinggal pilih deh sesuai OS yang kamu mau, btw clientnya juga bisa dari Android / iOS. Setelah di-install, download Connection Profiles (ekstensi filenya .ovpn) dan open file tersebut menggunakan OpenVPN Connect atau simpan di folder “C:\Program Files\OpenVPN\config\” (jika menggunakan Windows)
Setelah OpenVPN Connect diinstall, kamu bisa login ke OpenVPN, baik melalui Web (pilih menu Connect) maupun menggunakan OpenVPN Connect.
- Windows : Klik icon OpenVPN Connect di system tray lalu pilih Connect
- Linux : openvpn –config client.ovpn
Setelah berhasil login, maka seharusnya kamu bisa mengakses network private tujuan yang sudah diatur di OpenVPN AS.
Komentar