
OpenVPN adalah aplikasi open source yang berfungsi untuk membuat sebuah koneksi virtual dari client ke server. OpenVPN menggunakan konfigurasi certificate authority dalam pengimplementasiannya. Hal tersebut berfungsi untuk membuat keamanan koneksi antara client dan server. OpenVPN tersedia untuk platform windows dan linux. Pada postingan kali ini akan dijelaskan konfigurasi openvpn pada linux debian 12. Preconfig sudah dilakukan dengan mengkoneksikan linux debian ke internet dan konfigurasi repository.
Postingan Pendukung
Topologi

Konfigurasi IP Address
Masuk pada mode root dengan menggunakan perintah dibawah.
tiksolusindo@debian:~$ su -
Password:
root@debian:/home/tiksolusindo# cd
root@debian:~#Masukan perintah dibawah untuk melakukan konfigurasi ip pada setiap interface. Pada konfigurasi ini sudah dilakukan preconfig linux sudah terkoneksi pada internet sehingga bisa melakukan instalasi pake melalui repository. Konfigurasi tersedia pada postingan berikut Konfigurasi IP Address Linux Debian 12.
root@debian:~# nano /etc/network/interfaces
Jika sudah dilakukan konfigurasi simpan dengan CTRL + O lalu enter dan CTRL + X untuk keluar dari file yang sedang dibuka.
Instalasi Paket Aplikasi OpenVPN dan Konfigurasi Certificate Authority
Berikan perintah berikut untuk melakukan instalasi openvpn dan certificate authority.
root@debian:~# apt install openvpn easy-rsaBuat direktori untuk certificate authority lalu masuk pada direktori yang telah dibuat dengan perintah berikut.
root@debian:~# make-cadir ~/openvpn-ca && cd ~/openvpn-caLakukan konfigurasi pada file vars dengan perintah berikut lalu sesuaikan pada barisan data certificate.
root@debian:~/openvpn-ca# nano vars
Jalan paket perintah ./easyrsa init-pki untuk membuat direktori pki untuk certificate.
root@debian:~/openvpn-ca# ./easyrsa init-pki
Buat certificate root kembali dengan menggunakan baris perintah berikut. Berikan password yang sama pada setiap opsi permintaan password dan nama organisasi untuk certificate root yang ditandai dengan kotak merah.
root@debian:~/openvpn-ca# ./easyrsa build-ca
Setelah membuat certificare root, lakukan generate certificate yang akan digunakan untuk server.
root@debian:~/openvpn-ca# ./easyrsa gen-req server nopass
Lakukan tanda tangan pada certificate server dengan perintah berikut.
root@debian:~/openvpn-ca# ./easyrsa sign-req server serverGenerate file dh dengan menggunakan perintah berikut kemudian tunggu hingga proses generate selesai.
root@debian:~/openvpn-ca# ./easyrsa gen-dh
Berikan perintah berikut untuk melakukan generate kunci pada file ta.key.
root@debian:~/openvpn-ca# openvpn --genkey --secret pki/ta.keKonfigurasi OpenVPN Server
Pindahkan sample config server.conf pada direktori openvpn dengan perintah berikut.
root@debian:~# cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf /etc/openvpnSalin kembali certificate server yang sudah dibuat pada langkah sebelumnya ke direktori yang sama.
root@debian:~# cp /root/openvpn-ca/pki/{ca.crt,dh.pem,ta.key} /etc/openvpn
root@debian:~# cp /root/openvpn-ca/pki/issued/server.crt /etc/openvpn
root@debian:~# cp /root/openvpn-ca/pki/private/server.key /etc/openvpnBuka file server.conf kemudian lakukan konfigurasi pada bari – baris perintah sesuai gambar berikut.
root@debian:~# nano /etc/openvpn/server.conf


