Install openVPN server (repost)

Disini saya akan sedikit memberikan tutorial untuk melakukan installasi openVPN server , saya mengambil referensi tutorial dari kuda (kok banyak yang pake nama hewan :P ) , operating system yang saya gunakan adalah Centos 5.2 Final B-) , pengennya seh ga sama , ga tau kok dapat VPS dengan OS yang sama =P~

Berikut ini adalah beberapa kelebihan dari openVPN :

Bisa menggunakan proxy (harus protokol TCP) << berguna bgt.. :D
Tentu saja gratis ga perlu bayar :D
Security nya kuat (1024 bit) , CMIIW

Sebelumnya cek dulu apakah VPS atau server anda mendukung dev/tun , ketikkan pada console :

ls -al /dev/net/tun

dan hasilnya jika terdapat device tersebut

-bash-3.2# ls -al /dev/net/tun
crw------- 1 root root 10, 200 2009-08-01 01:45 /dev/net/tun

Langsung ae jeh…
sek.. pastikan server anda terinstall gcc

yum install gcc

Download paket yang diperlukan :

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

Install and build paket yang dibutuhkan :

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

Install paket yang telah didownload dengan cara rpm (dijadiin rpm dulu gitu maksutnya :D):

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

perhatikan bahwa nama direktori mungkin saja berbeda, apabila mesin nya 64bit maka direktorinya biasanya: /usr/src/redhat/RPMS/x86_64/
Sekarang kita copy file konfigurasi nya menuju folder /etc/openvpn (supaya enak aja)

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

Building certificate (membuat sertifikat)
caranya, kita masuk direktori /etc/openvpn/easy-rsa/2.0

#cd /etc/openvpn/easy-rsa/2.0
#source ./vars
#./vars
#./clean-all
#./build-ca
akan muncul tulisan2 aneh seperti ini:
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 incorporatedinto 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 blankFor some fields there will be a default value,If you enter ‘.’, the field will be left blank.—–Country Name (2 letter code) [KG]:State or Province Name (full name) [NA]:Locality Name (eg, city) [BISHKEK]: Organization Name (eg, company) [OpenVPN-TEST]: Organizational Unit Name (eg, section) []: Common Name (eg, your name or your server’s hostname) []: OpenVPN-CAEmail Address [me@myhost.mydomain]:

kalo ga mau repot , teken enter2 terus :P
yang perlu diisi hanyalah pada field “Common Name”
itu aja.

Build key server

#./build-key-server server

Akan keluar tulisan2 ga jelas lagi, dan sama dengan di atas, yg perlu diisi hanya pada “Common Name”, di sini masukkan kata: server

Build Diffie Hellman

#./build-dh

Build certificate untuk client, pengen berapa client? misalnya 3 orang:

#./build-key nassao
#./build-key rainluva
#./build-key himitsu

ngikut kuda pake nama cewek ;))

akan keluar tulisan2 aneh lg, dan yg perlu diisi hanya pada “Common Name”, isikan sesuai nama klien, misalnya: nassao

Sekarang mari kita kopi ~o) sertifikat2 tersebut menuju /etc/openvpn/keys

#cp /etc/openvpn/easy-rsa/2.0/keys /etc/openvpn/keys -R

Konfigurasi server openvpn, dicopas langsung dari blog kuda

bikin file server.conf dan letakkan di /etc/openvpn , isi dengan baris berikut :

local 74.208.x.x #-- sesuaikan dengan IP server anda
port 9999 #-- port yang dibuka
proto udp #-- pilih udp atau TCP , klo TCP bisa under proxy
dev tun #-- kata kuda kita sebaiknya menggunakan /dev/tun saja
ca keys/ca.crt #-- lokasi sertifikat ca.crt
cert keys/server.crt #-- lokasi sertifikat server.crt
key keys/server.key #-- lokasi server.key
dh keys/dh1024.pem #-- lokasi dh1024.pem
server 10.8.0.0 255.255.255.0 #-- alokasi nomer IP client/server
ifconfig-pool-persist ipp.txt #-- supaya alokasi IP client tdk berubah2
push "redirect-gateway def1" #-- supaya gateway koneksi berubah ke server
push "dhcp-option DNS 4.2.2.1" #-- untuk merubah DNS
push "dhcp-option DNS 4.2.2.2" #-- sama kayak atas
keepalive 5 30 #-- angka keramat supaya koneksi stabil..xxixi
comp-lzo #-- sistem kompresi (wajib aktif di client maupun di server)
persist-key #-- mboh ra ngerti karepe...wkwkkw
persist-tun #-- mboh ra ngerti jg..wkwkwk
status server-tcp.log
verb 3

