Membuat VPN Server SSL di Centos 5

September 15, 2008 at 2:37 am 13 komentar

Hehehehhe kali ini tutorial aku tentang VPN Server. Sebelumnya aku minta maaf karena tutorial ini aku ambil dari blog orang juga😀 hehhehehe… di sini aku hanya nyalurin inspirasi yang aku dapat dari internet🙂

Sedikit tentang VPN:


Apa itu VPN …?

VPN adalah singkatan dari virtual private network, yaitu jaringan pribadi (bukan untuk akses umum) yang menggunakan medium nonpribadi (misalnya internet) untuk menghubungkan antar remote-site secara aman. Perlu penerapan teknologi tertentu agar walaupun menggunakan medium yang umum, tetapi traffic (lalu lintas) antar remote-site tidak dapat disadap dengan mudah, juga tidak memungkinkan pihak lain untuk menyusupkan traffic yang tidak semestinya ke dalam remote-site.
Menurut IETF, Internet Engineering Task Force, VPN is an emulation of [a] private Wide Area Network(WAN) using shared or public IP facilities, such as the Internet or private IP backbones.VPN merupakan suatu bentuk private internet yang melalui public network (internet), dengan menekankan pada keamanan data dan akses global melalui internet. Hubungan ini dibangun melalui suatu tunnel (terowongan) virtual antara 2 node. Gambar berikut ini menjelaskan implementasi VPN pada suatu network.

vpn server

vpn server

Penjelasan gambar diatas:
Pada gambar diatas VPN Client merequest ke server, kemudian oleh server di cek apakah sertifikat pada client benar atau tidak, jika benar maka VPN Server akan meneruskan ke client. Dan client akan mendapatkan ip tunneling dari server.
Di tutorial ini aku akan menjelaskan tentang pembuatan VPN Server di Centos 5 dengan menggunakan software openvpn. Aku sengaja menggunakan openvpn, karena proses pembuatannya tidak sulit dan kekuatan untuk enkripsi data nya juga bagus.

Langkah-langkah membuat openvpn :
1. Download source nya dari http://openvpn.org (download dari source saja, karena dilengkapi dengan script-script untuk generate certificate, agar lebih mudah).

2. Pastikan juga paket OpenVPN dari binary RPM package dengan dependenci dibawah ini sudah terinstall, jika belum Anda install terlebih dahulu.

  • openssl
  • lzo
  • pam
  • openssl-devel
  • lzo-devel
  • pam-devel

Untuk Mengecek anda dapat menggunakan command

  • @server #rpm –qa

Untuk Menginstall anda dapat menggunakan command

  • @server #yum install <nama package>

3. Install OpenVPN dengan source, VPN server openvpn-version.tar.gz. Untuk versi VPN aku menggunakan OpenVPN 2.0.5 i686-pc-linux [SSL] [LZO] [EPOLL] built on Feb 9 2008 Developed by James Yonan Copyright (C) 2002-2005 OpenVPN Solutions LLC info@openvpn.net
Extract file openvpn dengan

  • @server #tar -xzvf openvpn-[version].tar.gz

Kemudian masuk ke directory openvpn-version, kemudian jalankan perintah:

  • @server #./configure
  • @server #make
  • @server #make install

4. Anda buat directory openvpn di /usr/share/ setelah itu anda copykan source easy-rsa ke /usr/share/openvpn/ agar lebih mudah untuk maintenance. Setelah selesai make dan make install, masuk ke direktori source easy-rsa, jalankan perintah ini.

  • @server #cp –R /home/chuli/download/openvpn-2.0.9/easy-rsa /usr/share/openvpn
  • @server #cd /usr/share/openvpn/easy-rsa
  • @server #export D=/usr/share/openvpn/easy-rsa
  • @server #export KEY_CONFIG=$D/openssl.cnf
  • @server #export KEY_DIR=$D/keys
  • @server #export KEY_SIZE=1024
  • @server #export KEY_COUNTRY=ID
  • @server #export KEY_PROVINCE=”DKI Jakarta”
  • @server #export KEY_CITY=”Jakarta Selatan”
  • @server #export KEY_ORG=”[nama_pt]”
  • @server #export KEY_EMAIL=”catnuxer@gmail.com”
  • @server #export KEY_COMMON=”[namalengkap/FQDN_host_server_vpn]”