Konfigurasi Forwading dan Firewall
Buka file sysctl.conf dan hilangkan tanda pagar untuk mengaktifkan forwading.
root@debian:~# nano /etc/sysctl.conf
Jalankan perintah forwarding dengan perintah berikut.
root@debian:~# sysctl -pAktifkan server openvpn dengan dua perintah berikut.
root@debian:~# systemctl start openvpn@server
root@debian:~# systemctl enable openvpn@serverInstalasi paket iptables-persistent dan ufw yang berfungsi untuk mengkonfigurasi firewall.
root@debian:~# apt install ufw iptables-persistentBerikan izin untuk akses openvpn pada firewall dengan perintah sebagai berikut.
root@debian:~# ufw allow openvpnLihat konfigurasi ip address dan interface pada linux dengan perintah berikut.
root@debian:~# ip ad
Buat konfigurasi nat yang menginzinkan alamat network openvpn bisa mengakses ke interface yang terhubung ke internet.
root@debian:~# iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o ens33 -j MASQUERADESimpan konfigurasi iptables dengan perintah berikut.
root@debian:~# iptables-save > /etc/iptables/rules.v4Konfigiruasi Certificate Client
Generate certificate client dengan perintah berikut.
root@debian:~# cd ~/openvpn-ca
root@debian:~/openvpn-ca# ./easyrsa gen-req client1 nopass
Tanda tangan certificate client dengan perintah berikut.
root@debian:~/openvpn-ca# ./easyrsa sign-req client client1
Salin certificate client pada direktori /etc/openvpn/client menggunakan perintah berikut.
root@debian:~# cp pki/private/client1.key /etc/openvpn/client/
root@debian:~# cp pki/issued/client1.crt /etc/openvpn/client/
root@debian:~# cp pki/{ca.crt,ta.key} /etc/openvpn/client/Lakukan salin file client.conf ke direktori ~/openvpn-ca/ dengan perintah berikut, buka file tersebut lalu sesuai konfigurasi dengan gambar.
root@debian:~# cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf ~/openvpn-ca
root@debian:~# cd ~/openvpn-ca
root@debian:~/openvpn-ca# nano client.conf


Buat script untuk membuat file konfigurasi opvn di client sesuai output ke direktori masing – masing home.
root@debian:~/openvpn-ca# nano config_gen.shKEY_DIR=/etc/openvpn/client
OUTPUT_DIR=/home/tiksolusindo
BASE_CONFIG=/root/openvpn-ca/client.conf
cat ${BASE_CONFIG} \
<(echo -e '<ca>') \
${KEY_DIR}/ca.crt \
<(echo -e '</ca>\n<cert>') \
${KEY_DIR}/${1}.crt \
<(echo -e '</cert>\n<key>') \
${KEY_DIR}/${1}.key \
<(echo -e '</key>\n<tls-crypt>') \
${KEY_DIR}/ta.key \
<(echo -e '</tls-crypt>') \
> ${OUTPUT_DIR}/${1}.ovpnLakukan perubahan akses agar bisa di eksekusi dan jalankan script tersebut dengan perintah dibawah.
root@debian:~/openvpn-ca# chmod 700 /root/openvpn-ca/config_gen.sh
root@debian:~/openvpn-ca# ./config_gen.sh client1Konfigurasi OpenVPN Client
Instalasi aplikasi openvpn client dan winscp pada pc client. Masukan ip address pada windows 10 sesuai dengan topologi.

Salin file client1.ovpn menggunakan winscp dari server ke client.

Buka aplikasi openvpn client dan import file konfigurasi client.


Jika berhasil maka akan muncul profile openvpn klik connect untuk mengkoneksikan ke jaringan openvpn.


Sampai langkah ini koneksi openvpn sudah berhasil dibuat, jika terkoneksi dengan openvpn maka komputer client akan mendapat akses internet jika tidak maka tidak ada koneksi internet. Hal tersebut terjadi karena pada linux debian dilakukan forwarding paket dan konfigurasi firewall nat yang mengizinkan akses nat untuk subnet 10.8.0.0/24 openvpn ke arah internet.

Kesimpulan pada postingan ini adalah konfigurasi openvpn bisa dilakukan pada linux debian 12 dengan membuat certificate authority. Pengujian dilakukan dengan mencoba koneksi internet melalui jaringan openvpn. Jika masih ada penjelesan yang kurang jelas silahkan bertanya pada kolom komentar dibawah.