Server siap dijalankan, dengan command sbb:

#service openvpn start
atau
#openvpn /etc/openvpn/server.conf

Ok sekarang openVPN server sudah siap , sekarang tinggal bagaimana caranya supaya client dapat menikmasti koneksi seakan-akan direct connection. Yang kita akan lakukan adalah setting firewall :
1. Enabling packet forwarding dengan command:

#echo 1 > /proc/sys/net/ipv4/ip_forward

2. Edit NAT table untuk MASQUERADING
Command berikut khusus untuk server Dedicated saja:

#iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

Sedangkan untuk VPS, command nya adalah sbb:

#iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j SNAT --to 74.208.x.x

IP disesuaikan dengan IP venet0 di VPS anda.

Konfigurasi Client OpenVPN
Download openVPN berbasis GUI , biar gampang jalaninnya

http://openvpn.se/files/install_packages/openvpn-2.0.9-gui-1.0.3-install.exe

Copy sertifikat2 dari server tadi,
yaitu file: ca.crt, nassao.crt/rainluva.crt/himitsu.crt (tiap client cukup 1), dan nassao.key/rainluva.key/himitsu.key (tiap client cukup 1), simpan di folder c:\program files\openvpn\config\nassao
atau \rainluva atau \himitsu.

Buat file konfigurasi klien openvpn
misalnya diberinama nassao.ovpn, dan kita edit pake notepad, diisi baris2 berikut:

client #--menyatakan bahwa ini adala konfigurasi klien
dev tun #--menggunakan tun, sebagaimana servernya tadi
proto udp #--menggunakan protokol udp sesuai server tadi
remote 74.208.x.x 9999 #--IP server openvpn dan port kesayangan
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt #-- lokasi ca.crt
cert nassao.crt #-- lokasi nassao.crt
key nassao.key #-- lokasi nassao.key
comp-lzo #-- menggunakan kompresi sebagaimana servernya
verb 3

bila sudah, simpan dan letakkan di folder c:\program files\openvpn\config\nassao

Jalankan dan konek openvpn anda. tunggu beberapa saat hingga muncul sebuah status connection baru di taskbar anda.

Kita sudah terhubung :”>

