BAB 2 LANDASAN TEORI Bab ini berisi teori

advertisement
BAB 2
LANDASAN TEORI
Bab ini berisi teori-teori sebagai pendukung yang diperlukan dalam penyelesaian
penelitian ini, diantaranya adalah pengenalan jaringan komputer, model-model referensi
jaringan, arsitektur jaringan, serta penjelasan mengenai SSL VPN dan semua hal-hal
yang berkaitan dengannya.
2.1
Jaringan Komputer
(Andrew S.Tanenbaum, 1997, p1) Jaringan komputer merupakan sekumpulan
komputer berjumlah banyak yang terpisah-pisah akan tetapi saling berhubungan
dalam melaksakan tugasnya. Untuk bisa membangun sebuah jaringan komputer,
perlu memahami tipe dan dasar arsitektur jaringan komputer yang sesuai dengan
kondisi di tempat anda. Hal ini penting karena tipe dan arsitektur sebuah jaringan
menentukan perangkat apa yang harus disediakan untuk membangun jaringan
tersebut. Tujuan dibangunnya suau jaringan komputer adalah membawa informasi
secara tepat dan tanpa adanya kesalahan dari sisi pengirim menuju sisi penerima
melalui media komunikasi. Beberapa sasaran dibentuknya suatu jaringan komputer
diantaranya:
1. Membagi sumber daya, misalnya berbagi printer, memori, harddisk dan
lain-lain
2. Mempermudah sharing data antara komputer satu dengan komputer yang
lainnya.
7
8
3. Terjaminnya keamanan data. Sistem jaringan komputer akan memberikan
perlindungan terhadap data, jaringan keamanan tersebut diberikan
melalui pemberian hak akses dan password.
2.1.1 Jenis Jaringan Komputer
Secara umum jaringan komputer dibagi atas lima jenis, yaitu:
1.
Local Area Network (LAN)
Merupakan jaringan milik pribadi di dalam sebuah gedung atau
kampus yang berukuran sampai jarak tertentu. LAN seringkali
digunakan untuk menghubungkan komputer-komputer pribadi dan
workstation dalam kantor suatu perusahaan atau pabrik-pabrik untuk
memakai bersama sumberdaya (misalnya printer) dan saling bertukar
informasi.
2.
Metropolitan Area Network (MAN)
Pada dasarnya merupakan versi LAN yang berukuran lebih besar
dan biasanya menggunakan teknologi yang sama dengan LAN. MAN
dapat mencakup kantor-kantor perusahaan yang letaknya berdekatan
atau juga sebuah kota dan dapat dimanfaatkan untuk keperluan pribadi
(swasta) atau umum. MAN mampu menunjang data dan suara, bahkan
dapat berhubungan dengan jaringan televisi kabel.
9
3.
Wide Area Network (WAN)
Jangkauannya mencakup daerah geografis yang luas, seringkali
mencakup sebuah negara bahkan benua. WAN terdiri dari kumpulan
mesin-mesin yang bertujuan untuk menjalankan program-program
(aplikasi) pemakai.
4. Internet
Sebenarnya terdapat banyak jaringan didunia ini, seringkali
menggunakan perangkat keras dan perangkat lunak yang berbeda-beda.
Orang yang terhubung ke jaringan sering berharap untuk bisa
berkomunikasi dengan orang lain yang terhubung ke jaringan lainnya.
Keinginan seperti ini memerlukan hubungan antar jaringan yang
seringkali tidak kompatibel dan berbeda. Biasanya untuk melakukan hal
ini diperlukan sebuah mesin yang disebut gateway guna melakukan
hubungan dan melaksanakan terjemahan yang diperlukan, baik
perangkat keras maupun perangkat lunaknya. Kumpulan jaringan yang
terinterkoneksi inilah yang disebut dengan internet.
10
5. Jaringan Tanpa Kabel (Nirkable)
Jaringan nirkabel bertindak sebagai mekanisme transmisi antar
alat dan antara alat dengan jaringan kabel tradisional (jaringan internal
perusahaan dan internet). (sumber : Merencanakan Keamanan Jaringan
Komputer (Jurnal), vol 2 No.1 Juni 2011:hal 468, Joni Suhartono).
Jaringan tanpa kabel merupakan suatu solusi terhadap komunikasi yang
tidak bisa dilakukan dengan jaringan yang menggunakan kabel.
Misalnya orang yang ingin mendapat informasi atau melakukan
komunikasi walaupun sedang berada diatas mobil atau pesawat terbang,
maka mutlak jaringan tanpa kabel diperlukan karena koneksi kabel
tidaklah mungkin dibuat di dalam mobil atau pesawat. Saat ini jaringan
tanpa kabel sudah marak digunakan dengan memanfaatkan jasa satelit
dan mampu memberikan kecepatan akses yang lebih cepat dibandingkan
dengan jaringan yang menggunakan kabel.
2.1.2 Tipe Jaringan Komputer
Menurut fungsi komputer pada sebuah jaringan, maka tipe jaringan
komputer dapat dibedakan menjadi dua tipe, yaitu :
1.
Jaringan Peer to Peer atau Point to Point
Sebuah jaringan peer to peer mendukung akses non structural
kesumber daya jaringan. Setiap peralatan di dalam jaringan peer to peer
dapat menjadi client dan server secara bersamaan. Semua peralatan di
11
dalam jaringan dapat mengakses data, software , dan semua sumber
daya jaringan lainnya secara langsung. (Norton, 1999, p133)
Keuntungan dari jaringan peer to peer antara lain relatif mudah
diimplementasikan
dan
dioperasikan,
tidak
mahal
dalam
pengoperasiannya, dapat dibuat dengan sistem operasi pada umumnya,
seperti Windows NT/2000, Windows 95/98, Unix, Linux dan Mac OS.
Tetapi jaringan peer to peer memiliki beberapa keterbatasan dalam hal
tingkat keamanan, daya guna dana pelaksanaan. Contoh gambar peer to
peer seperti pada gambar 2.1
Komputer 1
Komputer 5
Komputer 4
Komputer 2
Komputer 3
Gambar 2.1 Jaringan Peer To Peer
Gambar diatas menunjukkan bahwa masing-masing komputer
dalam sebuah jaringan peer to peer terhubung secara langsung ke
seluruh komputer yang terdapat dalam jaringan tersebut.
12
2.
Jaringan Client-Server
Dalam sistem ini setiap pengguna mendapatkan sebuah komputer,
dengan data yang disimpan pada satu atau lebih mesin file server yang
dapat dipakai bersama-sama. Para pengguna biasa disebut client.
Umumnya komunikasi pada model client – server berbentuk pesan
permintaan untuk melaksanakan berbagai pekerjaan dari client kepada
server. Setelah server melaksanakan tugasnya, kemudian hasilnya akan
dikirimkan kembali ke client. Jaringan client – server juga sering di
kenal dengan server - based networks.
Keuntungan dari jaringan client – server dapat dibuat dan dijaga
dengan lebih aman daripada jaringan peer to peer , karena keamanan
dikontrol secara terpusat. Keuntungannya yang lain yaitu tugas
administrasi, seperti backup, dapat dilakukan secara konsisten dan
handal. Kelemahan yang ada adalah jaringan ini membutuhkan biaya
yang lebih besar dibandingkan jaringan peer to peer. Contoh gambar
client – server terlihat seperti pada gambar 2.7. (Tanenbaum, 2003, pp
4-5)
13
server
client
network
client
client
Gambar 2.2 Jaringan Client Server
Pada gambar di atas dapat dilihat bahwa komputer-komputer
dalam jaringan (client) dapat saling berkomunikasi melalui perantara
komputer server. Jika komputer server tidak aktif, maka komputerkomputer client tidak akan dapat berkomunikasi.
2.1.3 Topologi Jaringan Komputer
Topologi jaringan menjelaskan hubungan antara komputer – komputer
yang terhubung dengan unsur penyusun jaringan. Topologi yang biasa
digunakan pada jaringan komputer umumnya sebagai berikut (Lukas , 2006,
pp 144-146) :
14
1.
Topologi Bus
Semua terminal terhubung ke jalur komunikasi. Informasi yang
hendak dikirimkan melewati semua terminal pada jalur tersebut. Jika
alamat informasi yang dikirim, maka informasi tersebut akan diterima
dan diproses, jika tidak informasi tersebut aka diabaikan terminal yang
dilewatinya. Topologi ini mempunyai karakteristik :
1. Merupakan satu kabel yang kedua ujungya ditutup dimana
sepanjang kabel terdapat node-node .
2. Paling umum karena sederhana dalam instalasi.
3. Sinyal melewati kabel 2 arah dan mungkin terjadi collision.
4. Masalah terbesar dari topologi bus adalah jika salah satu
segmen kabel terputus, maka seluruh jaringan akan berhenti
Gambar 2.3 Topologi Bus
15
Keuntungan:
1. Jarak LAN tidak terbatas
2. Kecepatan pengiriman tinggi
Kerugian :
1. Diperlukan repeater untuk menguatkan sinyal
pada pemasangan jarak jauh.
2. Operasional jaringan LAN tergantung pada setiap
terminal.
2.
Topologi Ring (Topologi Cincin)
Topologi ini mirip dengan topologi point to point tetapi semua
terminal saling dihubungkan sehingga menyerupai lingkaran. Setiap
terminal saling bergantungan, sehingga jika terjadi kerusakan pada
suatu terminal, seluruh LAN akan terganggu. Topologi ini mempunyai
karakteristik :
1. Lingkaran tertutup yang berisi node-node.
2. Sederhana dalam layout.
3. Sinyal mengalir dalam satu arah sehingga menghindari terjadi
collision (2 paket data tercampur), sehingga memungkinkan
pergerakan data yang lebih cepat dan collision detection yang
lebih sederhana.
16
4. Masalah terbesar dari topologi ring adalah jika salah satu
segmen kabel terputus, maka seluruh jaringan akan berhenti.
5. Biasanya topologi ring tidak dibuat secara fisik melainkan
direalisasikan dengan sebuah concentrator dan terlihat seperti
topologi star.
Gambar 2.4 Topologi Ring
Keuntungan :
1. Laju data tinggi.
2. Dapat melayani lalu lintas yang padat.
3. Komunikasi antar terminal mudah.
Kerugian :
1. Penambahan atau pengurangan terminal sangat sulit.
2. Kerusakan pada salah satu terminal mengakibatkan
kelumpuhan jaringan.
17
3.
Topologi Star (Topologi Bintang)
Sebuah terminal pusat bertindak sebagai pengatur dan pengendali
semua komunikasi data yang terjadi. Terminal pusat akan menyediakan
jalur komunikasi khusus pada dua terminal. Karakteristik topologi star :
1. Setiap node berkomunikasi langsung dengan central node,
traffic data mengalir dari node ke central node dan kembali
lagi.
2. Mudah di kembangkan karena setiap node hanya memiliki
kabel yang langsung terhubung ke central node.
3. Keunggulan dari topologi star adalah jika salah satu kabel
node terputus yang lainnya tidak terganggu.
4. Dapat digunakan kabel lower grade karena hanya melayani
satu traffic node dan biasanya menggunakan kabel UTP.
Gambar 2.5 Topologi Star
18
Keuntungan :
1.
Mudah dikembangkan.
2.
Kemananan data tinggi.
3.
Kemudahan akses jaringan LAN lain.
Kerugian :
4.
1.
Traffic yang padat dapat menyebabkan jaringan lambat.
2.
Jaringan tergantung pada terminal pusat.
Topologi Mesh
Topologi mesh adalah suatu bentuk hubungan antar perangkat
dimana setiap perangkat terhubung secara langsung ke perangkat
lainnya yang ada di dalam jaringan. Akibatnya, dalam topologi mesh
setiap perangkat dapat berkomunikasi langsung dengan perangkat yang
dituju (dedicated links). Karakteristik topologi mesh :
1. Memiliki hubungan yang berlebih antara peralatan yang ada.
2. Susunan pada setiap peralatan yang ada didalam jaringan
saling terhubung satu sama lain.
3. Hubungan dedicated links menjamin data langsung dikirimkan
ke komputer tujuan tanpa harus melalui komputer lainnya
sehingga dapat lebih cepat karena satu link digunakan khusus
untuk berkomunikasi dengan komputer yang dituju saja.
19
4. Jika jumlah peralatan yang dihubungkan banyak, maka akan
sulit dikendalikan.
Gambar 2.6 Topologi Mesh
Keuntungan :
1. Terjaminnya
kapasitas
channel
komunikasi,
karena
memiliki hubungan berlebih.
2. Relatif lebih mudah untuk dilakukan troubleshoot.
Kerugian :
1. Sulit pada saat melakukan instalasi dan konfigurasi ulang
jika jumlah peralatan yang terhubung semakin banyak
jumlahnya.
2. Biaya yang besar untuk implementasi dan pemeliharaan
peralatan yang saling terhubung tersebut.
20
5.
Topologi Tree
Topologi ini disebut juga sebagai topologi jaringan bertingkat.
Biasanya digunakan untuk interkoneksi antar central dengan hirarki
yang berbeda. Untuk hirarki yang lebih rendah digambarkan pada
lokasi yang rendah dan semakin keatas mempunyai hirarki semakin
tinggi.
Gambar 2.7 Topologi Tree
(Sumber : http://indrasufian.web.id/?attachment_id=154
Akses : 08-06-2012)
21
2.2
Mekanisme Kerja TCP/IP
Transmision Control Protocol/Internet Protocol (TCP/IP) pada dasarnya
terdiri dari beberapa protokol yang berbeda, masing-masing dirancang untuk
memenuhi tugas-tugas khusus dalam jaringan yang menggunakan TCP/IP. Berkat
prinsip ini, tugas masing-masing protokol menjadi jelas dan sederhana. Protokol
yang satu tidak perlu mengetahui cara kerja protokol yang lain, sepanjang masih
bisa saling mengirim dan menerima data.
Gambar 2.8 Protokol dan network di dalam model TCP/IP
22
Model TCP/IP terdiri dari 4 layer, yaitu :
1. Lapisan Network Access
Mempunyai fungsi yang mirip dengan Data Link Layer pada OSI.
Lapisan ini mengatur penyaluran frame-frame data pada media fisik yang
digunakan secara handal. Lapisan ini biasanya memberikan service untuk
deteksi dan koreksi kesalahan dari data yang ditransmisikan.
2. Lapisan Internet
Mempunyai tugas untuk memilih rute terbaik yang akan di lewati
oleh sebuah paket data dalam sebuah jaringan. Selain itu pada jaringan
internet yang terdiri atas puluhan juta host dan ratusan ribu jaringan local,
lapisan ini bertugas untuk mengirimkan paket dan menemukan tujuannya.
Oleh karena itu, lapisan ini memiliki pernan penting terutama dalam
mewujudkan internet-working yang meliputi wilayah luas.
3. Lapisan Transport / Host-to-host
Lapisan Transport menyediakan layanan pengiriman dari sumber
data menuju ke tujuan data dengan cara membuat logical connection
antara keduanya. Layer ini bertugas untuk memecah data dan membangun
kembali data yang diterima dari Lapisan Application ke dalam aliran data
yang sama antara sumber dan pengirim data. Terdapat dua protokol utama
pada Lapisan Transport yaitu protokol TCP dan UDP.
23
TCP adalah protocol yang handal. Protokol TCP bersifat reliable
delivery. Tetapi kehandalah TCP tercapai dengan mengorbankan
bandwidth jaringan yang cukup besar. Sedangkan UDP (User Datagram
Protokol) merupakan protokol yang bersifat unreliable delivery. Dalam
pengiriman data, UDP tidak mengembalikan datagram yang hilang atau
rusak dan mengirimkan ulang data tersebut bila dibutuhkan. Selain itu
UDP memliki layanan protokol dengan layanan transmisi data yang
sedikit. Dalam mengirimkan paket data, sering sekali UDP tidak
melakukan pengecekan pada paket-paket datanya akan sampai pada
tujuan.
4. Lapisan Application
Lapisan ini berfungsi untuk menangani high-level protokol,
masalah data, proses encoding, dan dialog control yang memungkinkan
terjadinya komunikasi antar aplikasi jaringan. Lapisan Application berisi
spesifikasi protokol-protokol khusus yang menangani aplikasi umum
diantaranya adalah :
1. Hypertext Transfer Protokol (HTTP) merupakan protocol yang
mayoritas digunakan untuk komunikasi World Wide Web.
2. File Transfer Protokol (FTP) merupakan suatu layanan internet yang
mentransfer fili-file dari satu computer ke computer lain.
3. Domain Name System (DNS) merupakan seperangkat protokol dan
layanan pada suatu jaringan untuk mempergunakan nama-nama
24
hierarki yang sudah dikenal ketika meletakkan host ketimbang haris
mengingat dan memakai alamat IP-nya.
4. Simple Network Management Protokol (SNMP) memungkinkan untuk
mengelola node jaringan seperti server, workstation, router, bridge dan
hub dari host sentral.
.
2.2.1 Keamanan Lapisan Aplikasi (Application Layer Security)
Implementasi keamanan pada lapisan aplikasi adalah yang paling
mudah dan sederhana, jika komunikasi internet melibatkan dua pihak, seperti
kasus komunikasi email dan telnet. Pengirim dan penerima mempunyai
kesepakatan untuk menggunakan protokol yang sama dan jenis layanan
keamanan yang diinginkan. Pada bagian lapisan ini terdapat dua protokol
yang digunakan, yaitu PGP (Pretty Good Privacy) dan SSH (secure shell).
2.2.2 Keamanan Lapisan Transport (Transport Layer Security)
Transport Layer Security (TLS) berada antara lapisan aplikasi dan
lapisan transport. Pada Gambar 2.9 diperlihatkan, bahwa TLS berada diantara
lapisan protokol HTTP (aplikasi) dan protokol TCP (transport). Dengan
demikian dapat dinyatakan bahwa lapisan aplikasi dalam hal ini HTTP
menggunakan TLS dan TLS menggunakan layanan dari lapisan transport
dalam hal ini TCP untuk membawa informasi.
25
Gambar 2.9 Posisi TLS pada lapisan protokol IP
(Sumber : http://flylib.com/books/1/90/1/html/2/FILES/03fig03.gif Akses :
06-03-2012)
TLS dirancang untuk menyediakan keamanan pada lapisan transport.
TLS diperoleh dari suatu protokol keamanan yang disebut dengan SSL
(Secure Sockets Layer) yang dirancang oleh Netscape guna menjamin
keamanan web. (Feilner, 2006, p21) TLS adalah bentuk lain dari SSL, yang
dirancang oleh IETF (Internet Engineering Task Force) untuk transaksi di
internet seperti ditunjukkan oleh Gambar 2.10.
Gambar 2.10 SSL merupakan lapisan terpisah dalam susunan protokol
Internet
(sumber : Feilner, 2006, p21)
26
SSL merupakan protokol berlapis. Dalam tiap lapisannya, sebuah data
terdiri dari panjang, deskripsi dan isi. SSL mengambil data untuk dikirimkan,
dipecahkan kedalam blok-blok yang teratur, kemudian dikompres jika perlu,
menerapkan MAC, dienkripsi, dan hasilnya dikirimkan. Di tempat tujuan,
data didekripsi, verifikasi, dekompres, dan disusun kembali. Hasilnya
dikirimkan ke klien di atasnya.
2.2.2.1 Komunikasi SSL
Seperti yang telah disebutkan, SSL menggunakan enkripsi
dalam data yang disalurkan untuk menjaga kerahasiaan data.
Pada umumnya ada dua tipe cryptography yang sering
digunakan di setiap sesi SSL, yakni simetris dan asimetris.
Enkripsi simetris adalah suatu enkripsi yang menggunakan
sebuah kunci yang sama untuk melakukan proses enkripsi atau
dekripsi
(Symmetric
Key).
Sedangkan
enkripsi
simetris
menggunakan 2 buah kunci, satu untuk enkripsi (Public Key)
dan lainnya untuk dekripsi (Private key).
SSL menggunakan enkripsi simetris untuk mengenkripsi
semua komunikasi di dalam sesi SSL. Adapun enkripsi
asimetris digunakan untuk men-sharing kunci sesi simetris
secara aman antara pengguna untuk memulai komukasi aman.
Sedangkan
untuk
algoritma
enkripsinya
sendiri,
SSL
27
menggunakan berbagai algoritma yang dikenal luas seperti RC2,
RC4, IDEA, DES, Triple DES atau AES. Penjelasan lebih lanjut
mengenai enkripsi simetris dan asimetris akan dijelaskan lebih
detil berikutnya.
Ketika SSL client dan server berkomunikasi, mereka
melakukan komunikasi tersebut dengan bertukaran pesan SSL.
Tabel di bawah ini menunjukkan pesan SSL pada setiap level
pada protocol :
Table 2.1 Pesan-pesan SSL
Pesan
Deskripsi
Alert
Menginformasikan pihak lain akan
kegagalan
komunikasi
atau
pelanggaran keamanan
Application Data
Informasi yang dipertukarkan oleh
kedua belah pihak, yang terenkripsi,
terotentikasi, dan terverifikasi oleh SSL
Certificate
Pesan yang membawa sertifikat kunci
publik dari pengirim
CertificateRequest
Permintaan oleh server agar client
menyediakan sertifikat kunci publiknya
CertificateVerify
Pesan dari client yang memverifikasi
bahwa ia mengetahui kunci privat
28
bersesuaian dengan sertifika kunci
public
ChangeCipherSpec
Indikasi untuk mulai menggunakan
pelayanan keamanan
ClientHello
Pesan dari client yang menandakan
keperluan pelayanan keamanan dan
kemampuan untuk mendukungnya
ClientKeyExchange
Pesan dari client yang membawa kunci
kriptografi untuk berkomunikasi
Finished
Indikasi bahwa seluruh negosiasi sudah
terlaksana dan komunikasi yang aman
sudah terbentuk
HelloRequest
Permintaan oleh server bahwa, client
memulai proces neogosiasi SSL
ServerHello
Pesan dari server yang menandakan
pelayanan keamanan yang mana yang
akan digunakan untuk komunikasi
ServerHelloDone
Indikasi dari server bahwa server sudah
menyelesaikan
seluruh
permintaan
client untuk membentuk komunikasi
ServerKeyExchange
Pesan dari server yang membawa kunci
kriptografi untuk berkomunikasi
29
Dengan mengetahui pesan-pesan apa saja yang dikirimkan
pada saat komunikasi SSL, mari kita lanjurkan pada proses
komunikasi SSL itu sendiri. Proses Komunikasi antar pengguna
pada SSL atau sering disebut dengan SSL/TLS Handshake dapat
kita lihat dengan tahapan – tahapan berikut ini :
1.
Klien membentuk koneksi awal ke server dan meminta
koneksi SSL. Pada tahapan ini, Klien mengirimkan pesan
ClientHello.
2.
Server
kemudian
membalasnya
dengan
menyetujui
koneksi klien dan menentukan metode kompresi dan
parameter kriptograpi yang akan digunakan. Pada tahapan
ini, Server mengirimkan pesan ServerHello.
3.
Kemudian, server akan mengirimkan public key miliknya
kepada klien. Pada tahap ini, server biasanya juga
mengirimkan sertifikat nya yang digunakan untuk
mengidentifikasikan dirinya. Pesan yang dapat dikirim
oleh
server
pada
ServerKeyExchange,
tahap
ini
adalah
Certificate,
CertificateRequest,
dan
ServerHelloDone.
4.
Klien kemudian memeriksa sertifikat yang dikirimkan
server. Bila sertifikat tersebut tidak bermasalah, klien akan
menggunakan public key yang didapatnya untuk men-
30
enkrip sesi dan mengirimkan pre-master key ke server.
Bila server meminta sertifikat klien di langkah 3, maka
klien harus mengirimkannya sekarang. Pada tahap ini,
Klien
dapat
mengirimkan
pesan
ClientKeyExchange,
Certificate,
CertificateVerify,
ChangeCipherSpec, dan Finished.
5.
Bila server dikonfigurasi untuk menerima sertifikat, maka
server
memeriksa
sertifikat
yang
diterimanya
dan
menentukan akan menerima atau menolak koneksi yang
diminta. Kemudian server dan Klien akan men-generate
master key. Pada tahap ini, Server mengirimkan pesan
ChangeCipherSpec, dan Finished.
Bila kondisi ditolak, suatu pesan kegagalan akan
dikirimkan ke klien. Bila koneksi diterima, atau bila server
tidak dikonfigurasi untuk menerima sertifikat, maka server
akan mendekripsi session key yang didapat dari klien dengan
private key milik server dan mengirimkan pesan berhasil ke
klien yang sekaligus akan membuka suatu secure data chanel.
Dari proses komunikasi tersebut, dapat dilihat bahwa
enkripsi digunakan. Pada tahap ke 3 dari proses komunikasi
server menggunakan enkripsi asimetris, hal ini ditandai dengan
pengiriman public key oleh server kepada klien. Sedangkan
31
enkripsi simetris terjadi pada tahap ke-4 dalam proses
komunikasi. Hal ini ditandai dengan adanya pengiriman session
key yang merupakan sebuah kunci pada enkripsi simetris.
2.2.2.2 Sertifikat SSL/TLS
Sertifikat SSL/TLS (SSL/TLS Certificate) adalah sebuah
sertifikat yang digunakan untuk memverifikasi pihak lawan
komunikasi dalam suatu koneksi terenkripsi. Pada tahap ke-3
dalam komunikasi SSL, disebutkan bahwa server mengirimkan
sertifikatnya kepada klien. Sertifikat yang dimaksud disini
adalah sertifikat SSL/TLS.
Untuk mengidentifikasi dan melakukan pengecekan atas
sertifikat SSL/TLS yang dikirim, biasanya digunakan pihak
ketiga yaitu Certificate Authority (CA). Informasi pada
certifikat SSL/TLS, yaitu Issued To dan Issued By, merupakan
hal penting dalam proses verifikasi ini. Issued To berisikan
informasi mengenai organisasi pemilik sertifikat SSL/TLS
tersebut dan Issued By berisikan informasi mengenai organisasi
yang mengesahkan atau menandatangani sertifikat tersebut
dalam hal ini adalah CA. CA menjamin identitas pemilik
sertifikat ini. Oleh karena itu, CA haruslah merupakan sebuah
organisasi yang dapat dipercaya. Sebuah penerapan SSL harus
32
memvalidasi
semua
sertifikat
yang
diterimanya
dengan
memverifikasi tandatangan CA.
Selain itu, adalah hal yang mungkin untuk menlakukan
penandatangan sertifikat sendiri. Sertifikat ini disebut selfsigned certificates. Namun karena sertifikat ini ditandatangani
sendiri, maka tidak ada jaminan tentang identitas pemilik
sertifikat. Oleh karena itu, sertifikat seperti ini sebaiknya hanya
diterima apabila identitas pemilik sertifikat dapat dipercaya.
2.3
VPN
Virtual Private Network, jika dijabarkan berdasarkan suku katanya maka
pengertian VPN adalah Virtual, tidak ada koneksi jaringan secara langsung antara
dua atau lebih komputer, melainkan hanya ada koneksi virtual yang disediakan
oleh perangkat lunak VPN dan biasanya melalui koneksi internet. Private, akses
dari jaringan tersebut hanya dapat diakses oleh orang-orang yang memiliki
kepentingan dan memiliki hak akses.
Virtual Private Network (VPN) adalah adalah jaringan komunikasi, dibangun
untuk penggunaan pribadi dari perusahaan, melalui infrastruktur publik bersama.
Ada dua aplikasi utama yang dicakup oleh defination ini: akses konektivitas
remote dan site – to – site konektivitas.(Perlmutter, 2000, p10)
33
VPN menggunakan enkripsi dan tunneling untuk membentuk suatu jaringan
virtual yang aman, end-to-end, dengan koneksi jaringan privat melalui jaringan
pihak ketiga. Jaringan pihak ketiga dapat berupa jaringan service provider atau
jaringan internet publik. Organisasi atau perusahaan dapat menggunakan VPN
untuk berkomunikasi dengan outside users, seperti partner bisnis, customer, dan
suppliers. VPN juga dapat digunakan oleh pengguna yang mobile atau
telecommuters.
Karakteristik VPN
1. Lalu lintas data dienkripsi.
2. Autentikasi pihak yang ingin tersambung melalui VPN.
3. Mendukung banyak protokol.
4. Koneksinya adalah point to point.
Keuntungan VPN :
1. Biaya yang rendah.
2. Universality, kemampuan untuk akses dari teknologi yang berbeda.
3. Meningkatkan konektivitas.
4. Pertukaran informasi yang aman.
34
5. Skalabilitas mudah untuk ditingkatkan.
Kelemahan VPN :
1. Bergantung pada jaringan pihak ketiga atau jaringan publik (internet).
2. Kurang mendukung QoS.
2.3.1 Fungsi VPN
Teknologi VPN menyediakan tiga fungsi utama untuk penggunaannya.
Ketiga fungsi utama tersebut antara lain sebagai berikut :
1. Confidentially (Kerahasiaan)
Dengan digunakannnya jaringan publik yang rawan pencurian
data, maka teknologi VPN menggunakan sistem kerja dengan cara
mengenkripsi semua data yang lewat melauinya. Dengan adanya
teknologi enkripsi tersebut, maka kerahasiaan data dapat lebih terjaga.
Walaupun ada pihak yang dapat menyadap data yang melewati internet
bahkan jalur VPN itu sendiri, namun belum tentu dapat membaca data
tersebut, karena data tersebut telah teracak. Dengan menerapkan sistem
enkripsi ini, tidak ada satupun orang yang dapat mengakses dan
membaca isi jaringan data dengan mudah.
2.
Data Intergrity (Keutuhan data)
35
Ketika melewati jaringan internet, sebenarnya data telah berjalan
sangat jauh melintasi berbagai negara. Pada saat perjalanan tersebut,
berbagai gangguan dapat terjadi terhadap isinya, baik hilang, rusak,
ataupun dimanipulasi oleh orang yang tidak seharusnya. Pada VPN
terdapat teknologi yang dapat menjaga keutuhan data mulai dari data
dikirim hingga data sampai di tempat tujuan.
3.
Origin Authentication (Autentikasi sumber)
Teknologi
VPN
memiliki
kemampuan
untuk
melakukan
autentikasi terhadap sumber-sumber pengirim data yang akan
diterimanya. VPN akan melakukan pemeriksaan terhadap semua data
yang masuk dan mengambil informasi dari sumber datanya. Kemudian,
alamat
sumber
data
tersebut
akan
disetujui
apabila
proses
autentikasinya berhasil. Dengan demikian, VPN menjamin semua data
yang dikirim dan diterima berasal dari sumber yang seharusnya. Tidak
ada data yang dipalsukan atau dikirim oleh pihak-pihak lain.
4.
Non-repudiation
Yaitu mencegah dua perusahaan dari menyangkal bahwa mereka
telah mengirim atau menerima sebuah file mengakomodasi perubahan.
36
5.
Kendali akses
Menentukan siapa yang diberikan akses ke sebuah sistem atau
jaringan, sebagaimana informasi apa dan seberapa banyak seseorang
dapat menerima.
2.3.2 Jenis VPN
2.3.2.1 Remote Access VPN
Pada umumnya implementasi VPN terdiri dari 2 macam.
Pertama adalah remote access VPN, dan yang kedua adalah site-tosite VPN. Remote access yang biasa juga disebut virtual private dialup network (VPDN), menghubungkan antara pengguna yang mobile
dengan local area network (LAN).
Jenis VPN ini digunakan oleh pegawai perusahaan yang ingin
terhubung ke jaringan khusus perusahaannya dari berbagai lokasi
yang jauh (remote) dari perusahaannya. Biasanya perusahaan yang
ingin membuat jaringan VPN tipe ini akan bekerjasama dengan
enterprise service provider (ESP). ESP akan memberikan suatu
network access server (NAS) bagi perusahaan tersebut. ESP juga
akan menyediakan software klien untuk komputer-komputer yang
digunakan pegawai perusahaan tersebut.
37
Untuk mengakses jaringan lokal perusahaan, pegawai tersebut
harus terhubung ke NAS dengan men-dial nomor telepon yang sudah
ditentukan. Kemudian dengan menggunakan sotware klien, pegawai
tersebut dapat terhubung ke jaringan lokal perusahaan.
Perusahaan yang memiliki pegawai yang ada di lapangan dalam
jumlah besar dapat menggunakan remote access VPN untuk
membangun WAN. VPN tipe ini akan memberikan keamanan,
dengan mengenkripsi koneksi antara jaringan lokal perusahaan
dengan pegawainya yang ada di lapangan. Pihak ketiga yang
melakukan enkripsi ini adalah ISP.
2.3.2.2 Site-to-site VPN
Jenis implementasi VPN yang kedua adalah site-to-site VPN.
Implementasi jenis ini menghubungkan antara 2 kantor atau lebih
yang letaknya berjauhan, baik kantor yang dimiliki perusahaan itu
sendiri maupun kantor perusahaan mitra kerjanya. VPN yang
digunakan
untuk
menghubungkan
suatu
perusahaan
dengan
perusahaan lain (misalnya mitra kerja, supplier atau pelanggan)
disebut
ekstranet.
Sedangkan
bila
VPN
digunakan
untuk
menghubungkan kantor pusat dengan kantor cabang, implementasi ini
termasuk jenis intranet site-to-site VPN.
38
2.3.3 Topologi VPN
Menurut Oppenheimer (2004), topologi VPN yang paling umum untuk
site-to-site VPN ada tiga, yaitu :
2.3.3.1 Topologi Hub and Spoke
Topologi ini terdiri dari beberapa remote office (spoke) yang
terhubung
dengan
meminimalisasikan
central
site
kompleksitas
(hub).
Desain
konfigurasi
topologi
dengan
ini
hanya
menghubungkan tiap remote office dengan central site, dan tiap
remote site tersebut tidak saling berhubungan satu sama lain secara
langsung. Topologi ini cocok jika pertukaran data hanya terjadi antara
central site dengan tiap remote site dan masing-masing remote site
tersebut tidak saling bertukar data. Topologi ini tidak cocok jika ada
traffic yang tinggi diantara remote site tersebut atau jika dibutuhkan
redundancy dan automatic failover.
2.3.3.2 Topologi Mesh
Topologi
mesh
dapat
berbentuk
fully
meshed,
yang
menyediakan konektivitas diantara semua remote office dan central
site, atau partially meshed, yang menyediakan beberapa konektivitas
diantara beberapa remote office dan central site sesuai dengan
39
kebutuhan. Topologi mesh adalah desain yang bagus untuk digunakan
jika hanya sedikit lokasi yang saling berhubungan dengan jumlah
traffic flow yang tinggi. Karena jika jumlah lokasi yang dihubungkan
banyak, maka akan banyak konfigurasi yang dibutuhkan untuk setiap
device yang digunakan.
2.3.3.3 Topologi Jaringan Hierarki
Topologi jaringan hierarki adalah topologi hybrid yang cocok
digunakan untuk perusahaan besar yang mempunyai banyak kantor
pusat dan kantor cabang dengan traffic yang besar diantara mereka,
dan banyak remote office dengan interaksi yang sedikit diantara
mereka. Topologi ini terdiri dari full atau partial mesh sebagai inti,
dengan lokasi lain dihubungkan dengan inti tersebut dengan
menggunakan desain hub-and-spoke. Topologi ini adalah topologi
yang paling kompleks diantara topologi yang lain.
2.3.4 Tunneling
Tunneling adalah dasar dari VPN untuk membuat suatu jaringan
private melalui
jaringan
internet. Tunneling adalah
enkapsulasi
atau
pembungkusan suatu protokol ke dalam paket protokol lain (Perlmutter,
2000, p12). Tunneling menyediakan suatu koneksi point-to-point logis
40
sepanjang jaringan IP yang bersifat connectionless. Proses transfer data
dari satu jaringan ke jaringan lain memanfaatkan jaringan internet secara
terselubung (tunneling). Ketika paket berjalan menujun ke node tujuan,
paket ini melalui suatu jalur yang disebut tunnel. Disebut tunnel atau
saluran karena aplikasi yang memanfaatkannya hanya melihat dua end
point, sehingga paket yang lewat pada tunnel hanya akan melakukan
satu kali lompatan atau hop. Tunneling pada VPN menggunakan enkripsi
untuk melindungi data agar tidak dapat dilihat oleh pihak-pihak yang tidak
diberi otorisasi dan untuk membuat suatu encapsulation multiprotocol jika
diperlukan.
2.3.5 Enkripsi
Enkripsi merupakan informasi yang dibuat membingungkan sedemikian
rupa untuk menyembunyikan informasi tersebut dari individu-individu yang
tidak mempunyai hak sementara. Individu - individu yang berwenang
memungkinkan untuk melihatnya. Individu - individu tersebut dikatakan
berwenang bila mereka mempunyai kunci yang tepat untuk mendekripsi
informasi tersebut (Maiwald, 2003, p248).
Semakin banyak data yang lewat di dalam tunnel yang terbuka di
jaringan publik, maka teknologi enkripsi ini semakin dibutuhkan. Enkripsi
akan mengubah informasi yang ada dalam tunnel tersebut menjadi sebuah
ciphertext atau teks yang dikacaukan dan tidak ada artinya sama sekali
41
apabila dibaca secara langsung. Untuk dapat membuatnya kembali memiliki
arti atau dapat dibaca, maka dibutuhkan proses dekripsi. Proses dekripsi
terjadi pada ujung-ujung dari hubungan VPN. Pada kedua ujung ini telah
menyepakati sebuah algoritma yang akan digunakan untuk melakukan proses
enkripsi dan dekripsinya. Dengan demikian, data yang dikirim aman sampai
tempat tujuan, karena orang lain di luar tunnel tidak memiliki algoritma
untuk membuka data tersebut.
Enkripsi terdiri dari dua jenis, yaitu symmentric encryption dan
asymmentric encryption. Asymentric encryption menggunakan publik dan
private key dalam proses enkripsi dan dekripsi, sedangkan symmentric
encryption menggunakan key yang sama dalam proses enkripsi dan dekripsi.
Berikut metode – metode encryption:
1. Symmentric Encryption
Symmentric key encryption menggunakan private key berrarti
komputer pengirim dan penerima sama – sama menggunakan kunci
yang sama untuk mengenkripsi dan mendekripsi informasi. Karena satu
key digunakan bersama – sama untuk enkripsi dan dekripsi, maka harus
ada pengertian antara dua pihak untuk menjaga kerahasiaan key
tersebut.
Semua yang mempunyai kunci enkripsi dapat mendekripsi data
apa saja yang ada dalam lalu lintas VPN. Jika orang yang tak
42
berwenang memilki kunci enkripsi, ia dapat mendekripsi data yang ada
dan masuk ke setiap jaringan yang terhubung melalui VPN. Selain itu
kunci enkripsi juga dapat dibuka dengan melakukan brute force attack.
Hanya masalah waktu sampai sang attacker dapat membuka kunci
enkripsi.
Oleh karena itu, software VPN seperti IPSec mengganti kunci
enkripsi secara berkala dalam suatu interval waktu. Setiap kunci
enkripsi hanya berlaku dalam jangka waktu tertentu.
2. Asymmetric Encryption
Asymmetric key encryption mengenkripsi informasi dengan suatu
key dan mendekripsi dengan key lainnya. Sistem ini menggunakan
kombinasi dari dua buah key yaitu private key yang disimpan untuk diri
sendiri, dan public key yang diberikan untuk remote user.
2.3.6 Autentikasi
Selain enkripsi, salah satu aspek penting dalam VPN, yaitu memastikan
tindakan memverifikasi bahwa pengirim data yang mereka mengklaim
mereka dan bahwa data kirim sama dengan data yang diterima.(Perlmutter,
2000, p106)
43
Autentikasi ini terbagi kedalam 2 tipe, yaitu :
1. Otentikasi Pengguna
Dengan otentikasi pengguna, orang yang tidak berhak masuk ke
network dapat dikenali. Ada beberapa metode otentikasi pengguna
antara lain Pre – Shared Key, yaitu password yang diberikan kepada
pengguna yang tidak memiliki hubungan dengan infrastruktur VPN,
Digital Signatures, yaitu bukti elektronik untuk membuktikan
identitas
pengguna
memperbolehkan
dan
Hybrid
organisasi
Mode
untuk
Authentication,
menintegrasikan
yaitu
sistem
authentication dengan VPN.
2. Otentikasi Data
Untuk memastikan apakah data tidak berubah dalam perjalanan,
sistem VPN menggunakan otentikasi data. Salah satu teknik
otentikasi data adalah hash function. Teknik ini membuat suatu
angka, yang disebut hash, berdasarkan panjang bit tertentu. Pengirim
menambahkan angka hash tersebut ke dalam paket data sebelum
encryption, penerima akan melakukan perhitungan hash kembali.
Apabila kedua angka hash tersebut sesuai, maka dipastikan data tidak
mengalami perubahan dalam perjalanan.
44
2.3.7 Cara Kerja VPN
Saat koneksi VPN dibentuk, software VPN pada sisi client melakukan
kontak pada gateway VPN server. Gateway biasanya melakukan verifikasi
dengan melakukan pengecekan password. Kemudian akan dibuat sebuah
tunnel dan menambahkan sebuah header pada paket data yang akan
dimengerti oleh jaringan internet. Saat paket mencapai endpoint dari
gateway, gateway akan menarik kembali header Internet tersebut, dan
mengarahkan paket tersebut ke tujuan akhirnya.
2.4
OpenVPN
OpenVPN adalah solusi SSL VPN lengkap untuk menciptakan koneksi siteto-site yang ditemukan pada Ipsec VPN. OpenVPN disebut sebagai user-space
VPN karena tidak memerlukan kernel OS untuk berjalan. User-Space VPN
menggunakan virtual interface yang dikontrol dan diakses tanpa ketergantungan
pada kernel. Hal ini memungkinkan user-space VPN sebuah titik awal yang lebih
aman dibandingkan Ipsec standar. Selain itu juga fleksibelitas yang lebih dalam
port ke sistem operasi lain dan kemudahan instalasi dan pemeliharaan.
OpenVPN termasuk generasi baru VPN. Ketika solusi VPN yang lain sering
menggunakan proprietary atau mekanisme non-standard, OpenVPN mempunyai
konsep modular baik underlying security maupun networking. OpenVPN
menggunakan keamanan, kestabilan, dan mekanisme SSL/TLS untuk autentikasi
dan enkripsi.
Download