103
BAB 4
USULAN SOLUSI RANCANGAN DAN IMPLEMENTASI
4.1 Usulan rancangan koneksi kantor cabang
Untuk koneksi dari jaringan kantor pusat PT. Hotel Indonesia Natour ke jaringan
kantor-kantor cabang, diusulkan untuk menggunakan internet ADSL yang sudah tersedia
di kantor-kantor PT. Hotel Indonesia Natour. Alasan digunakannya internet ADSL
adalah karena internet ADSL memiliki downtime yang jauh lebih rendah daripada dial-
up maupun produk internet lainnya dan jaringan internet ADSL sudah berjalan pada
masing-masing cabang dengan pemakaian bandwidth yang masih belum maksimal.
Dengan internet ADSL, jaringan kantor cabang dan kantor pusat dapat terhubung
terus selama 24 jam. Internet ADSL juga memiliki kecepatan yang lebih cepat, daripada
dial-up yang kecepatannya hanya sampai 56 Kbps ataupun produk internet lainnya,
sistem berjalan untuk pusat 256 Kbps dan cabang 128 Kbps. Kecepatan internet yang
akan digunakan pada usulan koneksi untuk kantor cabang adalah masih tetap
menggunakan 128 Kbps dan untuk kantor pusat dinaikkan dari 256 Kbps menjadi 512
Kbps.
Alasan pertimbangan untuk memilih jumlah bandwidth untuk kantor cabang
masih menggunakan 128 Kbps adalah karena penggunaan bandwidth di cabang masih
belum maksimal. Sedangkan usulan untuk kantor pusat perlu dinaikkan menjadi 512
Kbps karena sudah maksimalnya penggunaan bandwidth yang sekarang ini dan juga
agar tidak terjadi bottleneck pada jaringan kantor pusat apabila ke lima belas kantor
cabang telah terkoneksi ke kantor pusat lewat internet dengan VPN. Keuntungan lainnya
104
adalah internet ADSL lebih mudah dikembangkan dan di-manage untuk perluasan
bandwidth dan koneksi kantor cabang.
Gambar 4.1 Rancangan topologi hub and spoke pada PT. Hotel Indonesia Natour.
Gambar 4.1 merupakan usulan rancangan untuk koneksi berbagai kantor cabang
dengan kantor pusat PT. Hotel Indonesia Natour yang menggunakan topologi hub-and-
spoke. Untuk sistem usulan, kantor cabang yang terhubung dengan internet ADSL
melalui ISP untuk terkoneksi ke jaringan kantor pusat pada sistem usulan ini berjumlah
lima belas kantor cabang.
105
4.2 Pemilihan hardware dan software yang akan digunakan
Dalam perencanaan perancangan untuk implementasi VPN antara kantor cabang
dengan kantor pusat PT. Hotel Indonesia Natour, perlu adanya pemilihan perangkat yang
akan digunakan. Peralatan itu dapat peralatan yang baru atau bisa juga menggunakan
peralatan jaringan yang sudah ada atau tersedia.
Seperti yang sudah dibahas hardware yang digunakan adalah pc-based VPN.
Spesifikasi hardware dan software yang digunakan adalah sebagai berikut :
• 15 PC sekelas Pentium IV untuk 15 kantor cabang PT. Hotel Indonesia
Natour, dengan memory 256 Mb RAM, 8Gb harddisk, dan 1 buah
ethernet card untuk setiap PC-nya.
• 15 Modem internet ADSL untuk 15 kantor cabang PT. Hotel Indonesia
Natour.
• Operating system Linux Debian.
• FreeSWAN software sebagai pendukung IPSec.
• SSL Software.
PC-based VPN yang akan dibuat ini menggunakan operating system Linux yang
digunakan sebagai terminate VPN pada koneksi kantor cabang dengan kantor pusat.
Adapun alasan penggunaan linux debian, adalah karena linux debian sudah dikenal
kestabilannya dalam hal server. Hal lainnya adalah karena linux tidak memerlukan
sumber daya yang besar jika dibandingkan dengan operating system lainnya.
Berikut ini adalah kelebihan lain Linux secara umum jika dibandingkan dengan
Windows :
106
- Produk Microsoft sangat mahal jika dibeli secara legal.
- Keamanan pada komputer server lebih memadai karena pilihan keamanan pada
Linux dapat diatur secara manual, dan pilihan setting konfigurasi keamanan
lebih banyak dibandingkan dengan Windows.
- Tidak terlalu banyak pembatasan-pembatasan yang terdapat pada Windows.
Pada Linux terdapat banyak pilihan yang dapat disesuaikan dengan kebutuhan.
- Sebagai server, Linux mempunyai lebih banyak pilihan-pilihan yang dapat
diaplikasikan. Hal ini sangat memberi manfaat bagi administrator profesional
untuk melakukan optimalisasi.
4.3 Usulan perubahan pada jaringan intranet.
Untuk jaringan intranet atau LAN kantor pusat tidak akan terjadi adanya
perubahan melainkan hanya ada penggantian device. Device yang diganti adalah router
intel express yang berada pada kantor pusat diganti dengan sebuah PC-based VPN
server yang juga dapat menggantikan fungsi router tersebut.
Pada VPN server dipasang satu buah ethernet card, satu buah modem. Ethernet
port ini digunakan sebagai pengarah ke internal network dan satu buah modem ini
mengarah ke internet. Untuk dapat melakukan routing maka opsi ip_forward pada file
/etc/network/option akan diaktifkan. Berikut adalah gambaran perubahan jaringannya.
107
Gambar 4.2 Perubahan router menjadi VPN Server
Jadi pada pengimplementasiannya VPN Server ini memiliki dua fungsi yaitu
sebagai VPN Server, dan juga sebagai PC router atau gateway bagi intranet PT. Hotel
Indonesia Natour.
4.4 Usulan solusi perancangan VPN
Pada usulan ini hanya akan dilakukan konfigurasi pada kantor pusat dan kantor
cabang INNA Simpang Surabaya, karena untuk konfigurasi cabang-cabang lainnya
tinggal dilakukan penyalinan dari konfigurasi cabang surabaya dan dilakukan
penyesuaian IP address nya. Untuk koneksi VPN antara kantor-kantor cabang dengan
kantor pusat, digunakan PC-based VPN server dengan OS linux Debian yang sudah
diinstalasikan sebagai gateway pada kantor-kantor PT. Hotel Indonesia Natour. Perlu
ditentukan IP address untuk setiap LAN kantor-kantor cabang dan kantor pusat PT.
108
Hotel Indonesia Natour. Selain itu, IP address yang merupakan koneksi internet akan
diberikan oleh Internet Service Provider (ISP). Pada rancangan yang diusulkan ini, IP
address yang digunakan adalah pemisalan bahwa ISP telah memberikan IP address
seperti itu.
Tabel 4.1 dibawah ini merupakan Tabel yang berisi rancangan koneksi gateway
kantor pusat. Rancangan tersebut akan digunakan untuk menghubungkan koneksi
internet yang akan digunakan untuk jalur VPN dan jalur akses internet seperti yang
sekarang sudah berjalan. Pada Tabel 4.1 ditentukan hostname yang merupakan nama
gateway tersebut, lalu IP address interface PC ethernet 0 yang merupakan IP address
jaringan lokal dalam hal ini adalah 172.16.1.1 beserta subnet mask-nya dan IP address
interface PPP 0 yang terhubung ke ISP juga beserta subnet mask-nya.
Konfigurasi PC Kantor Pusat
Host Name DebianHQ Network ID Eth0 172.16.1.0 IP Address Eth0 172.16.1.1
Subnet Mask Eth0 255.255.255.0 Network ID PPP0 202.165.100.0 IP Address PPP0 202.165.100.1
Subnet Mask PPP0 255.255.255.252
Tabel 4.1 Rancangan Koneksi gateway Kantor Pusat
Pada Tabel 4.2 terdapat rancangan gateway kantor cabang yang masing-masing
terhubung ke internet melalui ISP. Dalam rancangan tersebut terdapat hostname
yang merupakan nama gateway masing-masing kantor cabang, interface ethernet 0 –
nya yang merupakan jaringan lokal beserta subnet mask-nya masing-masing,
interface PPP 0 – nya yang terhubung ke ISP.
109
Konfigurasi PC Kantor Cabang Host Name DebianSS
Network ID Eth0 192.168.2.0 IP Address Eth0 192.168.2.1
Subnet Mask Eth0 255.255.255.0 Network ID PPP0 202.165.100.4 IP Address PPP0 202.165.100.5
Subnet Mask PPP0 255.255.255.252
Tabel 4.2 Koneksi kantor cabang INNA Simpang Surabaya
Setelah konfigurasi IP pada masing-masing VPN server dilakukan maka akan
tercipta koneksi melalui internet. Perancangan ini merupakan perancangan site-to-site
VPN yang hanya menghubungkan kedua tempat tersebut saja. Secara logical gambaran
koneksi ini bisa dilihat pada gambar berikut :
Gambar 4.3 Koneksi kantor pusat – kantor cabang
Perancangan VPN kantor cabang dengan kantor pusat PT. Hotel Indonesia
Natour merupakan VPN tipe site-to-site karena hanya menghubungkan kedua tempat
tersebut saja. VPN yang akan dirancang adalah menggunakan IPSec. Untuk
pengimplementasian IPSec dalam pembuatan VPN terdapat 5 langkah, yaitu :
110
1. Instalasi FreeSWAN
Menginstalasi paket FreeSWAN dan kernel patchnya pada VPN
server yang digunakan. Dalam hal ini digunakan Linux Debian dengan
kernel versi 2.4.18
2. Konfigurasi enkripsi RSA
Melakukan pembuatan private key dan public key yang akan
digunakan oleh FreeSWAN dengan menggunakan algoritma RSA.
3. Konfigurasi Open SSL
Konfigurasi ini dilakukan untuk menyesuaikan besar bit enkripsi dan
masa validasi dari koneksi VPN ini.
4. Konfigurasi CA.
Konfigurasi ini untuk menyesuaikan masa validasi dari sertifikat yang
akan digunakan dan juga melakukan pembuatan sertifikat baru
5. Konfigurasi sertifikat FreeSWAN
Konfigurasi ini dilakukan untuk menyesuaikan kedua sertifikat diatas
dengan sertifikat yang ada di FreeSWAN dan juga membuat signature
agar VPN server dapat mengetahui dan mengijinkan paket-paket yang
akan melewatinya.
4.5 Pengimplementasian VPN Server.
Dalam pengimplementasian VPN server pada PT. Hotel Indonesia Natour
digunakan beberapa tahap utama yang diperlukan, antara lain :
1. Instalasi paket FreeSWAN dan dependency nya.
2. Patch dan kompilasi kernel.
111
3. Instalasi network
4. Konfigurasi VPN server.
Berikut dibawah ini salah satu contoh rancangan IPSec untuk membangun
sebuah VPN antara kantor pusat dengan kantor cabang PT. Hotel Indonesia Natour.
Dalam skripsi ini, hanya akan diambil satu contoh karena hampir semua rancangannya
sama untuk semua kantor cabang, hanya password authentikasi serta konfigurasi IP
address-nya saja yang berbeda. Untuk perancangan IPSec lengkapnya dapat dilihat pada
lampiran dibagian belakang.
4.5.1 Instalasi Paket FreeSWAN dan Dependency -nya
Proses pertama kali dalam membuat VPN server adalah melakukan instalasi
FreeSWAN. FreeSWAN ini merupakan implementasi dari protokol IPSec untuk linux
yang dapat diperluas untuk dapat melakukan enkripsi. Pada proses penginstalasian ini
diperlukan suatu dependency, yaitu modul-modul yang dibutuhkan untuk membentuk
program tersebut. Dependency ini biasanya diletakan terpisah dari program utamanya
sendiri. Dalam menginstalasi FreeSWAN dependency yang diperlukan adalah make,
kernel-package, gcc, libncurses5-dev. Dependency ini perlu diinstal bersamaan dengan
aplikasi tersebut, jika ada salah satu dependency yang tidak terpenuhi maka program
tidak akan terinstall dengan sempurna.
Untuk melakukan instalasi FreeSWAN pada debian digunakan perintah apt-get
install. Perintah jelasnya adalah seperti berikut :
# apt-get install FreeSWAN kernel-patch-FreeSWAN kernel-source-2.4.18 libncurses5-dev gcc make kernel-package
112
Setelah memasukan perintah diatas akan muncul dialog konfirmasi untuk
membuat device FreeSWAN. Device ini dimaksudkan untuk membuat virtual ethernet
agar kita bisa melakukan routing paket yang akan keluar, apakah paket itu akan
dienkripsi atau tidak. Pilih ’yes’ untuk pertanyaan ini. Setelah proses ini dilakukan maka
akan ditampilkan dialog box selanjutnya yang meminta untuk merestart daemon
FreeSWAN. Daemon ini merupakan service yang berjalan pada kernel linux. Proses ini
dilakukan untuk memperbaiki sisi security nya. Pada pilihan ini opsi ’yes’ diambil.
Sesudah daemon FreeSWAN direstart maka dialog box yang muncul selanjutnya
adalah permintaan untuk membuat private key dan public key yang akan digunakan
untuk host (dalam hal ini VPN server). Public key dan private key ini berfungsi untuk
proses authentikasi koneksi VPN. Key ini dapat dibagikan kepada user lain, yang tentu
saja dengan aturan yang sudah ditentukan administrator. Sedangkan untuk algoritma
yang digunakan adalah RSA (Rivest, Shamir, Adleman). Kemungkinan lain adalah
dengan menggunakan shared secrets key. Key ini adalah password sama yang
digunakan pada kedua sisi tunnel untuk authentikasi koneksi. Namun dalam
penerapannya, jika menggunakan banyak koneksi, penggunaan authentikasi RSA lebih
mudah digunakan.
Tampilan selanjutnya adalah dialog yang meminta untuk memilih penggunaan
plain format sebagai sertifikasi atau menggunakan sertifikasi X509. Jika aplikasi yang
berjalan diatas VPN ini digunakan untuk hubungan antar host, maka cukup digunakan
plain format. Tetapi jika implementasi IPSec ini digunakan untuk aplikasi lain yang
tidak mendukung FreeSWAN maka harus digunakan memilih sertifikasi X509, karena
sertifikasi ini merupakan sertifikasi yang sudah di standarisasi dan digunakan secara
113
luas. Dialog box berikutnya adalah dialog konfirmasi yang menanyakan kepemilikan
sertifikasi X509 yang lainnya. Jika memiliki program lainnya yang berjalan dengan
menggunakan sertifikasi X509 seperti RSA security, maka dapat digunakan key yang
sama, namun jika tidak ada maka akan dibuat sertifikasi baru. Langkah berikutnya
adalah memasukan panjang bit enkripsi yang akan digunakan. Panjang bit enkripsi dari
RSA key secara default adalah 1024 bits dan sangat tidak disarankan untuk
menggunakan bit dibawah nilai tersebut. Aplikasi ini juga menganjurkan panjang bit
enkripsi untuk tidak lebih dari 2048 bits karena hal ini akan menyebabkan lamanya
proses authentikasi.
Gambar 4.4 Konfigurasi panjang bit enkripsi RSA key.
Dialog box selajutnya adalah konfirmasi untuk pembuatan sertifkat FreeSWAN.
Setelah dialog ini selesai akan maka akan muncul dialog box yang akan meminta
berbagai jenis informasi seperti kode negara, nama kota, nama organisasi, nama satuan
unit yang bertanggung jawab, nama host komputer, dan email dari administrator.
Keterangan ini kemudian diisi sesuai dengan keperluan yang ada.
114
4.5.2 Patch dan kompilasi kernel
Pada tahapan ini dilakukan kompilasi kernel yang bertujuan untuk memenuhi
kebutuhan aplikasi akan resource kernel, karena aplikasi FreeSWAN membuat sebuah
device IPSec yang membutuhkan akses langsung ke kernel linux. Jika kompilasi kernel
ini tidak dilakukan maka akses terhadap device IPSec tidak akan dapat dilakukan yang
mengakibatkan tidak akan terjadinya tunnel VPN.
Pada tahapan ini, pertama akan dilakukan patch kernel terlebih dahulu terhadap
source kernel lama yakni kernel 2.4.18, dan kemudian kernel tersebut akan dikompilasi
kembali dengan mengaktifkan sejumlah fitur IPSec.
Untuk melakukan patch kernel maka pertama kali akan dilakukan ekstraksi file
kernel-source-2.4.18 yang berada pada direktori /usr/src dan kemudian membuat soft
link dari hasil ekstraksi file tersebut direktori /usr/src/linux. Pembuatan soft link hanya
untuk mempermudah dalam berpindah–pindah direktori. Perintah yang harus dilakukan
adalah sebagai berikut :
# cd /usr/src # bunzip2 kernel-source-2.4.18.tar.bz2 # tar –xvf kernel-source-2.4.18.tar # ln –s /usr/src/kernel-source-2.4.18 /usr/src/linux
Setelah perintah tersebut dijalankan maka source kernel yang berada di direktori
/usr/src/linux telah siap untuk dipatch. Masukan perintah :
# cd /usr/src/linux # /usr/src/kernel-patches/all/apply/FreeSWAN
Setelah perintah ini dilakukan maka akan muncul berbagai pesan yang muncul
dari sistem saat patching eksekusi berlangsung. Seperti yang ditunjukan Gambar 4.5.
115
Kemudian setelah melakukan kernel patch, maka langkah berikutnya adalah
melakukan backup kernel lama dan melakukan kompilasi kernel baru. Backup kernel
lama ini dapat dilakukan dengan membuat copy file dari /boot/vmlinuz-2.4.18 dan file
/boot/config-2.4.18. Setelah pengkopian file dilakukan maka langkah berikutnya adalah
mengetikkan perintah :
# cp /boot/vmlinuz-2.4.18-bf2.4 /boot/vmlinuz-baru # cp /boot/config-2.4.18-bf2.4 /usr/src/config-baru # cd /usr/src/linux # make menuconfig
Setelah hal diatas dilakukan maka akan muncul layar tampilan menu konfigurasi
kernel yang muncul setelah perintah ’make menuconfig’ dieksekusi. Pada tampilan ini
akan dipilih ’Load and Alternate Configuration File’ yang dimaksudkan untuk meload
file konfigurasi dari kernel yang sudah di patch pada tahap awal. Masukan nama file
yaitu ’config-baru’ dan kemudian tekan ’yes’. Kemudian cek pada bagian Network
Option dan akan terlihat opsi ’IPSec Option’, seperti yang terlihat pada Gambar 4.7, ini
menandakan konfigurasi yang diload tadi adalah konfigurasi yang benar. Langkah
selanjutnya adalah pilih opsi tersebut dan simpan, lalu keluar.
Pada langkah selanjutnya kita melakukan pembuatan kernel image baru dengan
menggunakan konfigurasi yang baru. Perintah yang harus dijalankan adalah :
# make-kpkg buildpackage modules kernel-image binary # cd /usr/src/linux # dpkg –i kernel-image-2.4.18_10.00.Custom_i386.deb
Dengan perintah diatas kita melakukan kompilasi modul kernel yang akan
menghasilkan kernel image baru dan kemudian menginstalasikan kernel baru pada
sistem.
116
Setelah proses kompilasi dan instalasi kernel pada sistem dilakukan, langkah
selanjutnya adalah pembuatan konfigurasi boot loader agar jika terjadi crash pada sistem
kernel baru, kita masih dapat menggunakan kernel lama. Untuk melakukan ini maka file
/etc/lilo.conf perlu diedit. Berikut adalah konfigurasi baru untuk file lilo.conf :
# Boot by Linux default # /etc/lilo.conf default=Linux-VPN image = /boot/vmlinuz-2.4.18 label = Linux-VPN read-only # restricted # alias=1 image = /boot/vmlinuz-lama label=Linux-lama read-only optional # restricted # alias=2 Langkah selanjutnya yang perlu dilakukan adalah melakukan konfigurasi pada
kernel parameter network agar dapat mendukung IPSec dan IP redirection. Jika hal ini
tidak dilakukan maka pada saat user melakukan konfigurasi VPN tidak akan terjadi
routing. Pengeditan yang dilakukan pada file /etc/sysctl.conf akan menambahkan
parameter kepada kernel pada saat boot, sehingga root tidak harus memasukan perintah
setiap kali VPN server akan dijalankan. Baris perintah yang ditambahkan pada file
/etc/sysctl.conf adalah :
Net.ipv4.conf.eth0.rp_filter=0 Net.ipv4.conf.ipsec.rp_filter=0 Net.ipv4.ip_forward=1
117
Setelah hal-hal diatas dilakukan maka PC linux ini sudah memiliki sebuah
aplikasi FreeSWAN yang terintegrasi dengan kernel linux. Namun PC linux ini belum
bisa melakukan fungsi VPN karena konfigurasi VPN tersebut belum diatur.
Gambar 4.5 Kernel Patching pada FreeSWAN
118
Gambar 4.6 Menu dari konfigurasi kernel
Gambar 4.7 IPSec Option pada konfigurasi kernel linux
119
4.5.3 Instalasi pada Network.
Untuk koneksi VPN server seperti Gambar 4.3 diatas dibutuhkan IP address
public yang didapatkan dari ISP. Dengan menggunakan IP address public ini maka
server ini bisa diakses dari internet. Selain IP address juga dibutuhkan konfigurasi pada
file /etc/network/options dengan cara menambahkan baris yang berisikan
ip_forward=yes.
Setelah melakukan pengeditan diatas maka perlu dimasukan perintah ’route’
yang digunakan untuk memberitahu kepada kernel interface mana yang digunakan
sebagai external interface. Perintah ini juga digunakan untuk melakukan routing ke
internet. Perintah yang digunakan adalah :
# route add 0.0.0.0 202.165.100.1 if ppp0
Perintah ini berarti mengarahkan semua routing yang tidak ada dalam routing
table ke interface PPP0 dengan alamat 202.165.100.1. maka jika ada permintaan ke
internet dengan alamat IP 202.164.1.15, paket ini akan diarahkan ke interface ppp0 yang
berhubungan dengan ISP dan di routing ke internet.
Dengan kondisi seperti ini maka VPN server ini sudah bisa digunakan sebagai gateway
yang akan me-routing segala informasi dari internal network menuju internet maupun
sebaliknya.
4.5.4 Konfigurasi VPN server.
Pada tahap ini dilakukan pengeditan pada file-file konfigurasi yang mendukung
FreeSWAN, seperti file konfigurasi openSSL dan juga file CA (Certificate Authority)
dari openSSL.
120
4.5.4.1 Konfigurasi OpenSSL.
Pertama yang harus dilakukan dalam konfigurasi openSSL adalah melakukan
edit pada file konfigurasi openSSL yang terletak di /etc/ssl/opnssl.cnf untuk menentukan
besar bit yang akan dienkripsi dan masa validasi dari koneksi VPN ini. Dalam hal ini,
nilai dari default enkripsi adalah 1024 sama dengan nilai default pada enkripsi RSA
yang ada pada FreeSWAN, maka nilai ini dimasukan sama seperti yang diisikan pada
enkripsi RSA yakni 1024 bits. Dan juga lakukan pengubahan pada masa validasi dari
365 hari menjadi 30 hari, hal ini dimaksudkan agar setiap satu bulan sekali dibuat
sertifikasi baru bagi setiap cabang, hal ini dilakukan untuk meningkatkan sisi sekuriti
dari sertifikasi itu sendiri.
Gambar 4.8 Konfigurasi default_bit pada opnssl.cnf
Gambar 4.9 Konfigurasi default_days pada opnssl.cnf
4.5.4.2 Konfigurasi CA
Konfigurasi CA (Certificate Authority) merupakan suatu tools yang akan
mengeluarkan sertifikat untuk dibagikan ke host client, sehingga jika client melakukan
koneksi ke kantor pusat maka akan diketahui dan dicatat log-nya dari sertifikasi ini.
Konfigurasi ini berisi indentitas dari si pemilik sertifikat, seperti yang dilakukan pada
121
saat penginstalasian FreeSWAN. Pada konfigurasi ini dilakukan penyesuaian dengan
konfigurasi openSSL diatas pada validation_days, agar antara sertifikat dan mesin
pemroses sertifikat terdapat kesamaan waktu. Dalam hal ini berarti jika masa berlaku
sertifikat habis maka pada mesin juga akan habis dan sertifikasi baru akan dibuat.
Untuk konfigurasi CA file yang harus diubah adalah /usr/lib/ssl/misc/CA.sh,
untuk disesuaikan dengan konfigurasi openSSL diatas. Disini masa validasi akan diubah
menjadi 30 hari.
Gambar 4.10 Konfigurasi CA.sh
Kemudian yang harus dilakukan adalah membuat CA baru. Hal ini dimaksudkan
agar kita memiliki sertifikat baru dengan masa berlaku 30 hari. Agar semua file
konfigurasi masuk ke suatu direktori maka dibuat sebuah direktori yang berlokasi di
/var/sslca. Kemudian masukan perintah untuk membuat sertifikat baru :
# /usr/lib/ssl/misc/CA.sh –newca
122
Gambar 4.11 Konfigurasi CA
4.5.4.3 Konfigurasi sertifikat FreeSWAN
Setelah CA terbentuk, maka dilanjutkan dengan pembuatan sertifikasi
FreeSWAN dengan nama newreq. Sertifikat ini merupakan sertifikat yang digunakan
oleh server ketika client meminta untuk melakukan koneksi ke VPN server. Pada saat
sebuah host client meminta untuk melakukan koneksi, pertama-tama server akan
meminta sebuah password (challenge password), jika client bisa menjawab dengan tepat
maka sertifikat akan dilihat oleh server, jika tidak maka koneksi akan diputuskan.
Kemudian server akan mencocokan sertifikat yang dimiliki oleh client dengan key nya,
jika cocok maka koneksi akan terjalin, tapi jika tidak maka koneksi akan terputus.
Pembuatan sertifikasi FreeSWAN ini dilakukan dengan cara :
123
# /usr/lib/ssl/misc/CA.sh –newreq
Gambar 4.12 Konfigurasi sertifikat FreeSWAN
Setelah sertifikasi request terbentuk, maka sertifikat tersebut harus ditandai
dengan sebuah signature. Signature ini berfungsi untuk menjamin keaslian dari sertifikat
request tersebut, jika sertifikat request dibuat ditempat lain maka key yang dihasilkan
juga tidak sama. Pembuatan key ini dilakukan dengan cara :
# /usr/lib/ssl/misc/CA.sh –sign Dan kemudian pilih ‘y’ untuk mengakhiri proses pembuatan signature.
124
Gambar 4.13 Pembuatan key signature dari sertifikat request
Agar proses penamaan mudah diingat maka akan dilakukan perubahan penamaan
pada sertifikat yang telah dibuat. Nama dari file newcert.pem dirubah menjadi
125
vpn.hin.net.pem dan nama newreq.pem dirubah menjadi vpn.hin.net.key. Berikut adalah
perintah untuk melakukan perubahan nama file tersebut :
# mv /var/sslca/newcert.pem /var/sslca/vpn.hin.net.pem # mv /var/sslca/newreq.pem /var/sslca/vpn.hin.net.key Setelah proses penamaan dilakukan, langkah selanjutnya adalah mengubah isi
dari sertifikasi vpn.hin.net.key. yang terletak pada folder /var/sslca/. Perubahan ini
dimaksudkan agar seluruh proses authentikasi yang terjadi hanya menggunakan
authentikasi RSA saja. Pada bagian ‘-----BEGIN CERTIFICATE REQUEST-----‘
hingga bagian akhir merupakan proses authentikasi dari openSSL, sehingga dalam hal
ini pada saat client meminta koneksi dengan server akan terjadi dua kali authentikasi.
Proses ini selain dapat membuat proses authentikasi menjadi lama juga akan membuat
masalah pada level aplikasi. Proses authentikasi ini dapat dihilangkan dengan cara
menghapus mulai dari bagian ‘----BEGIN CERTIFICATE REQUEST -----‘ hingga
bagian akhirnya. Sehingga file vpn.hin.net.key akan dimulai dari ‘----BEGIN RSA
PRIVATE KEY-----‘ dan selesai dengan ‘-----END RSA PRIVATE KEY-----‘.
Setelah semua proses pembuatan dan pengeditan file –file sertifikat dilakukan,
maka langkah berikutnya adalah memindahkan file-file tersebut kedalam direktori IPSec
yang terletak di /etc/ipsec.d dan membuat sebuah file kosong bernama crl.pem pada
direktori /etc/ipsec.d/crls/crl.pem. Perintah yang digunakan adalah sebagai berikut :
# cp /var/sslca/vpn.hin.net.key /etc/ipsec.d/private/ # cp /var/sslca/vpn.hin.net.pem /etc/ipsec.d/ # cp /var/sslca/demoCA/cacert.pem /etc/ipsec.d/cacerts/ # openssl ca –gencrl –out /etc/ipsec.d/crls/crl.pem Langkah berikutnya dari konfigurasi server ini adalah melakukan edit pada
password authentikasi untuk IPSec. File konfigurasi ini terletak pada /etc/ipsec.secrets
126
dan password yang diisikan haruslah sama dengan pada waktu mengisikan password
pada pembuatan newca dan newreq. Pada tahap ini, jika password yang diisikan tidak
sama dengan yang ada pada sertifikat, maka VPN server tidak akan mengijikan proses
authentikasi pada sertifikat tersebut, dan sebagai akibatnya maka perlu dibuat sertifikat
baru yang sama dengan password dengan ipsec.secrets ini.
Gambar 4.14 File ipsec.secrets VPN server kantor pusat
Setelah semua konfigurasi diatas dilakukan, maka sebagai langkah terakhir harus
dilakukan penulisan file konfigurasi baru untuk IPSec FreeSWAN. File konfigurasi ini
terletak di /etc/ipsec.conf. Pada file konfigurasi ini terdapat beberapa hal yang harus
diketahui antara lain IP address internal yang akan dihubungkan, IP address yang
menjadi gateway dari network yang akan dihubungkan, dan nama sertifikat yang
digunakan. Berikut adalah contoh dari konfigurasi yang digunakan pada VPN server
kantor pusat.
# /etc/ipsec.conf – FreeSWAN IPSec configuration # file config setup config setup
interfaces=%defaultroute klipsdebug=none plutodebug=none plutoload=%search plutostart=%search uniqeids=yes
127
conn %default keyintries=1 compress=yes disablearrivalcheck=no authby=rsasig leftrsasigkey=%cert rightrsasigkey=%cert
conn roadwarrior-net
leftsubnet=172.16.1.0/255.255.255.0 right=%any left=%defaultroute leftcert=vpn.hin.net.pem auto=add pfs=yes
conn roadwarrior
right=%any left=%defaultroad auto=add pfs=yes
Pada konfigurasi diatas leftsubnet merupakan interface yang terhubung dengan
internal network dan diisi dengan IP address dan subnet mask yang sesuai. Sedangkan
untuk right diisi dengan %any, ini menunjukan bahwa interface yang mengarah ke
internet ini bisa menggunakan IP berapapun selama tidak sama dengan pool IP pada
internal network. Sedangkan untuk penulisannya sendiri hanya menggunakan kata right
karena yang isinya berupa IP address dan bukan subnet mask seperti pada penulisan
leftsubnet.
Untuk bagian leftcert, disini ditunjukan bahwa untuk memasuki leftsubnet client
harus memiliki sertifikat vpn.hin.net.pem. Sedangkan untuk bagian auto=add,
merupakan perintah untuk memberikan ijin secara otomatis bagi client yang memiliki
sertifikat vpn.hin.net.pem.
128
4.5.5 Konfigurasi VPN Client
Pada konfigurasi client, sama seperti pada VPN server harus dilakukan kompilasi
kernel dan kernel patch untuk menginstall aplikasi FreeSWAN, dan kemudian mengkopi
sertifikat dan file-file konfigurasi lainnya, seperti file konfigurasi openSSL dan CA.
Setelah proses kompilasi kernel dan kernel patch aplikasi FreeSWAN selesai
dilakukan, file-file konfigurasi yang berada pada direktori /var/sslca/ VPN server kantor
pusat ke sebuah direktori sementara pada direktori /var/sby/vpn VPN server kantor
cabang Surabaya. Kemudian dilakukan perubahan nama dan menyalin ke direktori
tempat IPSec bekerja yaitu /etc/ipsec.d/. Perintah yang dilakukan yaitu :
# cp /var/sby/vpn/vpn.hin.net.pem /etc/ipsec.d/ # mv/var/sby/vpn/vpn.hin.net.pem /var/sby/vpn/simpang.hin.net.pem # mv /var/sby/vpn/vpn.hin.net.key /var/sby/vpn/simpang.hin.net.key # cp /var/sby/vpn/vpn.hin.net.pem /etc/ipsec.d/ # cp /var/sby/vpn/vpn.hin.net.key /etc/ipsec.d/private/ # cp /var/sby/vpn/cacerts.pem /etc/ipsec.d/cacerts/cacerts.pem # cp /var/sby/vpn/crl.pem /etc/ipsec.d/crls/ Kemudian lakukan edit pada file /etc/ipsec.secrets seperti yang dilakukan pada
VPN server kantor pusat. Kemudian langkah berikutnya adalah melakukan penyesuaian
pada ip address pada file /etc/ipsec.conf.
Gambar 4.15 File ipsec.secrets VPN server kantor cabang
129
Langkah terakhir dari konfigurasi client ini adalah penyesuaian konfigurasi pada
/etc/ipsec.conf. Langkah ini seperti yang dilakukan pada konfigurasi VPN server kantor
pusat hanya dilakukan dengan menyesuaikan leftsubnet dan rightsubnetnya. Berikut
adalah contoh file konfigurasi VPN server kantor cabang.
# /etc/ipsec.conf – FreeSWAN IPSec configuration # file config setup config setup
interfaces=%defaultroute klipsdebug=none plutodebug=none plutoload=%search plutostart=%search uniqeids=yes
conn %default
keyintries=0 compress=yes disablearrivalcheck=no authby=rsasig leftrsasigkey=%cert rightrsasigkey=%cert
conn roadwarrior-net
left=202.165.100.1 leftsubnet=172.16.1.0/255.255.255.0 leftcert=vpn.hin.net.pem right=%defaultroute rightcert=simpang.hin.net.pem auto=add pfs=yes
conn roadwarrior
left=202.165.100.1 leftcert=vpn.hin.net.pem right=%defaultroute rightcert=simpang.hin.net.pem auto=add pfs=yes
4.6 Evaluasi VPN
Sebelum melakukan testing VPN, maka harus dipastikan bahwa koneksi routing
antara VPN server kantor pusat dan kantor cabang dapat berjalan. Caranya dapat dengan
melihatnya pada routing table yang terdapat di VPN server kantor cabang. Dari routing
130
table ini dapat dilihat IP dengan tujuan VPN server kantor pusat yang beralamat
202.165.100.1 sudah terdapat pada route destination, VPN server ini bisa dijangkau
melalui gateway berikutnya dengan alamat 202.165.100.6 melalui interface ipsec0. Hal
ini menandakan paket yang keluar menuju alamat 202.165.100.6 akan dienkripsi.
Gambar 4.16 Routing table VPN server surabaya
4.6.1 Testing VPN
Untuk memastikan bahwa VPN berjalan dengan baik adalah dengan melakukan
testing. Testing ini dilakukan dengan menggunakan software sniffer Ethereal. Software
Ethereal ini nantinya akan menangkap paket-paket yang lewat ketika transfer data
terjadi. Dengan melakukan sniff menggunakan software ini, maka dapat dilihat bahwa
paket-paket tersebut dienkripsi atau tidak. Apabila paket tersebut dienkripsi maka dapat
disimpulkan bahwa VPN tersebut sudah berjalan dengan baik. Namun jika sistem VPN
sudah dijalankan, tetapi paket-paket yang ditangkap oleh software Ethereal tidak
terenkripsi maka VPN tersebut belum berhasil diimplementasikan.
Untuk memastikan bahwa usulan solusi rancangan dan konfigurasi yang dibuat
berjalan dengan baik, maka dilakukan testing dengan melakukan sniff melalui Ethereal.
Testing dilakukan dengan melakukan login ftp dari komputer kantor cabang ke server ftp
131
di kantor pusat. Dengan melihat pada software Ethereal dapat dilihat bahwa paket yang
tertangkap dapat dilihat username dan password untuk login ftp dari kantor cabang pada
ftp server di kantor pusat. Gambar 4.17 dan Gambar 4.18 adalah hasil yang terlihat
ketika software Ethereal melakukan sniff terhadap paket-paket yang dikirimkan ke suatu
tujuan tertentu. Ketika melakukan sniff terhadap paket-paket ini belum
diimplementasikan sistem VPN-nya sehingga semua paket yang lewat dapat dilihat data
yang terdapat pada paket tersebut.
Gambar 4.17 Sniff paket data tanpa VPN
Pada Gambar 4.17 terlihat bahwa suatu user melakukan ftp ke IP address
172.16.1.2 yang merupakan jaringan lokal kantor pusat. Pada software ethereal terlihat
bahwa username yang digunakan adalah ted dan password yang digunakan adalah
123456789. Apabila diimplementasikan sistem VPN, maka paket-paket yang ditangkap
132
oleh ethereal tidak akan terlihat. Gambar 4.18 memperlihatkan paket yang dienkripsi
dengan melakukan ftp seperti yang dilakukan sebelumnya.
Gambar 4.18 Sniff paket data dengan VPN
Terlihat bahwa dengan VPN setiap paket yang akan dikirim dari kantor cabang
atau sebaliknya akan dienkripsi terlebih dahulu sehingga data yang terdapat dalam paket
tidak terlihat. Paket-paket yang dienkripsi hanya terlihat ESP(SPI=0x8eb298), yang
artinya menggunakan protokol ESP.
133
4.6.2 Kelebihan dan Kelemahan VPN
4.6.2.1 Kelebihan VPN
Ada beberapa keuntungan yang dapat diperoleh dengan menggunakan VPN
untuk implementasi WAN. Pertama, jangkauan jaringan lokal yang dimiliki suatu
perusahaan akan menjadi luas, sehingga perusahaan dapat mengembangkan bisnisnya di
daerah lain. Waktu yang dibutuhkan untuk menghubungkan jaringan lokal ke tempat
lain juga semakin cepat, karena proses instalasi infrastruktur jaringan dilakukan dari
perusahaan/kantor cabang yang baru dengan ISP terdekat di daerahnya. Sedangkan
penggunaan leased line sebagai WAN akan membutuhkan waktu yang lama untuk
membangun jalur koneksi khusus dari kantor cabang yang baru dengan perusahaan
induknya. Dengan demikian penggunaan VPN secara tidak langsung akan meningkatkan
efektivitas dan efisiensi kerja.
Kedua, penggunaaan VPN dapat mereduksi biaya operasional bila dibandingkan
dengan penggunaan leased line sebagai cara tradisional untuk mengimplementasikan
WAN. VPN dapat mengurangi biaya pembuatan jaringan karena tidak membutuhkan
kabel (leased line) yang panjang. Penggunaan kabel yang panjang akan membutuhkan
biaya produksi yang sangat besar. Semakin jauh jarak yang diinginkan, semakin
meningkat pula biaya produksinya. VPN menggunakan internet sebagai media
komunikasinya. Perusahaan hanya membutuhkan kabel dalam jumlah yang relatif kecil
untuk menghubungkan perusahaan tersebut dengan pihak ISP (internet service provider)
terdekat.
Media internet telah tersebar ke seluruh dunia, karena internet digunakan sebagai
media komunikasi publik yang bersifat terbuka. Artinya setiap paket informasi yang
dikirimkan melalui internet, dapat diakses dan diawasi bahkan dimanipulasi, oleh setiap
134
orang yang terhubung ke internet pada setiap saat. Setiap orang berhak menggunakan
internet dengan syarat dia memiliki akses ke internet. Untuk memperoleh akses ke
internet, orang tersebut dapat dengan mudah pergi ke warnet (warung internet) yang
sudah banyak tersebar di Indonesia. Oleh karena itu untuk memperoleh komunikasi yang
aman, perlu protokol tambahan yang khusus dirancang untuk mengamankan data yang
dikirim melalui internet, sehingga data tersebut hanya dapat diakses oleh pihak tertentu
saja.
Penggunaan VPN juga dapat mengurangi biaya telepon untuk akses jarak jauh,
karena hanya dibutuhkan biaya telepon untuk panggilan ke titik akses yang ada di ISP
terdekat. Pada beberapa kasus hal ini membutuhkan biaya telepon SLJJ (sambungan
langsung jarak jauh), namun sebagian besar kasus cukup dengan biaya telepon lokal.
Berbeda dengan penggunaan leased line, semakin jauh jarak antar terminal, akan
semakin mahal biaya telepon yang digunakan.
Biaya operasional perusahaan juga akan berkurang bila menggunakan VPN. Hal
ini disebabkan karena pelayanan akses dial-up dilakukan oleh ISP, bukan oleh
perusahaan yang bersangkutan. Secara teori biaya operasional ISP yang dibebankan
kepada perusahaan bisa jauh lebih kecil daripada biaya operasional akses dial-up
tersebut ditanggung perusahaan itu sendiri karena biaya operasional ISP itu ditanggung
bersama-sama oleh ribuan pelanggan ISP tersebut.
Ketiga, penggunaan VPN akan meningkatkan skalabilitas. Perusahaan yang
tumbuh pesat akan membutuhkan kantor cabang baru di beberapa tempat yang
terhubung dengan jaringan lokal kantor pusat. Bila menggunakan leased line,
penambahan satu kantor cabang membutuhkan satu jalur untuk membangun WAN.
Penambahan satu kantor cabang baru lagi (dua kantor cabang) akan membutuhkan dua
135
tambahan jalur, masing-masing ke kantor pusat dan ke kantor cabang terdahulu. Jika
mereka memiliki kantor cabang yang ke-3, dibutuhkan enam jalur untuk
menghubungkan semua kantor.
Berbeda dengan penggunaan leased line, pada VPN, penambahan satu kantor
cabang hanya membutuhkan satu jalur, yaitu jalur yang menhubungkan kantor cabang
yang baru dengan ISP terdekat. Selanjutnya jalur dari ISP akan terhubung ke internet
yang merupakan jaringan global. Dengan demikian penggunaan VPN untuk
implementasi WAN akan menyederhanakan topologi jaringannya.
Keempat, VPN memberi kemudahan untuk diakses dari mana saja, karena VPN
terhubung ke internet. Sehingga pegawai yang mobile dapat mengakses jaringan khusus
perusahaan di manapun dia berada. Selama dia bisa mendapatkan akses ke internet ke
ISP terdekat, pegawai tersebut tetap dapat melakukan koneksi dengan jaringan khusus
perusahaan. Hal ini tidak dapat dilakukan jika menggunakan leased line yang hanya
dapat diakses pada terminal tertentu saja.
4.6.2.2 Kelemahan VPN
VPN juga memiliki kelemahan yaitu pertama, VPN membutuhkan perhatian
yang serius pada keamanan jaringan publik (internet). Oleh karena itu diperlukan
tindakan yang tepat untuk mencegah terjadinya hal-hal yang tidak diinginkan seperti
penyadapan, hacking dan tindakan cyber crime pada jaringan VPN.
Kedua, ketersediaan dan performansi jaringan khusus perusahaan melalui media
internet sangat tergantung pada faktor-faktor yang berada di luar kendali pihak
perusahaan. Kecepatan dan keandalan transmisi data melalui internet yang digunakan
sebagai media komunikasi jaringan VPN tidak dapat diatur oleh pihak pengguna
136
jaringan VPN, karena traffic yang terjadi di internet melibatkan semua pihak pengguna
internet di seluruh dunia.
Ketiga, perangkat pembangun teknologi jaringan VPN dari beberapa vendor
yang berbeda ada kemungkinan tidak dapat digunakan secara bersama-sama karena
standar yang ada untuk teknologi VPN belum memadai. Oleh karena itu fleksibilitas
dalam memilih perangkat yang sesuai dengan kebutuhan dan keuangan perusahaan
sangat kurang.
Keempat, VPN harus mampu menampung protokol lain selain IP dan teknologi
jaringan internal yang sudah ada. Akan teteapi IP masih dapat digunakan VPN melalui
pengembangan IPSec (IP Security Protocol).