66 thoughts on “Install openVPN server (repost)

  1. pinter gmn cep , kan udah ditulis itu tutor dari jaran ,bukannya udah punya vpn di server solaris ? :D
    bagi pandanya juga dunk.. :”>

  2. siip bos kucing… baru tau sekarang caranya… hmmm… :d
    tutorial yang lain bro… saya tunggu… :d/
    peace… :)>-

  3. iya oms sepertinya kuda juga dri situ , cuman lebih detail punya kuda :malu: , dan udah ditulis repost :hammer:

  4. mas,mau nanya ni…
    aku punya server centos 5.2 dan client windows xp.

    server
    eth0=192.168.a.x
    tun =10.8.0.1
    modemsvr
    ip =192.168.a.x

    client
    eth0=192.168.b.x
    modemclient
    ip =192.168.b.x

    server—- >modem—– >internet<——modem<——-client
    192.168.a.x 192.168.a.x 192.168.b.x 192.168.b.x

    untuk install openvpn dicentos service sdh ok
    tapi ketika saya konekkan via speedy g bisa konek.

    mohon petunjuknya.

  5. untuk server.conf nya coba untuk listen semua IP , ubah menjadi

    local 0.0.0.0
    

    dan utk modem speedy nya jangan lupa aktifkan port forwarding , sesuaikan dengan port di server.conf nya

  6. mas,aku udah bisa konek antara server dan client..
    cuman clint hanya bisa ping ip tunnel aja sedangkan ping ke ip lokal g bisa napa ya?

  7. @cipenk , yang dimaksut ip lokal tuh ip yg mana ya ? :D apa IP client lain ? klo untuk ping antar client dalam 1 vpn tambahkan option pada server.conf

    client-to-client
    
  8. @sorry jika mas kucing binggung..
    ip tunnel server kan 10.8.0.1 dan ip address server 192.168.a.x
    ketika openvpn konek antara client dan server,client hanya bisa ping
    ip tunnel server sedang ping ip address server g bisa.itu maksud
    saya.tapi udah bisa kok…trim’s atas infonya.
    ———————————————
    @Tapi ada yang saya tanyakan lagi,mas
    ketika ServerOpenvpn pusat konek dengan ServerClientOpenvpn cabang kok client yang dibelakang ServerClientOpenvpn cabang gak bisa konek ke ServerClientOpenvpn dan automatis g bisa konek/ping ke ServerOpenvpn pusat tapi ketika servise openvpn di ServerClientOpenvpn cabang distop,client yang dibelakang ServerClientOpenvn cabang bisa konek dan ping ke ServerClientOpenvpn cabang.Mohon pencerahan bagaimana supaya client yang dibelakang ServerClientOpenvpn cabang bisa konek ke ServerClientOpenvpn cabang dan bahkan bisa konek ke serverOpenvpn pusat,juga bisa konek ke client dibelakang ServerOpenvpn pusat?

  9. echo 1 > /proc/sys/net/ipv4/ip_forward
    

    apakah perintah di atas sudah diaktifkan ?
    klo sudah , coba cek di network client , apakah IP server yang openvpn sudah menjadi default gateway ? , misal 10.8.0.1

    seharusanya klo sudah menjadi default gateway , client bisa ping interface lain dari openvpn server

    sebenarnya saya agak bingung dengan apa yang dimaksutkan :D, coba gambarkan schemanya bro , itu ada brp server openvpn ?

  10. :-?:-?:-?:-?:-?:-?:o:o:o:o:o:o tarikkkkkkkkkkk mang….internet truuuuus………..berhasiiiiilllllll ……. cihuuuuuuuy…meooooonkkk

  11. Pingback: instalasi open VPN pada vps dengan sistem operasi centos | my site

  12. ane pakai telkomflash nih gan…IPnya berapa ya yang di ini

    server 0.0.0.0 255.255.255.0 #– alokasi nomer IP client/server

    ane kasih 0.0.0.0 kagak jaaln alias FAILED….ip telflash kan dynamic atuh :((

  13. wah masih blm berhasil nih.kok error gini ya
    rpmbuild –rebuild lzo-1.08-4.rf.src.rpm
    error: failed to stat //–rebuild: No such file or directory

    terima kasih smua

  14. @ipansan
    coba jalankan openvpn tidak melalui service
    openvpn –config server.conf
    nanti keliahatan errornya di mana

    @akbare
    itu bukan ip flash , tapi ip pool yang diberikan server untuk setiap user yang konek ke openvpn , jadi jangan gunakan 0.0.0.0 :D

    @vampire
    commandnya ga salah tulis ?
    rpmbuild –rebuild lzo-1.08-4.rf.src.rpm

  15. mohon parah genius ajarin aq Open Vpn dari awal Plzz aq serius maw belajar jaringan internet nih demi kampung yg internet lemot nih thank you

  16. kalau jalankan 2 port OpenVPN server dalam 1 server bagaimana?

    Misalkan mau jalankan port TCP 443, kemudian UDP 53, dan TCP 8080.

    Apakah harus create openvpn lain atau cuma config na yang diubah?

  17. Om kucing…yang ditanyakan Muhammad Baiquni kok lum dijawab yak:-\” ….pengen punya dua port yang open nih,,,,,:d

  18. ijin nyimak ah gan.
    kayaknya di sini transparan bgd. coz udah sebulan nyoba-2 bikin vpn sendiri gak bisa2.
    lanjoooot gan ;)

  19. Bro de-kenro,

    Saya kalau coba cara di atas juga ERROR waktu di bagian RPMS itu. Jadi saya mencari alternatif lain yaitu menggunakan yum install openvpn.

    Hehehehe…

  20. om kucing, mau nanya nih. di sini kan clientnya make windows tuh, jadi gimana kalau yang client nya linux. soalnya nyoba make openvpn client di backtrack (kvpnc) ga bisa konek….

    udah punya client.ovpn dan ca.cert nya, udah di export. tapi pas konek ga jalan2, cuma sending name sama sending password.

    apa ada yang salah yah??

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>