OpenVPN Server Best Practise
Training OpenVPN
Pada training ini, kita akan membahas proses pembangunan sistem OpenVPN, berikut mekanisme dan tips setup pada setiap tahapan konfigurasi
Training Hari Kedua
Untuk keperluan OpenVPN Server dibuat 1 buah server VM berdiri sendiri, sistem operasi yang digunakan dapat disesuaikan karena OpenVPN independen ke semua distro linux
Setting OpenVPN Server secara best practise untuk dijadikan jembatan koneksi antara koneksi lokal dengan public
Untuk keperluan koneksi lokal, menjalankan dan konfigurasi OpenVPN Client pada sistem operasi berbasis Windows maupun Linux
STUDENT & HARDWARE PREREQUISITE
Peserta training mampu melakukan instalasi sistem operasi, text editor & pernah melakukan instalasi berbasis zypper, yum atau apt-get
1 Buah Virtual Private Server/VPS/VM tambahan dengan spesifikasi minimal RAM 2 GB, HDD 50 GB (thin provisioning), dengan OS SLES SP3
Spesifikasi hardware setiap VM/VPS
Urutan Proses Instalasi & Konfigurasi
Memberikan penjelasan mengenai VPN, OpenVPN & cara kerja OpenVPN
Melakukan deployment VM/VPS sesuai dengan tabel spesifikasi VM/VPS
Melakukan instalasi VM/VPS untuk OpenVPN
Melakukan konfigurasi openvpn client pada windows/linux
Penjelasan mengenai VPN
VPN adalah singkatan Virtual Private Network, yaitu sebuah solusi hemat biaya untuk membangun koneksi private melalui jaringan publik atau internet, virtual network berarti jaringan yang terjadi hanya bersifat virtual.
Penjelasan mengenai OpenVPN
OpenVPN adalah software open source untuk Virtual Private Networking (VPN) yang cross platform, dimana aplikasi tersebut bekerja membuat koneksi point-to-point tunnel yang telah terenkripsi.
Pengertian cara kerja OpenVPN secara keseluruhan
Server ini yang nantinya akan dikoneksikan dari jaringan publik agar dapat mengakses jaringan lokal
Melakukan koneksi pada Client Windows maupun Linux dengan OpenVPN Client
Setelah terkoneksi dapat mengakses resource jaringan lokal
Melakukan evaluasi terhadap konfigurasi yang digunakan agar tidak ada kesalahan
Penjelasan fungsi dari penggunaan VPN
Data akan terlindungin dengan adanya enkripsi pada setiap transaksi data
Setiap data yang terkirim akan dijaga keutuhan data sehingga ketika sampai ke penerima tetap sama
OpenVPN melakukan pemeriksaan autentikasi terhadap sumber sumber
OpenVPN melindungi data dengan enkripsi sehingga data sulit untuk diterjemahkan/dibaca
Keuntungan ketika menggunakan VPN
Anonymous Surfing Enkripsi 265 bit /2048 bit Dapat mengakses apapun itu situs-situs yang diblokir Menjaga keamanan username dan password
Penjelasan mengenai instalasi dan konfigurasi vpn server menggunakan OpenVPN
Instalasi paket OpenVPN zypper ar -f http://download.opensuse.org/repositories/network:/vpn/SLE_11_SP3/x86_64/ openvpn zypper ref openvpn zypper in openvpn openvpn-auth-pam-plugin
Download Binary Easy-RSA cd /etc/openvpn/ wget -O easy-rsa.2.2.2.tar.gz https://github.com/OpenVPN/easy-rsa/archive/2.2.2.tar.gz
Pembuatan Certificate SSL sebagai enkripsi OpenVPN
cd /etc/openvpn tar zxvf easy-rsa.2.2.2.tar.gz cd easy-rsa-2.2.2/easy-rsa/2.0/ source ./vars ./vars (Optional) ./clean-all ./build-ca ./build-key-server server ./build-dh mv keys/ /etc/openvpn/
Catatan: Lakukan konfigurasi secara hirarki dan berurutan agar tidak terjadi kesalahan proses
Buat file konfigurasi VPN OpenVPN pada /etc/openvpn/server.conf
client-cert-not-required auth none port 1194 username-as-common-name cipher AES-128-CBC proto tcp server 192.168.100.0 255.255.255.0 comp-lzo dev tun ifconfig-pool-persist ipp.txt persist-key tun-mtu 1500 push "redirect-gateway def1" persist-tun tun-mtu-extra 32 push "dhcp-option DNS 8.8.8.8" status server-1194.log mssfix 1450 push "dhcp-option DNS 8.8.4.4" verb 3 ca /etc/openvpn/keys/ca.crt push "route-method exe" max-clients 50 cert /etc/openvpn/keys/server.crt push "route-delay 2" management localhost 500 keepalive 5 30 key /etc/openvpn/keys/server.key dh /etc/openvpn/keys/dh2048.pem plugin /usr/lib64/openvpn/plugin/lib/openvpn-auth-pam.so /etc/pam.d/login
Setelah semua selesai lakukan perintah sebagai berikut
KONFIGURASI SYSCTL & IPTABLES Sysctl dan iptables digunakan untuk melakukan forwarding connection terhadap OpenVPN, adapun caranya sebagai berikut : sed -i s/'net.ipv4.ip_forward = 0'/'net.ipv4.ip_forward = 1'/g /etc/sysctl.conf echo 1 > /proc/sys/net/ipv4/ip_forward iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o eth0 -j MASQUERADE
BUAT USER & RESTART SERVICE OPENVPN useradd nugi passwd nugi service openvpn restart
Testing koneksi OpenVPN Client pada Windows
Download program OpenVPN Client : Installer (32-bit), Windows XP and later : openvpn-install-2.3.4-I603-i686.exe (http://swupdate.openvpn.org/community/releases/openvpn-install-2.3.4-I003i686.exe) Installer (64-bit), Windows XP and later : openvpn-install-2.3.4-I603-x86_64.exe (http://swupdate.openvpn.org/community/releases/openvpn-install-2.3.4-I003x86_64.exe) Download /etc/openvpn/keys/ca.crt dengan menggunakan winscp taruh pada direktori C:\Program Files\OpenVPN\config Buat file dengan nama OpenVPN.ovpn pada direktori C:\Program Files\OpenVPN\config
Penjelasan mengenai penggunaan OpenVPN Client untuk Windows
client proto tcp dev tun remote IP-PUBLIC-VPN 1194 route-method exe route-delay 2 keepalive 3 15 resolv-retry infinite nobind persist-key persist-tun
auth none comp-lzo verb 3 cipher AES-128-CBC auth-user-pass
tun-mtu 1500 tun-mtu-extra 32 mssfix 1450 reneg-sec 3600 win-sys env redirect-gateway def1 ca ca.crt
Testing koneksi OpenVPN Client pada Windows
Cara Settingnya sebagai berikut : Install OpenVPN pada Linux Client apt-get install openvpn (pada Ubuntu) yum install openvpn (pada CentOS/Redhat) zypper install openvpn (pada SLES/SuSE)
Download /etc/openvpn/keys/ca.crt dengan menggunakan scp taruh pada direktori /etc/openvpn/ Buat file dengan nama client.conf pada /etc/openvpn
Penjelasan mengenai penggunaan OpenVPN Client untuk Linux
client proto tcp dev tun remote IP-PUBLIC-VPN 1194 route-method exe route-delay 2 keepalive 3 15 resolv-retry infinite nobind persist-key persist-tun
auth none comp-lzo verb 3 cipher AES-128-CBC auth-user-pass
tun-mtu 1500 tun-mtu-extra 32 mssfix 1450 reneg-sec 3600 redirect-gateway def1 ca ca.crt
See You Soon