5. Setelah itu copy openssl.cnf dari directory easy-rsa ke /etc/openvpn.
6. Jalankan script ”./clean-all” dari directory “easy-rsa” yang ada di /usr/share/openvpn/easy-rsa/
7. Jalankan “./build-ca” dari directory “easy-rsa” yang ada di /usr/share/openvpn/easy-rsa/
8. Jalankan “./build-key-server” untuk membuat key pada VPN Server.
9. Jalankan “./build-key chuli” chuli adalah nama sertifikat client yang akan di generate. Anda bisa membuat setifikat untuk client sesuai dengan kebutuhan Anda.
10. Jalankan “./build-dh” waktu menjalankan perintah ini, bisa sangat lama sekali, tergantung komputer dan panjang byte dari key.
11. Setelah itu Anda buat konfigurasi openvpn untuk server.
@server #vi /etc/openvpn/server.config

12. Contoh konfigurasi server.config
sample-config-files/server.config

# Port VPN server
port 1194

# TCP atau UDP server
;proto tcp
proto udp

# Device “dev tun” yang akan membuat route IP tunnel
;dev tap
dev tun

# SSL/TLS root certificate (ca), certificate
# (cert), and private key (key)
# This file should be kept secret
/usr/share/openvpn/easy-rsa/keys/ca ca.crt
/usr/share/openvpn/easy-rsa/keys/cert server.crt
/usr/share/openvpn/easy-rsa/keys/key server.key

# Openssl yang digunakan dh1024.pem
dh dh1024.pem

# Konfigurasi server dan VPN subnet untuk VPN Client
server 10.8.0.0 255.255.255.0

# Virtual IP Address dengan nama ipp.txt
ifconfig-pool-persist ipp.txt

# Waktu yang dibutuhkan untuk sent back paket
keepalive 10 120

# Enable compression pada VPN link.
comp-lzo

#Option persit
persist-key
persist-tun

# Output status file koneksi VPN (log status)
status openvpn-status.log

# Set log file verbosity

verb 3
Untuk lebih detail anda bisa melihat di site
http://openvpn.net/index.php/documentation/howto.html#server

13. Kemudian Anda perlu mengcopy ca.crt, chuli.crt, chuli.key. Dari hasil yang telah anda generate tadi. Setelah itu untuk settingan VPN client sebagai berikut. Untuk client aku menggunakan windows XP.
14. Contoh konfigurasi client.ovpn di client Anda (pada konfigurasi ini client menggunakan Windows XP).

sample-config-files/client.ovpn

# Spesifik sebagai client sebagai petunjuk dari server
client

# Device “dev tun” yang akan membuat route IP tunnel
;dev tap
dev tun

# TCP atau UDP server
;proto tcp
proto udp

# Hostname/IP dan port pada server
# ”my-server-1” bisa diganti dengan IP Address
# contoh: remote 202.154.x.x 1194
remote my-server-1 1194
;remote my-server-2 1194

# Jangka waktu yang tak terbatas untuk resolve hostname pada VPN
resolv-retry infinite

# Beberapa Client tidak membutuhkan bind untuk
# specific lokal port number VPN
# jadi anda bisa set “nobind”
nobind

# Option persit
persist-key
persist-tun

# SSL/TLS root certificate (ca), certificate
# (cert), and private key (key
ca C:\\key\\ca.crt
cert C:\\key\\client.crt
key C:\\key\\client.key

# Enable compression pada VPN link
comp-lzo

# Set log file verbosity
verb 3
Untuk lebih detail anda bisa melihat di site
http://openvpn.net/index.php/documentation/howto.html#client

15. Untuk start openvpn, misalnya: file server.config anda ada di /etc/openvpn/.

  • @server #openvpn –-config /etc/openvpn/server.config

Jika berhasil maka di server anda akan ada ip tunnel nya. Cek dengan menggunakan ifconfig

  • @server #ifconfig
    tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
    inet addr:10.9.0.1 P-t-P:10.9.0.2 Mask:255.255.255.255
    UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
    RX packets:357626 errors:0 dropped:0 overruns:0 frame:0
    TX packets:349093 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:100
    RX bytes:33126505 (31.5 MiB) TX bytes:146677718 (139.8 MiB)

