Pages

Saturday, July 09, 2011

[ VPS untuk OpenVPN ]

Yang diperlukan adalah :

1. VPS Hosting
2. Putty (Untuk menjalankan command - command untuk setup)
3. WinSCP (Agar mudah mencopy sertifikat)
4. OpenVPN Client (Untuk login ke VPN disisi klien)
5. Koneksi Internet
6. PC / Laptop


Login Ke Akses Root SSH
1. Buka program Putty.
2. Pada kolom: Hostname (or IP Address)  isi dengan IP address VPS anda
3. Pada kolom Port isi dengan angka 22
4. Pada pilihan Connection Type pilih ke SSH
5. Click Open
6. Maka akan muncul pertanyaan: Login As: isi dengan root, lalu tekan enter
7. Akan muncul pertanyaan password, isi dengan password root anda , tekan enter.
8. Selesai, Anda sudah login, sekarang beralih ke aktifasi TUN / TAP.

Aktifkan dan Cek TUN / TAP
Minta provider VPS anda untuk mengaktivkan tun-tab
Kalau sudah kita cek apakah sudah aktif, caranya kembali ke jendela Putty tadi, lalu ketikan command ini:

# ls -al /dev/net/tun

apabila sudah enabled maka akan muncul pesan seperti berikut:

crw------- 1 root root 10, 2011 July 10 16:21 /dev/net/tun

Install Aplikasi Yang Diperlukan
Masih di jendela Putty, masukan command ini:
# yum install gcc rpm-build autoconf.noarch zlib-devel pam-devel openssl-devel make
Maka akan menginstall sekaligus build paket-paket yang dibutuhkan: gcc, autoconf.noarch, zlib-devel, pam-devel, openssl-devel
Download Paket OpenVPN dan Jadikan RPM
Masih dijendela Putty masukan command ini untuk download paket

# wget http://openvpn.net/release/openvpn-2.0.9.tar.gz
#wget http://openvpn.net/release/lzo-1.08-4.rf.src.rpm


Setelah itu masukan command ini untuk menjadikan RPM :

#rpmbuild --rebuild lzo-1.08-4.rf.src.rpm enter
#rpm -Uvh /usr/src/redhat/RPMS/i386/lzo-*.rpm enter
#rpmbuild -tb openvpn-2.0.9.tar.gz  enter
#rpm -Uvh /usr/src/redhat/RPMS/i386/openvpn-2.0.9-1.i386.rpm  enter

Copy File Konfigurasi
Supaya mudah dicek, copy file konfigurasi ke folder /etc/openvpn  caranya masukan command ini:

#cp -r /usr/share/doc/openvpn-2.0.9/easy-rsa/ /etc/openvpn/  enter
#cp /usr/share/doc/openvpn-2.0.9/sample-config-files/server.conf /etc/openvpn/  enter

Membuat Sertifikat / Building Certificate
Masuk ke direktori /etc/openvpn/easy-rsa/2.0  caranya masukan command ini:

#cd /etc/openvpn/easy-rsa/2.0
buat sertifikat masukan command ini :
#source ./vars
#./vars
#./clean-all
#./build-ca
akan keluar tulisan aneh dan instruksi,
Generating a 1024 bit RSA private key
………………………++++++
…………………….++++++
writing new private key to ‘ca.key’ dan seterusnya :)

intinya kita disuruh memasukan data kita sebagai sertifikasi. Apabila VPN ini anda komersialkan maka isi data yang diminta dengan benar, jika dipakai pribadi atau
komersial tapi di resellerkan maka isi asal saja tidak apa agar anonym. Yang penting pada field common name diisi.
kemudian buat key servernya:
#./build-key-server server
buat Diffie Hellman:
# ./build-dh
Setelah selesai copy sertifikat - sertifikat tadi ke directory: /etc/openvpn/keys  caranya masukan command ini:
#cp /etc/openvpn/easy-rsa/2.0/keys /etc/openvpn/keys -R

Konfigurasi Server VPN
Menuju direktori /etc/openvpn/  ketikan command dibawah:
# cd /etc/openvpn/
lihat dan cek apakah file konfigurasi ada (server.conf):
# ls -al
backup file:
# cp server.conf server.conf.bak
Edit atau hapus file server.conf
# rm -rf server.conf
Buat baru lagi:
# vi server.conf
isikan dengan dev tun 

Membuat file konfigurasi TCP :
Ketikan command dibawah:
 #cat > 443.conf
Lalu isi / copy paste setting dibawah ini:
port 443
proto tcp
dev tun
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key
dh /etc/openvpn/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
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1"
push "dhcp-option DNS 4.2.2.1"
push "dhcp-option DNS 4.2.2.2"
keepalive 5 30
comp-lzo
persist-key
persist-tun
status server-tcp.log
verb 3


Setelah itu tekan tombol ctrl+d pada keyboard untuk mensave

Membuat file konfigurasi UDP :
Ketikan command dibawah:
 #cat > 53.conf
copy paste setting dibawah ini :
port 53
proto udp
dev tun
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key
dh /etc/openvpn/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.9.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1"
push "dhcp-option DNS 4.2.2.1"
push "dhcp-option DNS 4.2.2.2"
keepalive 5 30
comp-lzo
persist-key
persist-tun
status server-tcp.log
verb 3


tekan tombol CTRL+D pada keyboard untuk mensave
Catatan: untuk line ini:
push "dhcp-option dns 4.2.2.1"
push "dhcp-option dns 4.2.2.2"
dapat diubah menjadi dns server publik lainnya, misalnya google:
push "dhcp-option dns 8.8.8.8"
push "dhcp-option dns 8.8.4.4"

Usai itu jalankan server openvpn :
# openvpn /etc/openvpn/443.conf
# openvpn /etc/openvpn/53.conf

Setting Firewall
aktifkan packet forwarding:
#echo 1 > /proc/sys/net/ipv4/ip_forward
edit nat table untuk masquerading, setting untuk VPS:
#iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j SNAT --to ip.address.vps.anda
ip.address.vps.anda pada setting diatas sesuaikan / ganti dengan IP address VPS hosted nya

Adduser VPN (/home)
masukan command dibawah, kata pengguna dapat diubah / disesuaikan keinginan Anda.
# adduser pengguna -m -s /bin/false
Kemudian untuk password:
# passwd "klien"
akan diminta memasukan password lagi:
changing password for user d3mit.
New UNIX password:
setelah dimasukan tekan enter dua kali.
jika sewaktu - waktu ingin hapus user tertentu:
# userdel nama user 

Setting untuk client
Apa saja yang dibutuhkan klien Anda?
Software openvpn untuk client, dapat diunduh di (menyusul)
(pilih yang Windows installer untuk interface GUI)
Install software client openvpn diatas
File sertifikat ca.crt yang terdapat di direktory /etc/openvpn/keys/ unduh file ini dengan menggunakan software winscp
File konfigurasi, untuk UDP berikut isinya (beri nama udp.ovpn):
client
dev tun
proto udp
remote ip.address.vps.anda
resolv-retry infinite
route-method exe
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
auth-user-pass
comp-lzo
verb 3

Sedangkan untuk TCP port 443 (beri nama tcp.ovpn) :
client
dev tun
proto tcp
remote ip.address.vps.anda 443
resolv-retry infinite
route-method exe
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
auth-user-pass
comp-lzo
verb 3

file ca.crt, udp / tcp.ovpn (pilih salah satu tergantung mau pakai yang mana) dicopy ke folder:
c:\program files\openvpn\config\
done, setiap klien anda ingin login tinggal menjalankan dari software openvpn dan memasukan username dan password yang telah dibuat.

No comments: