Open VPN atau sering disebut OVPN adalah aplikasi open source yang menyediakan keamanan komunikasi jaringan. Layanan OVPN akan membuat koneksi tunel antara client dan server yang telah terenkripsi.
Pada umumnya dunia industri menggunakan aplikasi ini untuk pegawai perusahaan yang memiliki mobilitas yang tinggi namun tetap membutuhkan akses ke jaringan internal perusahaan.
Untuk membangun OVPN infrastruktur kita harus mempersiapkan:
1. Separate certificate (kunci publik) dan private key untuk server dan setiap user.
2. Sebuah Master Certificate Authority (CA) certificate dan key.
Berikut keterangan dalam bentuk tabel berdasarkan penggunakan file yang akan terbentuk :
Nama File | Diperuntukkan | Purpose | Secret |
---|---|---|---|
ca.crt | server & all client | Root CA Certificate | Tidak |
ca.key | key signing machine only | Root CA Key | Ya |
dh{n}.pem | server | DH Parameter | Tidak |
server.crt | server | Server certificate | Tidak |
server.key | server | Server key | Ya |
client1.crt | client 1 | client 1 certificate | No |
client1.key | client 1 | client 1 key | Yes |
client2.crt | client 2 | client 2 certificate | No |
client2.key | client 2 | client 2 key | Yes |
Instalasi dan konfigurasi
Pada artikel ini menggunakan sistem operasi linux distribusi redhat (Centos, amazon linux, dll).
1. Install open vpn package server
#yum install ovpn
2. Pada awal install, openvpn tidak menyediakan configurasi dasar untuk server.conf. Hanya menyediakan contoh configurasi. Pada tahap ini kita memiliki 2 pilihan:
-> Copy konfigurasi dari contoh yang telah disediakan
#cp /usr/share/doc/openvpn-*/sample/sample-config-files/server.conf /etc/openvpn/
-> Dapat langsung membuat file konfigurasi dengan isi seperti dibawah ini (Isi konfigurasi yang pada umumnya dibutuhkan) :
mode server
port 443
proto tcp
dev tun
ca ca.crt
cert nfsvpnserver.crt
key nfsvpnserver.key
dh dh2048.pem
server 192.168.2.0 255.255.255.0
ifconfig-pool- persist ipp.txt
push "route 10.63.0.0 255.255.255.0"
client-to- client
duplicate-cn
keepalive 10 900
comp-lzo
max-clients 100
persist-key
persist-tun
log openvpn.log
verb 3
3. Langkah selaunjutkan kita akan menginstall easy-rsa package, namun sebelum itu kita perlu menambahkan repo epel. Dapat dengan cara bila menggunakan AMI:
#yum-config- manager -- enable epel#yum install -y easy-rsa
#mkdir -p /etc/opevpn/easy-rsa/keys#cp -rf /usr/share/easy-rsa/2.0/* /etc/openvpn/easy-rsa#cp /etc/openvpn/easy-rsa/openssl- 1.0.0.cnf /etc/openvpn/easy-rsa/openssl.cnf
5. Load variabel yang dibutuhkan yang terdapat pada file "vars"
#cd /etc/openvpn/easy-rsa
#source ./vars
6. Selanjutnya kita perlu membersihkan key dan certificate yang mungkin sudah ada
#./clean-all
7. Selanjutnya kita perlu men-generate key and certificate untuk server, nah sebelum itu maka kita dapat men-set default informasi yang menjadi jawaban dari pertayaan indentitas key client. Dengan begini kita dapat menggunakan default setingan dan hanya tinggal ENTER
#./build-ca
8. Pada tahap ini kuita akan men-generate server key and certificate untuk server. Jika indentitas sama dengan setingan default, maka tinggal ENTER saja.
#./build-key-server server
9. Tahap berikutnya kita HARUS mengenerate Diffie Hellman parameter, proses generate-nya akan memakan waktu yang lumayan lama.
#./build-dh
Hasil dari langkah-langkah dan generate file diatas ada empat yaitu :
- ca.crt
- dh2048.pem
- server.crt
- server.key
Pindahkan keempat file tersebut ke lokasi /etc/openvpn/
No comments:
Post a Comment