Wednesday, 1 April 2015

Cara Install OPENVPN di Vps CENTOS

No comments :


Pertama kita ketik dulu untuk memastikan bahwa tun/tap sudah aktif dengan perintah berikut:

cat /dev/net/tun
jika balasanya file : descriptor in bad state
Berarti tun/tap sudah aktif, jika belum silahkan hubungi penyedia layanan untuk mengaktifkanya, atau bisa di aktifkan sendiri lewat control panel server,

Kemudia ketik perintah selanjutnya beriut ini:


yum install gcc make rpm-build autoconf.noarch zlib-devel pam-devel openssl-devel -y

wget http://openvpn.net/release/lzo-1.08-4.rf.src.rpm


INI UNTUK 32bit:

CentOS 5:

wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
CentOS 6:
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpm

INI UNTUK 64bit:

CentOS 5:

wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm
CentOS 6:
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm


Sekarang build rpm :
rpmbuild --rebuild lzo-1.08-4.rf.src.rpmrpm -Uvh lzo-*.rpmrpm -Uvh rpmforge-release*

Kemudian Install OpenVPN:
yum install openvpn -y
Copy easy-rsa folder ke /etc/openvpn/, :

cp -R /usr/share/doc/openvpn-2.2.2/easy-rsa/ /etc/openvpn/


** CATATAN **Jika terjadi eror seperti berikut, kemudian ikuti langkah-langkah berikutnya eror nya: cannot stat `/usr/share/doc/openvpn-****': No such file or directory

Download easy-rsa berikut ini, :

wget https://github.com/downloads/OpenVPN/easy-rsa/easy-rsa-2.2.0_master.tar.gz

lalu Extract :
tar -zxvf easy-rsa-2.2.0_master.tar.gz
Copy ke OpenVPN directory:
cp -R easy-rsa-2.2.0_master/easy-rsa/ /etc/openvpn/
Untuk CentOS 6 ada yg perlu dirubah, buka nano /etc/openvpn/easy-rsa/2.0/vars dan edit baris dibawah:

Change:

export KEY_CONFIG=`$EASY_RSA/whichopensslcnf $EASY_RSA`

Menjadi:

export KEY_CONFIG=/etc/openvpn/easy-rsa/2.0/openssl-1.0.0.cnf

Lalu simpan.

Sekarang membuat certificate:

cd /etc/openvpn/easy-rsa/2.0

chmod 755 *

source ./vars

./vars

./clean-all
Build CA:
./build-ca
klik enter saja kecuali 'Common Name' wajib diisi apa saja terserah.

Build key server:
./build-key-server server
klik enter aja kecuali 'Common Name' silahkan isi ketik 'server'
dan ketik 'y' saat ada perintah pilihan.

Build Diffie Hellman (Tunggu sebentar hingga proses selesai):
./build-dh
Sekarang tinggal membuat file config:
nano /etc/openvpn/server.conf
dan isikan seperti berikut:
port 1194 #- port
proto tcp #- protocol
dev tuntun-mtu 1500
tun-mtu-extra 32
mssfix 1450
reneg-sec 0
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/share/openvpn/plugin/lib/openvpn-auth-pam.so /etc/pam.d/login
client-cert-not-required
username-as-common-name
server 10.8.0.0 255.255.255.0
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 1194.log
verb 3

Ctrl+X / Y lalu Enter untuk disimpan.


Sebelum kita start OpenVPN, disable dulu SELinux jika enabled, ini dapat menyebabkan masalah dengan  OpenVPN, terutama ketika menggunakan OpenVPN dengan beberapa konfigurasi:
echo 0 > /selinux/enforce
Ini adalah solusi sementara dan akan mengaktifkan kembali ketika anda reboot sistem anda, untuk menonaktifkan secara permanen yang Anda butuhkan untuk mengedit berikut nano /etc/selinux/config dan edit baris berikut:

SELINUX=enforcing

Menjadi:

SELINUX=disabled

Ketika sistem Anda berikutnya reboot, itu akan tetap dinonaktifkan.

Sekarang start OpenVPN:
service openvpn restart
Jika terjadi kegagalan "FILED”

Anda dapat men-download file pam auth dari sini :

Untuk 64Bit:
wget http://safesrv.net/public/openvpn-auth-pam.zip
Untuk 32Bit:
wget http://safesrv.net/public/dl/openvpn-auth-pam.zip
Lalu Extract  file:
unzip openvpn-auth-pam.zip
Pindahkan ke OpenVPN directory:
mv openvpn-auth-pam.so /etc/openvpn/openvpn-auth-pam.so
kemudian rubah baris PAM plugin di:
nano /etc/openvpn/server.conf
menjadi seperti berikut:

plugin /etc/openvpn/openvpn-auth-pam.so /etc/pam.d/login

Restart OpenVPN dan sekarang dapat start:
killall -9 openvpn

service openvpn restart
Sekarang kita enable IP forwarding, buka
nano /etc/sysctl.conf
dan seting ‘net.ipv4.ip_forward’ dari 0 menjadi 1.

net.ipv4.ip_forward = 1

lalu simpan dan ketik.
sysctl -p
kemudian Route Iptables:

KVM:
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
OpenVZ iptable :
iptables -t nat -A POSTROUTING -o venet0 -j SNAT --to-source (ip vps Anda)
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to-source (ip vps Anda)

klik Enter Kemudian:
service iptables save

service iptables restart

chkconfig iptables on

Membuat user client:
useradd username -s /bin/false

passwd username

jika ingin hapus:
userdel username
Sekarang membuat file server.ovpn config dan masukkan berikut:

client
dev tun
proto udp
remote (ip vps anda) 1194
resolv-retry infinite
nobind
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
persist-key
persist-tun
ca ca.crt
auth-user-pass
comp-lzo
reneg-sec 0
verb 3


Untuk membuat OpenVPN 'auto starts' setelah reboot:
chkconfig openvpn on
Download file ca.crt di /etc/openvpn/easy-rsa/2.0/keys/  dan menempatkannya di direktori yang sama dengan server.ovpn Anda.

No comments :

Post a Comment