• Tidak ada hasil yang ditemukan

BAB 4 IMPLEMENTASI DAN EVALUASI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 4 IMPLEMENTASI DAN EVALUASI"

Copied!
60
0
0

Teks penuh

(1)

BAB 4

IMPLEMENTASI DAN EVALUASI

Pada bab ini akan dijelaskan mengenai pembuatan Virtual Private Network. Program VPN yang digunakan yaitu OpenVPN. Dalam subbab akan diuraikan dari awal penginstalan software sampai implementasinya.

4.1 Instalasi OpenVPN

Untuk menginstal OpenVPN tidaklah susah, dan spesifikasi komputer yang ada pada kantor PT. Pundarika Atma Semesta sudah mencukupi. OpenVPN dapat berjalan di berbagai sistem operasi, seperti Linux, Windows 2000/XP keatas, OpenBSD, FreeBSD, NetBSD, Mac OS X, dan Solaris. Yang akan dijelaskan di sini adalah yang menggunakan sistem operasi Windows XP.

Software OpenVPN merupakan freeware dan open-source. OpenVPN

versi terbaru (sudah terdapat GUI untuk Windows) dapat di-download di http://openvpn.se/download.html. Pada saat penulisan skripsi ini, versi paling stabil yang telah dirilis adalah versi 2.0.9 dengan GUI versi 1.0.3. 1. Mulai proses instalasi dengan meng-execute file yang telah di-download.

Double click openvpn-2.0.9-gui-1.0.3-install.exe seperti gambar dibawah ini.

(2)

2. Pada jendela Welcome seperti pada gambar, klik “Next” untuk memulai proses instalasi.

Gambar 4.2 Proses Awal Penginstalan OpenVPN

3. Klik tombol “I Agree” untuk melanjutkan.

(3)

4. Pilih komponen yang mau diinstal. Disini yang akan dipilih adalah : - OpenVPN User-Space components

- OpenVPN RSA Certificate Management Scripts - OpenVPN GUI

- AutoStart OpenVPN GUI - My Certificate Wizard

- OpenVPN File Association - OpenVPN Service

- TAP-WIN32 VEA - OpenSSL DLLs

- Add Shortcut to Start Menu - Add OpenVPN to PATH

Lalu pada window seperti pada gambar berikut tekan “Next”

(4)

5. Pilih folder untuk instalasi OpenVPN lalu tekan tombol “Install”.

Gambar 4.5 Folder untuk Penginstalan OpenVPN

(5)

6. Jika ada warning message seperti gambar di bawah tekan tombol Continue

Anyway.

Gambar 4.7 Pesan Pemberitahuan

7. Instalasi telah berhasil, klik tombol “Finish” untuk keluar dari installer.

(6)

4.2 Membuat Sertifikat

Pada bagian ini akan dijelaskan tentang pembuatan sertifikat X509 untuk server dan client OpenVPN. OpenVPN sudah menyediakan suatu batch

file yang terletak di folder instalasi OpenVPN atau secara default

”C:\Program Files\OpenVPN\easy-rsa”, selanjutnya akan disebut

default folder. Langkah - langkah pembuatannya adalah sebagai berikut :

1. Buat suatu folder baru dengan nama “keys” di default folder

2. Copy file serial.start dan index.txt.start lalu ubah namanya menjadi serial (tanpa ekstensi) dan index.txt. Sertifikat akan disimpan di

folder ini dan file - file ini akan digunakan untuk pembuatan sertifikat.

Gambar 4.9 Folder keys

3. Kembali ke folder “C:\Program Files\OpenVPN\easy-rsa” lalu

execute batch file init-config.bat, fungsi batch file ini adalah untuk

(7)

openssl.cnf.sample ke openvpn.ssl. File openSSL adalah standar konfigurasi OpenSSL dan file vars.bat menyimpan variabel - variabel yang digunakan oleh OpenVPN untuk membuat sertifikat.

Gambar 4.10 Folder easy-rsa dan File - File yang Telah Dibuat

4. Edit file vars.bat dengan program editor seperti notepad, textpad.

(8)

Pada file ini, beberapa parameter diisi untuk keperluan sertifikat selanjutnya. set HOME=%ProgramFiles%\OpenVPN\easy-rsa adalah path dimana

folder easy-rsa berada.

set KEY_CONFIG=openssl.cnfadalah nama file konfigurasi OpenSSL. set KEY_DIR=keys adalah path folder dimana akan diisi key yang baru dibuat.

set KEY_SIZE=1024merupakan panjang dari key SSL. Sebaiknya 2048. set KEY_CONFIG, KEY_PROVINCE, KEY_CITY, KEY_ORG, KEY_EMAIL merupakan nilai-nilai yang dapat diisi sesuai dengan kebutuhan perusahaan, dan akan menjadi nilai default untuk men-generate sertifikat dengan

software easy-rsa.

Langkah selanjutnya adalah menjalankan vars.bat melalui command prompt. Hasilnya terlihat seperti gambar di bawah ini.

Gambar 4.12 Menjalankan vars.bat melalui Command Prompt

5. Diffie-Hellman key digunakan untuk enkripsi, autentikasi, dan pertukaran key. Persetujuan antar protokol Diffie-Hellman key memungkinkan komunikasi dua partner untuk menukar key dengan aman. Untuk membuatnya, masuk ke

(9)

Files\OpenVPN\easy-rsa”. Lalu jalankan build-dh.bat. Ini akan memakan waktu cukup lama. Gambar di bawah menunjukkan tampilan selama build-dh.bat di execute.

Gambar 4.13 Proses Pembuatan Diffie-Hellman key

6. Membuat Certificate Authority (CA) dengan menjalankan build-ca.bat. Berdasarkan data yang telah dimasukkan di file vars.bat, build-ca.bat akan memberikan parameter default selama proses pembuatan sertifikat. Apabila sudah sesuai dengan nilai default, tekan Enter saja. Apabila tidak, dapat menuliskannya lagi. Sertifikat untuk CA akan dibuat di folder keys.

Apabila berhasil, akan menghasilkan dua file yaitu ca.crt dan ca.key.

(10)

Build-dh.bat menciptakan file bernama dh2048.pem, sesuai dengan panjang key yang telah ditentukan sebelumnya. Apabila menggunakan 1024bit, maka file Diffie-Hellman nya adalah dh1024.pem.

File ca.crt diperlukan oleh semua komputer yang mau terhubung dengan

server, sedangkan file dh2048.pem hanya harus berada pada server.

(11)

7. Tahap selanjutnya adalah membuat sertifikat dan key yang telah disetujui CA untuk VPN Server. Untuk membuatnya, jalankan file build-key-server.bat yang ada pada folder easy-rsa dengan parameter “VPN-Server” pada command prompt. Kata “VPN-“VPN-Server” boleh diganti dengan kata yang lain. Ini hanya penamaan saja. Pada gambar berikut ditampilkan proses pembuatan sertifikat dan key untuk VPN Server.

(12)

8. Membuat key untuk client yaitu dengan menjalankan build-key.bat melalui command prompt dengan parameter “VPN-client”.

(13)

9. Apabila sudah selesai akan ada file-file seperti di bawah ini.

Gambar 4.18 Isi Folder keys Sudah Lengkap

10. Selanjutnya adalah pendistribusian file-file tersebut kepada partner VPN. Tabel berikut memberikan penjelasan singkat.

File Tujuan dan Lokasi

VPN-Server.crt VPN-Server.key VPN-Server.csr VPN-client.crt VPN-client.key VPN-client.csr ca.crt ca.key dh2048.pem

Sertifikat VPN-Server, harus berada di VPN-Server

Key RSA privat VPN-Server, harus berada di VPN-Server

Permintaan persetujuan sertifikat VPN-Server, boleh dibuang Sertifikat VPN-client, harus berada di VPN-client

Key RSA privat VPN-client, harus berada di VPN-client Permintaan persetujuan sertifikat VPN-client, boleh dibuang Sertifikat CA, harus berada pada kedua belah pihak

Key dari CA, hanya disimpan di CA, sangat rahasia

Kunci Diffie-Hellman, harus berada hanya pada VPN-Server

(14)

4.3 Membuat Static Key

Static key akan digunakan untuk TLS Authentication yang dapat

meningkatkan tingkat keamanan dari VPN. Penggunaan ini dapat memberikan proteksi terhadap DOS (Denial Of Service). DOS adalah semacam serangan dimana seseorang mencoba membanjiri (flood) suatu mesin / komputer sehingga akan melambatkan dan menurunkan kinerja dari koneksi reguler.

Untuk membuatnya yaitu melalui command prompt dan masuk ke dalam path : “C:\Program Files\OpenVPN\bin”. Lalu masukkan command ini : openvpn --genkey --secret ta.key

Gambar 4.19 Membuat static key melalui Command Prompt

Command tersebut akan menghasilkan file kecil bernama ta.key. File

ini akan dibuat pada folder “C:\Program Files\OpenVPN\bin”. Pindahkan file ta.key ini ke dalam folder config (“C:\Program

Files\OpenVPN\config”). Copy kan file ini untuk tiap pemakai VPN baik

server maupun client. Gambar di bawah adalah tampilan ta.key jika dibuka

(15)

Gambar 4.20 Contoh static key yang Dibuat

4.4 Konfigurasi OpenVPN

Konfigurasi pada OpenVPN disimpan dalam file berekstensi .ovpn.

File konfigurasi terletak pada “C:\Program Files\OpenVPN\config”

(default). Tiap file itu bisa berisi konfigurasi yang berbeda-beda. OpenVPN pun

memberikan kemudahan dalam memilih konfigurasi apa yang akan digunakan untuk terhubung dengan partnernya. Folder “keys” yang tadi dibuat di folder

easy-rsa beserta isinya harus dipindahkan ke folder config ini untuk mempermudah konfigurasi.

Tidak ada GUI untuk konfigurasi OpenVPN. File .ovpn dapat dibuka dengan program editor seperti notepad atau textpad. Untuk menghubungkan

(16)

antar satu komputer dengan yang lain maka konfigurasi harus diatur di masing-masing komputer itu.

4.4.1 Koneksi Satu Komputer Server dengan Satu Komputer Client ► Konfigurasi file untuk server (server.ovpn).

port 1194 dev tun tls-server

remote <ip> / <hostname> ifconfig 10.3.0.1 10.3.0.2 dh keys/dh2048.pem ca keys/ca.crt cert keys/VPN-Server.crt key keys/VPN-Server.key comp-lzo auth MD5 cipher AES-256-CBC tls-cipher DHE-RSA-AES256-SHA tls-auth ta.key ping 10 ping-restart 60 ping-timer-rem persist-tun persist-key

(17)

verb 4 mute 10

► Konfigurasi file untuk client (client.ovpn). port 1194

dev tun tls-client

remote <ip> / <hostname> ifconfig 10.3.0.2 10.3.0.1 ca keys/ca.crt cert keys/VPN-client.crt key keys/VPN-client.key comp-lzo auth MD5 cipher AES-256-CBC tls-cipher DHE-RSA-AES256-SHA tls-auth ta.key ping 10 ping-restart 60 ping-timer-rem persist-tun persist-key verb 4 mute 10

(18)

Penjelasan konfigurasi :

- port: menggunakan port 1194 untuk komunikasi VPN baik sumber

(source) maupun tujuan (destination). Port 1194 adalah port default

OpenVPN.

- dev : menggunakan TAP atau TUN device. TUN digunakan untuk koneksi point-to-point, karena itu menggunakan TUN. Pilih salah satu saja.

- tls-server / tls-client : menentukan tugas masing-masing pihak. Siapa yang menjadi server dan siapa yang client. Apabila server maka pihak itu yang akan melakukan pengaturan

tunnel dan pertukaran sertifikat.

- remote : server akan remote ke IP atau hostname client dan client akan remote ke IP atau hostname server.

- ifconfig: untuk menentukan IP virtual dari ujung-ujung tunnel. IP yang diberikan pada tunnel adalah IP private dan merupakan satu

network dengan ujung satu lagi. Disini ada 2 IP yang dimasukkan

yaitu IP untuk lokal dan IP untuk komputer yang di remote. Antara

server dan client akan saling berkebalikan.

- dh keys/dh2048.pem : key Diffie-Hellman yang telah dibuat sebelumnya. Kunci ini berada pada folder “keys”. Dan folder

“keys”itu harus berada di folder “config”. Jadi path lengkapnya yaitu : “C:\Program Files\OpenVPN\config\keys”. Key

(19)

Diffie-Hellman ini harus sangat dijaga kerahasiaannya dan hanya berada pada server.

- ca keys/ca.crt: menggunakan sertifikat CA.

- cert keys/VPN-Server.crt : untuk server menggunakan

VPN-Server.crt

- cert keys/VPN-client.crt : untuk client menggunakan

VPN-client.crt

- key keys/VPN-Server.key: untuk server, key yang digunakan adalah VPN-Server.key.

- key keys/VPN-client.key : client menggunakan key

VPN-client.key.

- comp-lzo : OpenVPN menggunakan library lzo untuk mengkompres trafik yang melalui tunnel. Lempel-Ziv-Oberhumer

(LZO) adalah algoritma kompresi data yang berfokus pada kecepatan

dekompresi. Library LZO mempunyai fitur-fitur seperti :  Dekompresi sederhana dan sangat cepat.

 Tidak memerlukan memori tambahan untuk dekompresi.  Kompresi cukup cepat.

 Untuk kompresi membutuhkan memori 64 kB bahkan ada level kompresi yang hanya membutuhkan 8 kB.

(20)

- auth : digunakan untuk menentukan message digest algorithm yang digunakan oleh algoritma HMAC (Hash Message Authentication

Code) untuk autentikasi paket yang masuk. HMAC biasanya

menggunakan SHA atau MD5. Default dari OpenVPN-nya adalah SHA. Ada banyak lagi tipe-tipe message digest yang didukung OpenVPN. Untuk melihatnya dengan mengetikan openvpn --show-digestspada command prompt pada path :

“C:\Program Files\OpenVPN\bin”seperti gambar berikut.

Gambar 4.21 Message digest yang Disediakan OpenVPN

- cipher : merupakan algoritma yang digunakan untuk mengenkripsi paket. Dengan menggunakan simetrik cipher seperti 3DES atau AES, dapat menjaga agar data tidak bisa dibaca dengan mudah. Default dari OpenVPN adalah Blowfish. Untuk melihat jenis-jenis cipher yang lain yaitu dengan mengetikkan openvpn --show-ciphers. CBC

(21)

(Cipher Block Chaining) adalah suatu mode operasi kriptografi untuk

mengenkrip data dengan algoritma cipher block seperti AES, DES atau Blowfish. CBC menggunakan potongan kecil dari data, daripada memproses seluruh blok pada waktu yang sama. Mode operasi kriptografi yang lain yaitu EBC, OFB, CFB. OpenVPN merekomendasikan untuk menggunakan CBC.

Gambar 4.22 Algoritma Enkripsi yang Didukung OpenVPN

Pilihan terakhir, AES-256-CBC, merupakan yang paling aman, BF-CBC 128 adalah default (Blowfish). Penggunaan algoritma yang semakin aman dapat meningkatkan beban trafik.

- tls-cipher : merupakan TLS Ciphers yang tersedia. Untuk melihat lainnya yaitu dengan mengetikan openvpn --show-tls. Pada list ini, yang pertama adalah yang paling aman dan juga termasuk yang paling lambat.

(22)

Gambar 4.23 TLS Ciphers yang Disediakan OpenVPN

- tls-auth ta.key: digunakan untuk proteksi sederhana terhadap

Denial Of Service (DOS). Komputer OpenVPN yang menggunakan

tls-auth ini hanya akan menerima paket yang terenkripsi oleh

signature HMAC yang dibuat pada file khusus, misalnya ta.key.

- ping 10 : mengirimkan ping ke ujung tunnel partner setelah 10 detik tanpa ada trafik.

- ping-restart 60: setelah 60 detik tidak menerima paket apapun dari remote, maka tunnel akan di-restart.

- ping-timer-rem : ping-restart akan berjalan jika alamat

remote tersedia.

- persist-tun : membuat device tap/tun tetap menyala ketika OpenVPN di-restart.

(23)

- verb 4 : yaitu tingkat verbosity (kelengkapan) untuk log. Tingkatnya dari 0 (minimum) sampai 11 (maksimum). Semakin tinggi tingkatnya maka tingkat kelengkapannya, maka semakin lengkap log yang akan dicatat. Nilai default-nya adalah 1. Jika diisi dengan 0 maka OpenVPN hanya akan mencatat apabila terjadi kesalahan fatal saja. Tingkat 1-4 sudah memberikan keterangan dan informasi yang berguna. Tingkat 5 keatas baik digunakan untuk melakukan debugging.

- mute 10: OpenVPN hanya akan mencatat 10 pesan konsekutif dari kategori yang sama.

4.4.2 Koneksi Satu Komputer Server dengan Banyak Komputer Client ► Konfigurasi file untuk server (server2.ovpn).

port 1194 dev tap tls-server mode server ifconfig 10.3.0.1 255.255.255.0 ifconfig-pool 10.3.0.2 10.3.0.12 255.255.255.0 float dh keys/dh2048.pem ca keys/ca.crt cert keys/VPN-Server.crt key keys/VPN-Server.key

(24)

comp-lzo auth MD5 cipher AES-256-CBC tls-cipher DHE-RSA-AES256-SHA tls-auth ta.key duplicate-cn client-to-client max-clients 10 ping 10 ping-restart 60 ping-timer-rem persist-tun persist-key verb 4 mute 10 mtu-test tun-mtu 1500 tun-mtu-extra 32 mssfix 1450

► Konfigurasi file untuk client (client2.ovpn). port 1194

dev tap tls-client

(25)

remote <ip> / <hostname> ca keys/ca.crt cert keys/VPN-client.crt key keys/VPN-client.key comp-lzo auth MD5 cipher AES-256-CBC tls-cipher DHE-RSA-AES256-SHA tls-auth ta.key ping 10 ping-restart 60 ping-timer-rem persist-tun persist-key verb 4 mute 10 pull mtu-test tun-mtu 1500 tun-mtu-extra 32 mssfix 1450

(26)

Berikut ini adalah tambahan penjelasan konfigurasi :

- mode: menggunakan mode server. Default-nya ada p2p yang berarti point-to-point. Apabila tidak dituliskan berarti yang berjalan adalah mode p2p.

- if config-pool <start-IP> <end-IP> <netmask> : menentukan range alamat IP yang akan digunakan dalam tunnel. Alamat IP dalam range ini akan diberikan secara dinamik kepada client yang terhubung.

- float : memperbolehkan remote VPN partner untuk mengganti alamat IP-nya, missal melalui DHCP atau DynDNS.

- duplicate-cn : menggunakan satu sertifikat client untuk semuanya. Dengan kata lain memperbolehkan banyak client untuk menggunakan satu sertifikat yang sama. Apabila tidak menggunakan sintaks ini maka akan ada konflik session. Jika tidak mau menggunakan sertifikat yang sama, maka client yang lain harus membuat sertifikat yang baru lagi.

- client-to-client : semua client yang terhubung ke server dapat melihat satu sama lain.

- max-client 10 : mengatur jumlah client maksimum yang dapat terhubung secara simultan yaitu sebanyak 10. Ini juga harus disesuaikan dengan range IP yang telah diatur pada sintaks sebelumnya (if config-pool). Apabila kelebihan client dibanding range IP nya, maka akan terjadi konflik IP dan ini harus dihindari.

(27)

- mtu-test : untuk mengukur ukuran maksimum paket UDP yang dapat dikirim dalam hubungan.

- tun-mtu 1500 : untuk mengatur unit transmisi maksimum

(Maximum Transmission Units). Default-nya adalah 1500.

- tun-mtu-extra 32 : untuk asumsi bahwa tun/tap device mengembalikan nilai selebih 32 byte dari pada tun-mtu. Default untuk

tun adalah 0 dan untuk tap adalah 32.

- mssfix 1450 : untuk mengatur batas atas pada TCP MSS

(Maximum Segment Size). Lebih kecil nilainya dibanding MTU.

- pull : menerima konfigurasi file tertentu dari peer seperti halnya mereka bagian dalam dari file konfigurasi. Ini perlu dipasang ketika terhubung dengan partner yang menggunakan ‘--mode server’.

4.5 Implementasi dan Evaluasi OpenVPN

Untuk memulai OpenVPN, jalankan program OpenVPN GUI yang sudah terinstall. Baik sisi server maupun client harus menjalankan ini.

(28)

Setelah itu di tray icon akan muncul icon OpenVPN GUI. Warna merah berarti tidak ada koneksi yang berjalan.

Gambar 4.25 Icon OpenVPN GUI yang Belum Aktif

Berikut ini adalah gambar file konfigurasi yang ada pada pihak server dan client. Setiap file konfigurasi (*.ovpn) yang ada dalam folder config ini akan ditampilkan dalam menu di OpenVPN GUI.

File server.ovpn adalah file konfigurasi yang berisi teks seperti

yang telah dijabarkan diatas (sub bab 4.4.1). Folder keys berisi sertifikat dan

key yang diperlukan dalam OpenVPN (sub bab 4.2).

(29)

Gambar 4.27 Isi dari server.ovpn

(30)

Gambar 4.29 Isi dari client.ovpn

Klik kanan pada OpenVPN GUI. Disini tidak ada menu untuk memilih konfigurasi apa yang akan dijalankan, karena file *.ovpn yang ada pada folder

confighanya satu buah, jadi OpenVPN GUI memberikan menu langsung.

(31)

Klik “Connect” untuk memulai proses koneksi antara server dan client. Selama proses koneksi ini, icon OpenVPN GUI berubah menjadi warna kuning. Baik server maupun client akan melihat tampilan ini. Tulisan-tulisan yang tertampil disini akan disimpan dalam log. Kelengkapan log ini dipengaruhi oleh sintaks verb seperti yang telah dijelaskan di atas. Log akan dijelaskan kemudian.

(32)

Setelah selesai icon OpenVPN GUI akan berubah menjadi warna hijau.

Gambar 4.32 Koneksi telah Berhasil Dibuat

Setelah terkonek, maka masing-masing server dan client akan mendapat IP sesuai dengan yang sudah dipasang pada file konfigurasi.

(33)

TUN device digunakan untuk point-to-point, maka dari itu, subnet mask

yang diberikan yaitu 255.255.255.252. OpenVPN sendiri yang memberikan langsung subnet mask ini.

Gambar 4.34 IP dan Subnet Mask dari Server (Biru) dan Client (Putih)

Karena point-to-point maka hanya diperlukan 2 host address. Sesuai dengan rumus 2n – 2 ≥ N. N = 2 host, maka 2n – 2 ≥ 2, n = 2. Bit yang dipakai yaitu 2 angka 0 pada porsi host : 1111 1111 . 1111 1111 . 1111 1111 . 1111 1100 = 255.255.255.252. Oleh karena itu rentang IP nya adalah 10.3.0.0 – 10.3.0.3 dimana 10.3.0.0 adalah alamat network dan 10.3.0.3 adalah alamat broadcast. Jadi hanya dua alamat yang dapat digunakan yaitu 10.3.0.1 dan 10.3.0.2. Ini sesuai dengan point-to-point dimana diperlukan dua host address.

(34)

Untuk membuktikan tunnel antara server dan client sudah dibangun maka akan dilakukan ping antar kedua pihak.

Gambar 4.35 Ping dari Server ke Client

Gambar 4.36 Ping dari Client ke Server

Setelah ping berhasil berarti kedua belah pihak sudah berada dalam satu jaringan dan dapat melakukan pertukaran data. Share folder juga akan muncul.

(35)

Di sini merupakan contoh client yang akan mencoba membuka folder yang

di-share komputer server.

Gambar 4.37 Folder - Folder yang Di-share dari Komputer Server

Server juga dapat membuka folder dari client.

(36)

Berikut ini adalah gambar sewaktu transfer data sedang dilakukan.

Gambar 4.39 Proses Transfer Data dari Client ke Server

Dari hasil pengiriman data diperoleh perkiraan waktu sekitar 7 menit untuk meng-copy data sebesar 3 MB, namun waktu pengiriman sangat dipengaruhi oleh kecepatan transmisi terendah, dalam kasus ini kecepatan upload sebesar 64 kbps jika di hubungkan dengan kecepatan download sebesar 384 kbps maka kecepatan transfer data akan mengambil yang terendah yaitu 64 kbps. Gambar 4.39 merupakan proses ketika server mengambil data dari client.

(37)

Untuk melihat trafik yang berjalan di dalam tunnel, diperlukan tools atau software untuk sniff. Software untuk melakukan sniff yang digunakan adalah

Wireshark Network Analyzer.

Gambar 4.40 Tampilan Program Wireshark Network Analyzer

Klik menu Capture lalu Interface, setelah itu pilih interface yang akan

di-sniff seperti pada gambar berikut.

(38)

Gambar 4.42 Paket - Paket yang Tertangkap

OpenVPN membungkus semua trafiknya dalam paket UDP. Apabila dilakukan sniffing terhadap interface nya maka terlihat paket-paket VPN sudah berjalan melalui tunnel, dan terlihat bahwa protokol nya adalah UDP (warna biru muda) seperti terlihat pada gambar 4.42 diatas. Disini juga terlihat port yang digunakan adalah 1194, sesuai dengan konfigurasi yang telah dibuat. 1194 merupakan nomor port default dari OpenVPN.

Untuk mengakhiri koneksi VPN, masing-masing server dan client hanya perlu meng-klik menu “Disconnect” dari OpenVPN GUI. Disini adalah contoh server yang mengakhiri hubungan VPN.

(39)

Gambar 4.43 Untuk Mengakhiri Hubungan VPN

Berikut ini adalah keterangan tentang isi dari log yang tercatat pada saat OpenVPN melakukan koneksi. Log ini tercatat dan dapat dilihat di path

“C:\Program Files\OpenVPN\log”

- server.log

1

OpenVPN 2.0.9 Win32-MinGW [SSL] [LZO] built on Oct 1 2006 2

Diffie-Hellman initialized with 2048 bit key

Control Channel Authentication: using 3'ta.key' as a OpenVPN static key

file

Outgoing Control Channel Authentication: Using 128 bit message hash 'MD5' for HMAC authentication

Incoming Control Channel Authentication: Using 128 bit message hash 'MD5' for HMAC authentication

4

LZO compression initialized

Control Channel MTU parms [ L:1554 D:162 EF:62 EB:0 ET:0 EL:0 ] 14

(40)

{FAE6E90C-268E-427E-91D8-702A0265996C}.tap TAP-Win32 Driver Version 8.4

TAP-Win32 MTU=1500

Notified TAP-Win32 driver to set a DHCP IP/netmask of

10.3.0.1/255.255.255.252 on interface {FAE6E90C-268E-427E-91D8-702A0265996C} [DHCP-serv: 10.3.0.2, lease-time: 31536000] Successful ARP Flush on interface [3] {FAE6E90C-268E-427E-91D8-702A0265996C}

Data Channel MTU parms [ L:1554 D:1450 EF:54 EB:135 ET:0 EL:0 AF:3/1 ] Local Options String: 'V4,dev-type tun,link-mtu 1554,tun-mtu 1500,proto UDPv4,ifconfig 10.3.0.2 10.3.0.1,comp-lzo,cipher AES-256-CBC,auth MD5,keysize 256,tls-auth,key-method 2,tls-server'

Expected Remote Options String: 'V4,dev-type tun,link-mtu 1554,tun-mtu 1500,proto UDPv4,ifconfig 10.3.0.1 10.3.0.2,comp-lzo,cipher AES-256-CBC,auth MD5,keysize 256,tls-auth,key-method 2,tls-client'

Local Options hash (VER=V4): 'b6266be5'

Expected Remote Options hash (VER=V4): '0872393c' Socket Buffers: R=[8192->8192] S=[8192->8192] UDPv4 link local (bound): [undef]:1194

5

UDPv4 link remote: 118.136.50.181:1194

TLS: Initial packet from 118.136.50.181:1194, sid=10f93e8b df441ef7 VERIFY OK: depth=1, /C=ID/ST=JKT/L=Jakarta/O=Pundarika/OU=IT-DIV/ 6

CN=Donny_Samuel/[email protected]

VERIFY OK: depth=0, /C=ID/ST=JKT/O=Pundarika/7CN=VPN-client/

[email protected]

Data Channel Encrypt: Cipher 9'AES-256-CBC' initialized with 256 bit key

Data Channel Encrypt: Using 128 bit message hash 10'MD5' for HMAC

authentication

(41)

Data Channel Decrypt: Using 128 bit message hash 'MD5' for HMAC authentication

Control Channel: 11TLSv1, cipher TLSv1/SSLv3 12DHE-RSA-AES256-SHA, 2048

bit RSA

[VPN-client] Peer Connection Initiated with 118.136.50.181:1194 13

Initialization Sequence Completed

Keterangan :

1 Versi dari OpenVPN 8 Sertifikat server

2 Diffie-Hellman key 9 Algoritma untuk cipher

3 Static key 10 Algoritma untuk hash

4 Kompresi 11 Mode sekuriti

5 IP dari remote tunnel 12 Algoritma untuk tls-cipher

6 Sertifikat CA 13 Status koneksi OpenVPN

7 Sertifikat client 14 TUN / TAP drivers

Tabel 4.2 Keterangan Log

- client.log

1

OpenVPN 2.0.9 Win32-MinGW [SSL] [LZO] built on Oct 1 2006

WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm for more info.

Control Channel Authentication: using 3'ta.key' as a OpenVPN static key

file

Outgoing Control Channel Authentication: Using 128 bit message hash 'MD5' for HMAC authentication

(42)

Incoming Control Channel Authentication: Using 128 bit message hash 'MD5' for HMAC authentication

4

LZO compression initialized

Control Channel MTU parms [ L:1554 D:162 EF:62 EB:0 ET:0 EL:0 ] 14

TAP-WIN32 device [openvpn] opened:

\\.\Global\{4A0E3881-9006-4986-BEFC-95C1F317968C}.tap

TAP-Win32 Driver Version 8.4 TAP-Win32 MTU=1500

Notified TAP-Win32 driver to set a DHCP IP/netmask of

10.3.0.2/255.255.255.252 on interface {4A0E3881-9006-4986-BEFC-95C1F317968C} [DHCP-serv: 10.3.0.1, lease-time: 31536000] Successful ARP Flush on interface [5] {4A0E3881-9006-4986-BEFC-95C1F317968C}

Data Channel MTU parms [ L:1554 D:1450 EF:54 EB:135 ET:0 EL:0 AF:3/1 ] Local Options String: 'V4,dev-type tun,link-mtu 1554,tun-mtu 1500,proto UDPv4,ifconfig 10.3.0.1 10.3.0.2,comp-lzo,cipher AES-256-CBC,auth MD5,keysize 256,tls-auth,key-method 2,tls-client'

Expected Remote Options String: 'V4,dev-type tun,link-mtu 1554,tun-mtu 1500,proto UDPv4,ifconfig 10.3.0.2 10.3.0.1,comp-lzo,cipher AES-256-CBC,auth MD5,keysize 256,tls-auth,key-method 2,tls-server'

Local Options hash (VER=V4): '0872393c'

Expected Remote Options hash (VER=V4): 'b6266be5' Socket Buffers: R=[8192->8192] S=[8192->8192] UDPv4 link local (bound): [undef]:1194

5

UDPv4 link remote: 118.136.193.77:1194

TLS: Initial packet from 118.136.193.77:1194, sid=f2d285d5 799175aa VERIFY OK: depth=1, /C=ID/ST=JKT/L=Jakarta/O=Pundarika/OU=IT-DIV/ 6

CN=Donny_Samuel/[email protected]

VERIFY OK: depth=0, /C=ID/ST=JKT/O=Pundarika/OU=IT-DIV/8CN=VPN-Server/

(43)

TLS: new session incoming connection from 118.136.193.77:1194 VERIFY OK: depth=1, /C=ID/ST=JKT/L=Jakarta/O=Pundarika/OU=IT-DIV/CN=Donny_Samuel/[email protected] VERIFY OK: depth=0, /C=ID/ST=JKT/O=Pundarika/OU=IT-DIV/CN=VPN-Server/[email protected]

Data Channel Encrypt: Cipher 9'AES-256-CBC' initialized with 256 bit key

Data Channel Encrypt: Using 128 bit message hash 10'MD5' for HMAC

authentication

Data Channel Decrypt: Cipher 'AES-256-CBC' initialized with 256 bit key 766589

Data Channel Decrypt: Using 128 bit message hash 'MD5' for HMAC authentication

NOTE: --mute triggered...

3 variation(s) on previous 10 message(s) suppressed by --mute [VPN-Server] Peer Connection Initiated with 118.136.193.77:1194 TEST ROUTES: 0/0 succeeded len=-1 ret=1 a=0 u/d=up

13

Initialization Sequence Completed

4.6 Mencabut Sertifikat

Mencabut sertifikat berarti tidak memberlakukan atau menghanguskan sertifikat yang sebelumnya di-signed sehingga tidak dapat digunakan lagi untuk autentikasi.

Alasan-alasan untuk mencabut sertifikat :

Private key yang terhubung dengan sertifikat diketahui atau dimiliki

pihak lain.

Apabila user yang memiliki private key yang terenkripsi lupa

(44)

 Ingin menghentikan hak akses user ke VPN.

Contoh apabila ingin mencabut sertifikat “client2”. Pertama, buka

command prompt di Windows dan ganti direktorinya ke folder easy-rsa

dimana saat melakukan generate key awal-awal.

Ketik “vars” pada command prompt lalu enter. Kemudian ketik

“revoke-full client2” lalu tekan enter. Setelah itu akan muncul output yang mengatakan bahwa sertifikat dicabut dan database di-update.

Sintaks “revoke-full” akan menghasilkan file CRL (certificate

revocation list) dengan nama crl.pem di subdirektori “keys”. File tersebut

harus di-copy ke direktori dimana OpenVPN server dapat mengaksesnya, lalu verifikasi CRL harus di-enabled pada konfigurasi server. Sintaks untuk verifikasinya adalah : crl-verify crl.pem

Kemudian semua sertifikat client akan diverifikasi dengan CRL itu, dan apabila ada sertifikat yang masuk daftar CRL (masuk dalam daftar pencabutan), koneksi akan langsung diputus.

4.7 Simulasi

Pada bagian ini akan dibahas mengenai simulasi jaringan yang dirancang. Penulis menggunakan software simulasi OPNET, seperti dapat dilihat pada gambar 4.44.

(45)

Gambar 4.44 Software Simulasi OPNET

Gambar 4.45 di bawah ini adalah representasi dari jaringan yang ada di kantor, sebuah jaringan yang terdiri dengan 18 host, satu server dan satu ADSL

modem router yang terhubung dengan switch dan sebuah host yang terhubung

peer-to-peer dengan server dan koneksi internet dial-up.

(46)

Sedangkan gambar 4.46 di bawah adalah representasi dari jaringan yang ada di pabrik, sebuah jaringan dengan 18 host dan satu server, terhubung melalui sebuah hub dan sebuah switch.

(47)

Secara keseluruhun gambar jaringan yang akan disimulasikan seperti gambar 4.47 berikut.

Gambar 4.47 Jaringan Antara Kantor Pusat dengan Pabrik

Supaya dapat mensimulasi jaringan yang ada penulis perlu mengkonfigurasi tiga atribut yaitu profile, application dan VPN attribute.

Untuk konfigurasi Application Attribute penulis memilih dua macam aplikasi yaitu email medium dan HTTP heavy.

(48)

Lalu kedua aplikasi tersebut dibuat kedalam 1 profile general yang berisi konfigurasi dari profile attribute.

Gambar 4.49 Profile Attribute

Konfigurasi ketiga yaitu VPN attribute, pada konfigurasi ini penulis memasukkan konfigurasi sebagai berikut :

1. tunnel source name pc X

2. tunnel destination name ServerData 3. client-node name pc X

(49)

Gambar 4.50 VPN Attribute

Untuk konfigurasi simulasi, penulis menggunakan konfigurasi dengan

default value. Konfigurasi yang penulis gunakan adalah sebagai berikut :

1. Duration 1 hour, jaringan seolah-olah berjalan selama 1 jam. 2. Seed 128, angka acak yang digunakan untuk randomize.

3. Values per statistic 100, jumlah nilai yang disimpan untuk setiap statistik adalah 100.

4. Update interval, interval update dalam simulasi untuk menghasilkan grafik.

(50)

Gambar 4.51 Jendela Pengaturan Simulasi

Penulis mengukur tiga hal di dua titik yaitu di pc X dan ServerData yaitu Traffic Sent (packets/s), Traffic Received (packets/sec) dan Traffic Dropped

(packets/sec). Gambar berikut ini adalah grafik hasil dari simulasi :

(51)

Traffic Sent (packets/sec)

Rank Object Name Minimum Average Maximum Std Dev

1 ServerData 0 0,726 11,8 1,16

2 pc X 0 0,712 11,7 1,23

Traffic Received (packets/sec)

Rank Object Name Minimum Average Maximum Std Dev

1 ServerData 0 0,863 13,5 1,34

2 pc X 0 0,731 11,7 1,24

Traffic Dropped (packets/sec)

Rank Object Name Minimum Average Maximum Std Dev

1 ServerData 0 0 0 0

2 pc X 0 0 0 0

Tabel 4.3 Hasil Simulasi

Dari hasil simulasi trafik yang terkirim dari ServerData rata-rata 0,726 paket per detik dan dari pc X rata-rata kirimnya adalah 0,712 paket per detik. Sedangkan paket yang diterima oleh ServerData rata-rata 0,863 paket per detik dan pc X rata-rata terimanya adalah 0,731 paket per detik. Dan tidak ada paket yang drop.

4.8 Program Pendukung untuk Penulisan Konfigurasi OpenVPN

Konfigurasi OpenVPN harus diketik secara manual termasuk sintaks-sintaks dan parameternya. Untuk mempermudah pembuatan konfigurasi OpenVPN ini, penulis membuat sebuah program user-interface yang dapat menuliskan sintaks OpenVPN. Hasil dari program ini dapat disimpan sebagai file

(52)

konfigurasi OpenVPN (*.ovpn). Program bernama OVPN Creator ini dibuat menggunakan Microsoft Visual Basic 6.0. Berikut adalah tampilan dan penjelasan dari program ini.

Gambar 4.53 Tampilan Awal Program OVPN Creator

Disini konfigurasi OpenVPN dikelompok-kelompokan dalam kategori. Pengguna dapat mengklik tab-tab itu yang dibedakan dalam warna. Dalam tiap

tab terdapat sintaks OpenVPN.

Gambar 4.53 di atas adalah tap pertama yang berisi konfigurasi umum dari OpenVPN. Apabila ada parameter, dapat langsung dimasukkan, contohnya seperti “port”. Disitu terdapat textbox untuk mengisikan port yang akan digunakan. Tombol “default” di sebelahnya akan memberikan nilai default

port dari OpenVPN. Centang (check) pada bagian sebelah kiri “port” untuk

(53)

besar sebelah kanan itu. Nanti file yang akan dibuat akan berisikan konfigurasi seperti yang terlihat pada preview itu.

Ada juga yang memberikan pilihan seperti “dev”, ini berarti hanya ada dua opsi saja yang dapat dimasukkan untuk konfigurasi. Disini pengguna dapat memilih sesuai yang ia butuhkan. Untuk menghilangkan sintaks, dapat dilakukan dengan menghilangkan centangnya (uncheck).

Gambar 4.54 Tab Kedua

Gambar 4.54 adalah tab kedua yang berisi tentang kompresi. Seperti terlihat pada gambar di atas, hanya ada 1 opsi saja disini. Setiap kali pengguna mengklik, sintaks akan masuk secara otomatis ke dalam preview. Kotak preview memberikan multi baris dan scroll untuk horisontal dan vertikal. Preview dapat disembunyikan dengan menekan tombol “Hide Preview <<”. Setelah disembunyikan, tulisan tombol “Hide Preview <<” akan berubah menjadi

(54)

konfigurasinya, dapat dilakukan dengan menekan tombol “Show Preview

>>”.

Tombol “Reset” digunakan untuk membersihkan semua konfigurasi baik sintaks, parameter, maupun preview. Pengguna dapat memulai membuat konfigurasi yang baru lagi. Tab ketiga (gambar 4.55) untuk pengaturan tunnel.

Gambar 4.55 Tab Ketiga

(55)

Tab keempat (gambar 4.56) biasa digunakan untuk pengaturan khusus

server, sedangkan tab kelima di bawah ini untuk client.

Gambar 4.57 Tab Kelima

Gambar 4.58 Tab Keenam

(56)

Gambar 4.59 Tab Ketujuh

Di tab ketujuh ini seperti gambar di atas, pengguna dapat memilih file yang akan diperlukan untuk secret. Tekan tombol “browse” untuk menunjuk

file-nya. Di sini diberikan filter terhadap file yang dibuka. File secret itu biasanya

berekstensi *.txt atau *.key saja. Setelah dipilih, maka path nya akan disimpan. Disini disediakan juga pilihan algoritma untuk auth dan cipher.

(57)

Gambar 4.60 Tab Kedelapan

Tab kedelapan ini untuk konfigurasi TLS. Ada tombol browse juga

untuk memilih file yang sesuai. Untuk “ca” dan “cert” hanya boleh yang berekstensi *.crt. Untuk “dh” yaitu *.pem, sedangkan “key” yaitu *.key.

(58)

Tab terakhir (gambar 4.61) berisi tentang kebutuhan debugging. Setelah

konfigurasi selesai dibuat, maka dapat disimpan sebagai file *.ovpn. Untuk menyimpan hasil yang tampil seperti di preview, tekan tombol “Save

Configuration”. Akan muncul jendela save seperti pada gambar dibawah ini, tentukan letak untuk menyimpannya.

Gambar 4.62 Menyimpan Hasil Konfigurasi

Apabila sukses maka akan muncul pemberitahuan seperti berikut ini.

(59)

Apabila menyimpan dengan nama yang sama, akan muncul pemberitahuan dan konfirmasi seperti gambar berikut.

Gambar 4.64 Konfirmasi Penyimpanan

Tekan “yes” untuk menimpa file yang lama, tekan “no” untuk menyimpan dengan nama yang berbeda.

Apabila preview kosong dan pengguna menekan tombol untuk menyimpan, maka akan muncul pemberitahuan berikut.

Gambar 4.65 Pemberitahuan

Tombol “About” untuk menampilkan informasi tentang pembuat.

(60)

4.9 Biaya Implementasi

Berdasarkan perancangan yang telah dibuat, tidak diperlukan adanya biaya tambahan untuk mengimplementasikan VPN ini, karena perusahaan sudah memiliki fasilitas seperti komputer yang dapat digunakan untuk memasang VPN dengan OpenVPN. Selain itu program OpenVPN merupakan open source sehingga dapat digunakan secara bebas. Untuk koneksi internet sendiri perusahaan sudah memilikinya yaitu ADSL dan dial-up. Jadi dari fasilitas yang dimiliki perusahaan sekarang ini, sudah dapat menerapkan Virtual Private

Network dengan OpenVPN.

VPN bergantung penuh pada koneksi internet, maka apabila ingin mendapatkan koneksi yang lebih cepat, perusahaan disarankan mengganti koneksi dial-up itu dengan internet yang lebih cepat. Besarnya biaya internet tergantung dari Internet Service Provider (ISP).

Gambar

Gambar 4.10 Folder easy-rsa dan File - File yang Telah Dibuat
Gambar 4.15 Isi dari Folder keys
Gambar 4.20 Contoh static key yang Dibuat
Gambar 4.24 Menjalankan OpenVPN GUI pada Start Menu Windows
+7

Referensi

Dokumen terkait

Hasil : Hasil penelitian uji paired sample T-test pada kedua kelompok didapatkan hasil p=0,000&lt;0,05 yang berarti ada pengaruh pemberian terapi laser berintensitas rendah dan

Masalah yang dikaji dalam penelitian Arifiani adalah apakah dengan menggunakan model kooperatif tipe group investigation dapat meningkatkan kemandirian belajar

WAV adalah standar audio yang dikembangkan oleh Microsoft dan IBM, WAV ini adalah format utama untuk menyimpan data audio mentah pada Windows dan menggunakan metode

Konsep-konsep dan teknik-teknik analisis transaksional cocok terutama untuk situasi kelompok. AT pada mulanya direncanakan sebagai suatu bentuk treatment kelompok dan

Maka dari itu penulis melakukan penelitian pada jaringan SMK Negeri 1 Inderalaya Utara yang menjadikan jaringan sebagai pendukung salah satu penunjang pembelajaran,

Berdasarkan hasil penelitian yang sudah diuji terhadap variabel bebas yang Latihan di Ekstrakurikuler (X1), yang latihan di Klub (X2) dan yang Latihan mandiri (X3)

Penelitian bertujuan untuk mengetahui konsentrasi bubur nanas dan maltodekstrin yang tepat pada pembuatan kecap bubuk ampas tahu secara enzimatis.. Hasil uji

Juru Bicara Satgas Penanganan COVID-19, Wiku Adisasmito, mengimbau masyarakat untuk tidak melaksanakan mudik lebaran 2021 untuk mencegah penyebaran COVID-19..