Gazebo
dheche's Hideout
Navigation
  • Contact Me
  • Me, I and My Self
You are here: Home › General › Membuat VPN mempergunakan Openswan

Membuat VPN mempergunakan Openswan

October 9, 2004 | Filed under: General, Linux

Openswan adalah implementasi protokol IPsec (IP Security) di linux yang mensupport kernel 2.0, 2.2, 2.4 dan 2.6. IPsec menyediakan layanan enkripsi dan otentikasi pada level IP, sehingga IPsec dapat memproteksi semua trafik yang dilewatkan melalui IP.

VPN (Virtual Private Network) mengijinkan 2 jaringan berkomunikasi secara aman melalui jaringan publik. Metode yang dipakai adalah dengan cara menempatkan security gateway di setiap jaringan yg akan berkomunikasi melalui jaringan publik. Gateway ini bertugas untuk mengenkrip paket yang keluar ke jaringan publik dan mendekrip paket yang masuk dari jaringan publik, sehingga menciptakan tunel yang aman.

Nah, sekarang kita coba membuat VPN dengan memanfaatkan openswan.

Berikut ini topologi jaringan yang akan kita buat :

172.19.3.0/24 —– 172.19.3.120 | 202.162.208.102 —– 202.162.208.103 | 172.20.3.120 —– 172.20.3.0/24

Jaringan 172.19.3.0/24 kita misalkan sbg jaringan private yang akan kita koneksikan ke jaringan private lainnya (172.20.3.0/24) melalui vpn yang akan kita bentuk antara 202.162.208.102 dan 202.162.208.103

Untuk mencoba konfigurasi ini, kita butuh 4 buah PC, yaitu 2 pc sebagai client dan 2 pc sebagai gateway.

Sekarang kita persiapkan dulu software2 yang dibutuhkan :
– kernel-module-openswan (ambil paket sesuai dengan versi kernel yang anda punya)
– openswan-utils

Instal kedua paket tersebut, kemudian edit file /etc/ipsec.conf
Isi file ipsec.conf di gateway #1
——
version 2.0
config setup
interfaces="ipsec0=eth0"
klipsdebug=none
plutodebug=none
conn tunnel
left=202.162.208.102
leftsubnet=172.19.3.0/24
leftnexthop=%direct
right=202.162.208.103
rightsubnet=172.20.3.0/24
rightnexthop=%direct
keyingtries=0
auto=add
include /etc/ipsec.d/examples/no_oe.conf

——-
Isi file ipsec.conf di gateway #2
——-
version 2.0
config setup
interfaces="ipsec0=eth1"
klipsdebug=none
plutodebug=none
conn tunnel
left=202.162.208.103
leftsubnet=172.20.3.0/24
leftnexthop=%direct
right=202.162.208.102
rightsubnet=172.19.3.0/24
rightnexthop=%direct
keyingtries=0
auto=add
include /etc/ipsec.d/examples/no_oe.conf

——–

Pastikan dukungan ipforwarding di kernel telah dihidupkan:
[root@vpn-gw root]# sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1

Kalau masih bernilai ‘0’, aktifkan dg cara menjalankan ‘sysctl -w net.ipv4.ip_forward=1‘

Dan matikan seluruh filtering :
[root@vpn-gw root]# sysctl -a |grep filter
net.ipv4.conf.ipsec0.arp_filter = 0
net.ipv4.conf.ipsec0.rp_filter = 0
net.ipv4.conf.eth1.arp_filter = 0
net.ipv4.conf.eth1.rp_filter = 0
net.ipv4.conf.eth0.arp_filter = 0
net.ipv4.conf.eth0.rp_filter = 0
net.ipv4.conf.lo.arp_filter = 0
net.ipv4.conf.lo.rp_filter = 0
net.ipv4.conf.default.arp_filter = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.all.arp_filter = 0
net.ipv4.conf.all.rp_filter = 0