Sekian dulu dari tutorial aku ini, mudah-mudahan Anda yang membacanya dapat mengerjakan dengan sukses. Selamat mencoba🙂

Entry filed under: Tak Berkategori. Tags: .

Membuat SMS Gateway dengan gammu Template blog aku yang baru

13 Komentar Add your own

  • 1. apaajha  |  November 18, 2008 pukul 6:01 am

    tak bookmark om..!!

    Balas
  • 2. dheche  |  November 25, 2008 pukul 8:16 pm

    chul, kenapa gak “yum install openvpn” ajah ? (gak usah pusing dg dependencies pulak)

    trus kalo mau start ya tinggal seperti biasa (service openvpn start / /etc/init.d/openvpn start)

    *ada yg gampang kok nyari yg susah*

    Balas
  • 3. catnuxer  |  November 26, 2008 pukul 2:56 am

    to apaajha:

    Yo rap sak karepmu ^_^ huehehhee…… di save page as yo ora opo” kok, ehh piye kbr mu saiki??

    to om DC:

    wahhhh… di kunjungi ma sensei nih… hehehhe…
    makasih om atas kunjungan nya
    iyahh om, blon aku update lagi, klo skrng sich juga udah langsung pkek yum install aja

    hiihihhiii ^_^

    thank kyu om….

    Balas
  • 4. togum  |  Juni 30, 2009 pukul 7:02 am

    bos..
    klo di client itu ngk ada koneksi pake kabel ato wireless kan?
    hanya klo ada sertifikatnya terus jalankan openvpn client langsung bisa konek ya?

    Balas
    • 5. catnuxer  |  Juli 2, 2009 pukul 11:22 am

      @togum :

      Maksudnya ..? yah asal client konek ke internet aja, kalau ada sertifikat tapi gak ada koneksi internet yah sama aja gak bisa😀

      Balas
  • 6. fauzi  |  November 1, 2009 pukul 10:52 am

    bos klo ngak muncul virtual tunnelling nya gmana ya?padahal openvpn.start nya sdh ok

    Balas
    • 7. catnuxer  |  November 22, 2009 pukul 2:11 pm

      @fauzi:
      Kalau di cek pakai ifconfig belum muncul interface tunnelnya berarti openvpnnya belum jalan pak🙂

      Balas
  • 8. rian  |  Maret 14, 2010 pukul 10:13 am

    bisa buatin tutorial pake video gak om?… maklum awam bgt… hehehehe

    Balas
    • 9. catnuxer  |  Maret 4, 2011 pukul 6:10 am

      @rian: Ehm… masih belum sih bro, ok kapan” kalau ada waktu kosong buat iseng-iseng aku buatin videonya, tp gak janji ya bro. hehhehhe

      Balas
  • 10. elthazor  |  Maret 14, 2010 pukul 3:46 pm

    klo mo bikin server openvpn tapi portnya bukan port default bgmn yah ?

    jadi kita ingin listen di port 9000 dan 8000, mhon pencerahan via email ato bales komen ini mas.

    Balas
    • 11. catnuxer  |  Maret 4, 2011 pukul 6:13 am

      @elthazor:

      bisa diubah pada bagian ini mas


      # Which TCP/UDP port should OpenVPN listen on?
      # If you want to run multiple OpenVPN instances
      # on the same machine, use a different port
      # number for each one. You will need to
      # open up this port on your firewall.
      port 1194

      Balas
  • 12. Sandi Nugroho  |  Januari 21, 2014 pukul 1:33 am

    Wah bisa di praktekkan makasi gan udah berbagi materi yang penting.

    Balas
    • 13. catnuxer  |  Februari 8, 2014 pukul 6:16 pm

      @Sandi Nugroho

      Your welcome bro …🙂 makasih yah udah mampir ..

      Balas

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

Trackback this post  |  Subscribe to the comments via RSS Feed


September 2008
S S R K J S M
« Jul   Okt »
1234567
891011121314
15161718192021
22232425262728
2930  

Blog Stats

  • 35,154 hits

%d blogger menyukai ini: