Cara Setup dan Konfigurasi OpenVPN di Centos 6

OpenVPN adalah salah satu aplikasi opensource untuk membuat VPN. Cara Setup dan Konfigurasi OpenVPN di Centos 6 VPN merupakan suatu fitur di dalam sebuah komputer yang dapat memungkinkan anda dapat melakukan pengaksesan informasi di dalam internet secara aman.VPN merupakan salah satu fitur yang mendukung penggunaan internet safe, yaitu keamanan dalam melakukan browsing dan juga surfing, serta kegiatan lainnya yang menggunakan koneksi internet. VPN juga dapat digunakan untuk membuat anonymous surfing, mengakses situs yang diblokir dan lain-lain.
Berikut adalah Cara Setup dan Konfigurasi OpenVPN di Centos 6
PERSIAPAN
Pada VPS selain KVM terdapat pengaturan TUN/TAP di Panelnya, untuk mengetahui apakah TUN/TAP sudah aktif,bisa dicek melalui terminal dari putty dengan command berikut
1 2 3 |
[root@vpn ~]# cat /dev/net/tun cat: /dev/net/tun: File descriptor in bad state [root@vpn ~]# |
Jika hasil yang ditampilkan tidak seperti diatas, anda perlu mengaktifkan TUN/TAP terlebih dahulu di panel VPS, atau bisa hubungi VPS Provider untuk cara mengaktifkan nya.
INSTALLASI
Sebelum melakukan installasi OpenVPN pada VPS fresh install diperlukan beberapa paket pendukung, jalankan command berikut di shell/ terminal Linux anda.
1 |
yum install gcc make rpm-build autoconf.noarch zlib-devel pam-devel openssl-devel -y |
Setelah selesai dilanjutkan dengan download LZO rpm dan RPMforge
1 2 |
wget http://openvpn.net/release/lzo-1.08-4.rf.src.rpm wget http://ftp.tu-chemnitz.de/pub/linux/dag/redhat/el6/en/i386/rpmforge/RPMS/rpmforge-release-0.5.2-1.el6.rf.i686.rpm |
Kemudian Lanjut ke build paket rpm
1 2 3 |
rpmbuild --rebuild lzo-1.08-4.rf.src.rpm rpm -Uvh lzo-*.rpm rpm -Uvh rpmforge-release* |
Update VPS dan Install OpenVPN
1 2 |
yum update -y yum install openvpn -y |
Download easy-rsa dan copy ke /etc/openvpn
1 2 3 |
wget https://github.com/downloads/OpenVPN/easy-rsa/easy-rsa-2.2.0_master.tar.gz tar -zxvf easy-rsa-2.2.0_master.tar.gz cp -R easy-rsa-2.2.0_master/easy-rsa/ /etc/openvpn/ |
KONFIGURASI
Membuat certificate, dengan masuk ke /etc/openvpn/easy-rsa/2.0 rubah permission
1 2 |
cd /etc/openvpn/easy-rsa/2.0 chmod 755 * |
Hapus Certificate
1 2 3 |
source ./vars ./vars ./clean-all |
Build Certificate
1 |
./build-ca |
Kita diminta untuk mengisi mengenai detail Certificate, bisa juga langsung enter
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
Generating a 1024 bit RSA private key ..................................................++++++ .......................++++++ writing new private key to 'ca.key' ----- You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [US]:ID State or Province Name (full name) [CA]:ID Locality Name (eg, city) [SanFrancisco]:JKT Organization Name (eg, company) [Fort-Funston]:JKT Organizational Unit Name (eg, section) [changeme]:VPN Common Name (eg, your name or your server's hostname) [changeme]:VPN Name [changeme]:VPN Email Address [mail@host.domain]:me@ragilt.net |
Lanjut dengan pembuatan key-server
1 |
./build-key-server server |
Pada tahap ini kita juga akan ditanyakan mengenai detail key yang akan dibuat, untuk Common Name isi dengan server.
Build Diffie Hellman
1 |
./build-dh |
1 2 3 4 |
[root@vpn 2.0]# ./build-dh Generating DH parameters, 1024 bit long safe prime, generator 2 This is going to take a long time ........................+..............+..+...............+.........+...............................................................+.............+.+................................................+..............+......................................................+...............................................................+......................+..........+............................................................................................++*++*++* |
Konfigurasi Server
1 |
vi /etc/openvpn/server.conf |
isi file server.conf dengan konfigurasi sbb:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
local vpn.ragilt.net #ganti dengan IP VPS atau domain anda port 995 #Sesuaikan dengan port yang anda inginkan proto tcp #bisa diganti dengan udp, sesuaikan saja dev tun ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt cert /etc/openvpn/easy-rsa/2.0/keys/server.crt key /etc/openvpn/easy-rsa/2.0/keys/server.key dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem plugin /usr/lib/openvpn/plugin/lib/openvpn-auth-pam.so /etc/pam.d/login client-cert-not-required username-as-common-name server 10.9.8.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "redirect-gateway def1" push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4" keepalive 5 30 comp-lzo persist-key persist-tun status server-tcp.log verb 3 |
simpan dengan menekan esc :wq
Jalankan OpenVPN dengan command
1 2 3 |
[root@vpn 2.0]# service openvpn start Starting openvpn: [ OK ] [root@vpn 2.0]# |
Membuat Autostart agar system menjalankan OpenVPN setiap kali reboot
1 |
chkconfig openvpn on |
Enable IP Forwarding
1 |
vi /etc/sysctl.conf |
Ganti value net.ipv4.ip_forward =0 menjadi net.ipv4.ip_forward =1
simpan dengan menekan esc:wq
Aktifkan file yang telah diedit diatas dengan command berikut
1 |
[root@vpn 2.0]# sysctl -p |
Setting IP Tables
1 |
iptables -t nat -A POSTROUTING -s 10.9.8.0/24 -o venet0 -j SNAT --to 123.45.67.89(ipvps) |
pada VPS KVM
1 |
iptables -t nat -A POSTROUTING -s 10.9.8.0/24 -o eth0 -j MASQUERADE |
Save IP Tables
1 |
service iptables save |
Buat Certificate Client
1 |
./build-key client |
Buat File Config .ovpn Untuk Client
1 |
vi /etc/openvpn/easy-rsa/2.0/keys/client.ovpn |
masukan konfigurasi sbb:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
client dev tun proto tcp #bisa ganti udp, samakan dengan server.conf remote vpn.ragilt.net 995 #ganti IP VPS/domain, 995 samakan denganserver.conf route-method exe resolv-retry infinite nobind tun-mtu 1500 tun-mtu-extra 32 mssfix 1450 persist-key persist-tun ca ca.crt cert client.crt key client.key auth-user-pass comp-lzo verb 3 |
Konfigurasi OpenVPN di sisi server telah selesai, lalu bagaimana cara nya agar client bisa connect ke server OpenVPN kita?
Windows Client
Download dan install openvpn client untuk windows download openvpn client .
Download file configuration dari vpnserver menggunakan winscp dari folder /etc/openvpn/easy-rsa/keys
client.ovpn , ca.crt,client.crt,client.key dan client.csr dan simpan di C:\Program Files\OpenVPN\config klik kanan pilih start openvpn on this config file.