Sabtu, 04 Januari 2014

Cara Install OpenVPN Di VPS Centos 32bit/64bit

Cara Install OpenVPN Server Di VPS Centos 5 Dan 6 (32bit/64bit) 

Tutorial Cara Install OpenVPN Di VPS Centos 32bit/64bit

 Cara Install OpenVPN Di VPS Centos 32bit/64bit

Langkah 1 : Kita cek TUN/TAP
cat /dev/net/tun
Jika aktif akan ada balasan seperti ini
cat: /dev/net/tun: File descriptor in bad state
Langkah 2 : Install paket dasar yang diperlukan
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
CentOS 5 32 Bit:
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
CentOS 5 64 Bit:
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm
CentOS 6 32 Bit:
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpm
CentOS 6 64 Bit:
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
Langkah 3 : Build paket RMP & install openVPN
rpmbuild --rebuild lzo-1.08-4.rf.src.rpm
rpm -Uvh lzo-*.rpm
rpm -Uvh rpmforge-release*
yum -y install openvpn
     Copy file easy-rsa ke folder /etc/openvpn/:
cp -R /usr/share/doc/openvpn-2.2.2/easy-rsa/ /etc/openvpn/
NB : Buat centos 6 edit beberapa ini
nano /etc/openvpn/easy-rsa/2.0/vars
     Cari Dan Ubah:
export KEY_CONFIG=`$EASY_RSA/whichopensslcnf $EASY_RSA`
     Menjadi:
export KEY_CONFIG=/etc/openvpn/easy-rsa/2.0/openssl-1.0.0.cnf
Langkah 4 : Buat certifikasi
cd /etc/openvpn/easy-rsa/2.0
chmod 755 *
source ./vars
./vars
./clean-all
Langkah 5 : Build CA
./build-ca
  • Country Name: silahkan di isi atau tekan enter saja
  • State or Province Name: silahkan di isi atau tekan enter saja
  • City: silahkan di isi atau tekan enter saja
  • Org Name: silahkan di isi atau tekan enter saja
  • Org Unit Name: silahkan di isi atau tekan enter saja
  • Common Name: server hostname
  • Email Address: silahkan di isi atau tekan enter saja
Langkah 6 : Build key server
./build-key-server server
  • Caranya hampir sama dengan build ca cuman ada perbedaan sedikit
  • Common Name: server
  • A challenge password: abaikan saja (kosongin)
  • Optional company name: silahkan di isi atau langsung tekan enter
  • sign the certificate: y
  • 1 out of 1 certificate requests: y
Langkah 7 : Build DH
./build-dh
Langkah 8 : Membuat config openVPN server
nano /etc/openvpn/server.conf
     Isi menyesuaikan kebutuhan ya gan:
port 443
proto tcp
dev tun
tun-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.6.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 server443.log
verb 3
Langkah 9 : Disable Selinux
   Sebelum menjalankan openvpn kita disable dulu SELinux nya
   Karena sering bermasalah dengan openvpn jika menggunakan multipe config

echo 0 > /selinux/enforce
   Cara di atas hanya temporary disable SELinux ketika reboot harus set ulang.
   Untuk membikin otomatis maka perlu kita edit di file /etc/selinux/config :
nano /etc/selinux/config
     Cari dan ubah:
SELINUX=enforcing
     Menjadi:
SELINUX=disabled
Langkah 10 : Restart openVPN
service openvpn restart
Langkah 11 : Jalankan auto startup opeVPN
chkconfig openvpn on
Langkah 12 : Enable IP forwarding
     Openvpn server sudah selesai di install
     Tapi perlu kita tambahin iptables supaya dapat kita akses dari luar
     Edit file /etc/sysctl.conf:

nano /etc/sysctl.conf
     Cari dan ubah:
net.ipv4.ip_forward = 0
     Menjadi:
net.ipv4.ip_forward = 1
     Lalu jalankan "sysctl -p" untuk update confignya:
sysctl -p
Langkah Finaly : Setting Route Iptables
     Rule berikut untuk vps baik itu xen dan KVM based VPS’s:

iptables -t nat -A POSTROUTING -s 10.8.6.0/24 -o eth0 -j MASQUERADE
     OpenVZ iptables rules:
iptables -t nat -A POSTROUTING -o venet0 -j SNAT --to-source xxx.xxx.xxx.xxx
iptables -t nat -A POSTROUTING -s 10.8.6.0/24 -j SNAT --to-source xxx.xxx.xxx.xxx
Keterangan:
xxx.xxx.xxx.xxx silahkan ganti dengan ip public vps anda
Sudah selesai instalasi openvpn di vps centos 5 dan 6 32bit/64bit