Kemudian kita buat kunci untuk enkripsi oportunis dengan cara menjalankan perintah :
# dijalankan di gateway #1
ipsec mailkey --me dheche@brawijaya.ac.id --reverse 202.162.208.102
Hasilnya bisa dilihat di /root/OE_mail_202.162.208.102
# dijalankan di gateway #2
ipsec mailkey --me dheche@brawijaya.ac.id --reverse 202.162.208.103
Hasilnya bisa dilihat di /root/OE_mail_202.162.208.103

Sesuaikan IN TXT yg ada di DNS Server dengan nilai yang ada di file tersebut.
Periksa dengan utilitas ‘dig‘

Buat secret key unt masing2 gateway:
ipsec newhostkey --output /etc/ipsec.secrets --hostname vpg-gw.bits.or.id

Kemudian jalankan ipsec:
/etc/init.d/ipsec start
Periksa dengan perintah:
ipsec verify

[root@vpn-gw root]# ipsec verify
Checking your system to see if IPsec got installed and started correctly:
Version check and ipsec on-path [OK]
Linux Openswan 2.1.5 (klips)
Checking for IPsec support in kernel [OK]
Checking for RSA private key (/etc/ipsec.secrets) [OK]
Checking that pluto is running [OK]
Two or more interfaces found, checking IP forwarding [OK]
Checking NAT and MASQUERADEing [OK]
Checking for 'ip' command [OK]
Checking for 'iptables' command [OK]

Opportunistic Encryption DNS checks:
Looking for TXT in forward dns zone: vpn-gw.psb-online.or.id [OK]
Does the machine have at least one non-private address? [OK]
Looking for TXT in reverse dns zone: 102.208.162.202.in-addr.arpa. [OK]
[root@vpn-gw root]#

Periksa dg perintah ‘ipsec whack –status‘
[root@vpn-gw root]# ipsec whack --status
000 interface ipsec0/eth0 202.162.208.102
000 %myid = (none)
000 debug none
000
000 "tunnel": 172.19.3.0/24===202.162.208.102[S=C]...202.162.208.103[S=C]===172.20.3.0/24; erouted; eroute owner: #2
000 "tunnel": ike_life: 3600s; ipsec_life: 28800s; rekey_margin: 540s; rekey_fuzz: 100%; keyingtries: 0
000 "tunnel": policy: RSASIG+ENCRYPT+TUNNEL+PFS+lKOD+rKOD; prio: 24,24; interface: eth0;
000 "tunnel": newest ISAKMP SA: #3; newest IPsec SA: #2;
000
000 #3: "tunnel" STATE_MAIN_R3 (sent MR3, ISAKMP SA established); EVENT_SA_REPLACE in 2264s; newest ISAKMP
000 #2: "tunnel" STATE_QUICK_R2 (IPsec SA established); EVENT_SA_REPLACE in 24419s; newest IPSEC; eroute owner
000 #2: "tunnel" used 2496s ago; esp.7f8c910e@202.162.208.103 esp.286ed02@202.162.208.102 tun.1002@202.162.208.103 tun.1001@202.162.208.102
000

Point yg penting adalah di bagian ini :
000 “tunnel”: 172.19.3.0/24===202.162.208.102[S=C]…202.162.208.103[S=C]===172.20.3.0/24; erouted; eroute owner: #2

Kalau masih terlihat ‘unrouted‘, jalankan ‘ipsec auto –up tunnel‘
Dan pastikan terlihat kalimat ‘ISAKMP SA established‘ dan ‘IPsec SA established‘.
Periksa di /var/log/messages dan /var/log/secure unt membantu proses debugging.

Kemudian kita cek koneksi vpn yg telah kita bentuk :
dijalankan dari gateway #1:
ping 172.20.3.121 -I eth1
[root@vpn-gw root]# ping 172.20.3.121 -I eth1
PING 172.20.3.121 (172.20.3.121) from 172.19.3.120 eth1: 56(84) bytes of data.
64 bytes from 172.20.3.121: icmp_seq=1 ttl=64 time=0.471 ms
64 bytes from 172.20.3.121: icmp_seq=2 ttl=64 time=0.139 ms
64 bytes from 172.20.3.121: icmp_seq=3 ttl=64 time=0.136 ms

SIPPPP 🙂
silahkan dicoba dari client #1 dan client #2, seharusnya sih bisa juga 🙂

PS.
jangan lupa, sesuaikan konfigurasi gateway di masing2 client.

Did you like this article? Share it with your friends!

Tweet

Written by dheche

Follow me on Twitter

12 Responses to "Membuat VPN mempergunakan Openswan"

  1. For Newbie From Newbie :: openvpn on freebsd :: August :: 2008 says:
    August 22, 2008 at 01:06

    […] http://dheche.songolimo.net/wp/index.php/2004/10/09/membuat-vpn-mempergunakan-openswan/ […]

    Reply
  2. andri says:
    December 3, 2008 at 09:10

    Bagaimana dengan clientnya ?? openswannya jalan di apa??

    Reply
  3. dheche says:
    December 3, 2008 at 10:35

    clientnya pake apa aja gak masalah, fokus bahasannya kan masalah tunneling. openswannya jalan di linux.

    Reply
  4. santenkelapa says:
    February 23, 2009 at 09:07

    mas bisa d jelaskan dengan gambar gak mas .. saya ga ngarti nih

    Reply
  5. suma says:
    April 11, 2010 at 09:01

    mas…mw nanya ni…openswan kopetibel di ubuntu g…?makasih ya mas mhn pencerahan na…

    Reply
  6. rain says:
    June 30, 2010 at 02:21

    mau nanya nih, maximal client utk 1 server brp yah?

    Reply
  7. endo says:
    June 30, 2010 at 02:22

    mas kalo boleh tau ini sama aja kita punya 2 router yg kita joinkan yah mas,

    Reply
  8. ardan says:
    July 27, 2010 at 15:43

    mas klo aku pke server openswan VPN nya cuma 1 pc aja….
    jadinya client [10.10.10.0] | VPN server | [172.16.40.0]
    gmn cara sett nya yah mas…

    Reply
  9. rio says:
    August 11, 2010 at 08:51

    mas…..bisa di jelaskan pake gambar ga topologi jaringannya…..???

    Reply
  10. syaf says:
    March 4, 2011 at 10:07

    baru pake ubuntu masih belom bisa paham…tolong dunk cara yang lebih detail …gimana install openswannya. 🙁 dari nul Om…newbie neh

    Reply
  11. rokiin says:
    November 14, 2011 at 10:16

    pak maaf sebelum nya saya masih kurang mengerti cara mematikan filtering ny gimana ya supaya menjadi 0 semua filter ny terima kasih…

    Reply
  12. riri says:
    October 23, 2016 at 06:23

    Bagaimana cara konfigurasi dgn host to network? Hrus adakah 2 GW?

    Reply

Leave a Reply to For Newbie From Newbie :: openvpn on freebsd :: August :: 2008 Cancel reply

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

Categories

  • Android
  • Coding
  • Design
  • Entertainment
  • Games
  • General
  • Kuliner
  • Linux
  • Manajemen
  • Music
  • Networking
  • Opinion
  • OS X
  • Personal
  • Security
  • Sepeda
  • Sport

Arsip

Tags

Arema Fedora Linux Sepakbola Sports

Meta

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org

Follow me on Twitter

My Tweets

Recent Posts

  • Slow Down Your Speed
  • Korban Stereotype
  • Mengubah Kebiasaan
  • Ruby dan Sysadmin
  • Mengkoneksikan WIFI dari CLI

Recent Comments

  • sohib sanam on Mengkoneksikan WIFI dari CLI
  • udinms on Dreambox
  • riri on Membuat VPN mempergunakan Openswan
  • bernhard on Dreambox
  • lintang utara on Dreambox

© 2025 Gazebo

Powered by Esplanade Theme and WordPress