BAB 2 LANDASAN TEORI
2.1 Jaringan Komputer Jaringan (Norton, 1999, p5) adalah sebuah mekanisme yang memungkinkan komputer yang terdistribusi dan penggunanya untuk berkomunikasi dan berbagi sumber daya. Jaringan komputer (Tanenbaum, 2002, p1) adalah model komputer tunggal yang melayani seluruh tugas-tugas komputasi suatu organisasi telah diganti oleh sekumpulan komputer berjumlah banyak yang terpisah-pisah akan tetapi berhubungan dalam melaksanakan tugasnya. Manfaat dari jaringan komputer adalah sebagai berikut : 1. Jaringan Untuk Perusahaan a. Resource sharing, agar seluruh program, peralatan, khususnya data bisa digunakan oleh setiap orang yang ada pada jaringan tanpa terpengaruh oleh lokasi sumber daya dan pengguna. b. Reliabilitas tinggi, memiliki sumber-sumber alternatif persediaan. c. Menghemat uang, komputer berukuran kecil mempunyai kinerja yang lebih baik dibanding dengan komputer yang lebih besar. d. Skalabilitas, kemampuan untuk meningkatkan kinerja sistem secara berangsur-angsur sesuai dengan beban pekerjaan hanya dengan menambahkan sejumlah prosesor. 7
8
e. Medium komunikasi, dua orang atau lebih yang tinggal berjauhan akan lebih mudah bekerja sama dengan menggunakan jaringan. 2. Jaringan Untuk Umum a. Akses ke informasi yang berada di tempat yang jauh. b. Komunikasi person-to-person. c. Hiburan interaktif. d. E-commerce. 3. Masalah-Masalah Sosial Jaringan komputer menawarkan kemampuan untuk pengiriman pesan anonymous. Misalnya, kemampuan tersebut memberi peluang bagi seorang mahasiswa, pegawai, dan warganegara untuk memperingatkan penyimpangan yang dilakukan oleh sebagian dosen, atasan, dan politikus dengan tanpa harus merasa takut.
2.2 Klasifikasi Jaringan Komputer 2.2.1 Berdasarkan Teknologi Transimisi Terdapat dua teknologi transmisi dalam sistem jaringan, yaitu : • Jaringan broadcast : Komunikasi tunggal yang dipakai bersama-sama oleh semua mesin yang ada pada jaringan. Pesan-pesan berukuran kecil disebut paket, yang dikirimkan oleh suatu mesin akan diterima oleh mesinmesin lainnya. Bila paket tersebut ditujukan untuk dirinya, maka mesin
9
akan memproses paket itu. bila paket ditujukan untuk mesin lainnya, mesin tersebut akan mengabaikannya. • Jaringan point-to-point : Jaringan yang terdiri dari beberapa koneksi pasangan individu dari mesin-mesin. Untuk pergi dari sumber ke tempat tujuan, sebuah paket pada jaringan jenis ini harus melalui satu atau lebih mesin-mesin perantara.
2.2.2 Berdasarkan Jarak Berdasarkan skala, jaringan komputer dibagi menjadi : • Local Area Network (LAN)
Gambar 2.1 – Jaringan LAN
10
Local Area Network (LAN) merupakan jaringan milik pribadi di dalam sebuah gedung atau kampus yang berukuran sampai beberapa kilometer. LAN sering kali digunakan untuk menguhubungkan komputer-komputer pribadi dan workstation dalam kantor perusahaan atau pabrik-pabrik untuk memakai sumber daya secara bersama (misalnya printer) dan saling bertukar informasi. • Metropolitan Area Network (MAN)
Gambar 2.2 – Jaringan MAN
Metropolitan Area Network (MAN) merupakan versi LAN yang berukuran lebih besar dan biasanya memakai teknologi yang sama dengan LAN. MAN dapat mencakup kantor-kantor perusahaan yang
11
berdekatan atau juga dalam sebuah kota dan dapat dimanfaatkan untuk keperluan pribadi (swasta) atau umum. • Wide Area Network (WAN)
Gambar 2.3 – Jaringan WAN
Wide Area Network (WAN) mencakup daerah geografis yang luas, sering kali mencakup sebuah negara atau benua. Wan terdiri dari kumpulan mesin yang bertujuan untuk menjalankan program-program (aplikasi) pengguna.
2.2.3 Berdasarkan Media Transmisi Data Berdasarkan media transmisi data, jaringan komputer dibagi menjadi : • Jaringan Berkabel (Wired Network)
12
Pada jaringan ini, untuk menghubungkan satu komputer dengan komputer lain diperlukan penghubung berupa kabel jaringan. Kabel jaringan berfungsi dalam mengirimkan informasi dalam bentuk sinyal listrik antar komputer jaringan. • Jaringan Nirkabel (Wireless Network) Merupakan
jaringan
dengan
medium
berupa
gelombang
elektromagnetik. Pada jaringan ini tidak diperlukan kabel untuk menghubungkan antar komputer karena menggunakan gelombang elektromagnetik yang akan mengirimkan sinyal informasi antar komputer jaringan.
2.2.4 Berdasarkan Hubungan Fungsional Berdasarkan fungsi, jaringan komputer dibagi menjadi : • Jaringan Client – Server Jaringan client – server pada dasarnya ada satu komputer yang disiapkan menjadi server dari komputer lainnya yang sebagai client. Server menjadi jantung dari sistem dengan menyediakan akses dan sumber daya serta menyediakan keamanan. • Jaringan Peer-to-peer Setiap perangkat dalam jaringan peer-to-peer dapat menjadi client dan server secara bersamaan. Semua perangkat dalam jaringan mampu
13
mengakses data, software, dan sumber daya jaringan lain secara langsung. Jaringan ini biasanya hanya bisa diterapkan pada jumlah komputer yang tidak terlalu banyak, maksimum 25.
2.3 Topologi Jaringan Topologi jaringan dibagi mejadi dua yaitu topologi fisik dan topologi logika. 2.3.1 Topologi Fisik Merupakan susunan geometris dari komponen yang membentuk LAN. Topologi bukanlah peta dari jaringan. Topologi fisik menyampaikan secara grafis bentuk dan struktur dari LAN. Topologi fisik yang yang dikenal saat ini adalah bus, ring, star, tree, dan mesh. 1. Topologi Bus
Gambar 2.4 – Topologi Bus
14
Sebuah topologi bus menghubungkan semua node jaringan yang saling berhubungan menggunakan satu open-ended cable. Kabel ini hanya dapat mendukung satu saluran transmisi, kabel tersebut disebut bus. Kelebihan topologi bus : • Pengembangan jaringan atau penambahan workstation baru dapat dilakukan dengan mudah tanpa mengganggu workstation lain. • Jumlah node tidak dibatasi, tidak seperti hub yang dibatasi oleh jumlah dari port. • Kecepatan pengiriman data lebih cepat karena data berjalan searah. • Lebih mudah dan murah jika ingin menambah atau mengurangi jumlah node karena yang dibutuhkan hanya kabel dan konektor. Kekurangan topologi bus :
• Bila terdapat gangguan di sepanjang kabel pusat maka keseluruhan jaringan akan mengalami gangguan.
15
2. Topologi Ring
Gambar 2.5 – Topologi Ring
Topologi ring dimulai dengan peer-to-peer sederhana topologi LAN. Setiap workstation jaringan memiliki dua sambungan, masingmasing
untuk
tetangga
terdekat.
Interkoneksi
tersebut
harus
membentuk loop atau cincin. Kelebihan topologi ring : • Aliran data mengalir lebih cepat karena dapat melayani data dari kiri atau kanan server. • Dapat melayani aliran lalu lintas data yang padat, karena data dapat bergerak ke kiri atau ke kanan. • Waktu untuk mengakses data lebih optimal. Kekurangan topologi ring : • Penambahan terminal atau node akan menjadi lebih sulit bila port sudah habis.
16
• Jika pada salah satu terminal mengalami kerusakan, maka semua terminal pada jaringan tidak dapat digunakan. 3. Topologi Star
Gambar 2.6 – Topologi Star
Topologi star memiliki koneksi ke perangkat jaringan yang ”memancar” keluar dari satu titik yang sama. Setiap perangkat jaringan dalam topologi star dapat mengakses media secara bebas. Kelebihan topologi star : • Jika terjadi penambahan atau pengurangan terminal tidak mengganggu operasi yang sedang berlangsung. • Jika salah satu terminal rusak, maka terminal lainnya tidak mengalami gangguan. • Arus lalu lintas informasi data lebih optimal. Kekurangan topologi star : • Jumlah terminal terbatas, tergantung port yang ada pada hub.
17
• Lalu lintas data yang padat dapat menyebabkan jaringan bekerja lebih lambat. 4. Topologi Tree
Gambar 2.7 – Topologi Tree
Kombinasi karakteristik antara topologi bintang dan topologi bus. Topologi ini terdiri atas kumpulan topologi bintang yang dihubungkan dalam satu topologi bus sebagai jalur tulang punggung atau backbone. Komputer-komputer dihubungkan ke hub, sedangkan hub lain di hubungkan sebagai jalur tulang punggung. Kelebihan topologi tree : • Seperti topologi star perangkat terhubung pada pusat pengendali / HUB. • Tetapi HUB dibagi menjadi dua,central HUB,dan secondary HUB
18
• Topologi tree ini memiliki keunggulan lebih mampu menjangkau jarak yang lebih jauh dengan mengaktifkan fungsi Repeater yang dimiliki oleh HUB. Kekurangan topologi tree :
• Kabel yang digunakan menjadi lebih banyak sehingga diperlukan perencanaan yang matang dalam pengaturannya, termasuk di dalamnya adalah tata letak ruangan. 5. Topologi Mesh
Gambar 2.8 – Topologi Mesh
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.
19
Kelebihan topologi mesh : • Terjaminnya kapasitas channel
komunikasi, karena memiliki
hubungan yang berlebih. • Relatif lebih murah untuk dilakukan troubleshoot. Kekurangan topologi mesh : • Sulitnya
pada
saat
melakukan
instalasi
dan
melakukan
konfigurasi ulang saat jumlah komputer dan peralatan-peralatan yang terhubung semakin meningkat jumlahnya. • Biaya yang besar untuk memelihara hubungan yang berlebih
2.3.2 Topologi Logika Topologi logika adalah istilah yang digunakan untuk menjelaskan skema yang digunakan oleh sistem operasi jaringan untuk mengelola aliran informasi di antara simpul. Skema komunikasi sistem operasi mempengaruhi cara pengguna workstation dalam membayangkan komunikasi antar komputer. Topologi logika jaringan adalah bagaimana secara logika antar komputer terhubung atau berkomunikasi satu dengan yang lainnya. Kebanyakan sistem operasi jaringan menggunakan salah satu dari dua jenis dasar topologi logika yaitu broadcast dan token parsing. 1. Topologi Broadcast Melalui topologi ini, data dikirim dari satu host ke host lainnya dalam media jaringan. Data yang dikirim lebih dahulu akan diproses
20
sebelum data berikutnya. Prinsip ini berlaku juga pada cara kerja Ethernet. 2. Topologi Token Parsing Pada topologi ini, jaringan diakses dengan melepas atau menerima pesan elektronik ke setiap host secara beruntun. Ketika host menerima data berarti host tersebut dapat mengirim data dalam jaringan. Sebaliknya, host akan melepasnya apabila tidak memiliki data untuk dikirim.
2.4 Model-Model Referensi (OSI Layer)
Gambar 2.9 – Model Referensi OSI
Model OSI diciptakan berdasarkan sebuah proposal yang dibuat oleh The International Standards Organization (ISO) sebagai langkah awal menuju
21
standarisasi protokol internasional yang digunakan pada berbagai layer. Model ini disebut ISO OSI (Open Systems Interconnection) Reference Model karena model itu ditujukan bagi pengkoneksian open system. Open System dapat diartikan sebagai suatu sistem yang terbuka untuk berkomunikasi dengan sistem-sistem lainnya. Model OSI memiliki tujuh layer dan prinsip-prinsip yang digunakan pada ketujuh layer tersebut adalah : 1. Sebuah layer harus dibuat bila diperlukan tingkat abstraksi yang berbeda. 2. Setiap layer harus memiliki fungsi-fungsi tertentu. 3. Fungsi setiap layer harus dipilih dengan teliti sesuai dengan ketentuan standard protokol internasional. 4. Batas-batas layer diusahakan agar meminimalkan aliran informasi yang melewati interface. 5. Jumlah layer harus cukup banyak, sehingga fungsi-fungsi yang berbeda tidak perlu disatukan dalam satu layer diluar keperluannya. Akan tetapi jumlah layer juga harus diusahakan sesedikit mungkin sehingga arsitektur jaringan tidak menjadi sulit dipakai. OSI itu sendiri bukanlah merupakan arsitektur jaringan karena model ini tidak menjelaskan secara pasti layanan dan protokolnya untuk digunakan pada setiap layernya. Model OSI hanya menjelaskan tentang apa yang harus dikerjakan oleh sebuah layer. Akan tetapi ISO juga telah membuat standar untuk semua layer, walaupun standar-standar ini bukan merupakan model
22
referensi itu sendiri. Setiap layer telah dinyatakan sebagai standar internasional yang terpisah. Adapun ketujuh layer tesebut adalah : 1. Physical Layer Physical layer berfungsi dalam pengirimin raw bit ke channel komunikasi. Masalah desain yang harus diperhatikan di sini adalah memastikan bahwa bila satu sisi mengirim data satu bit, data tersebut harus diterima oleh sisi lainnya sebagai satu bit pula, dan bukan nol bit. Secara umum masalah-masalah desain yang ditemukan di sini berhubungan secara mekanik, elektrik dan interface prosedural, serta media transmisi fisik yang berada di bawah physical layer. 2. Data Link Layer Tugas utama dari data link layer adalah sebagai fasilitas transmisi raw data dan mentransformasi data tersebut ke saluran yang bebas dari kesalahan transmisi. Sebelum diteruskan ke network layer, data link layer melaksanakan tugas ini dengan memungkinkan pengirim memecah-mecah data input menjadi sejumlah data frame (biasanya berjumlah ratusan atau ribuan byte). Kemudian data link layer mentransmisikan frame tersebut secara berurutan dan memproses acknowledge frame yang dikirim kembali oleh penerima. Karena physical layer menerima dan mengirim aliran bit tanpa mengindahkan arti atau arsitektur frame, maka tergantung pada data link layer-lah untuk membuat dan mengenali batas-batas frame tersebut. Hal ini bisa dilakukan dengan cara membubuhkan bit khusus ke awal dan akhir frame.
23
3. Network Layer Network layer berfungsi untuk pengembalian operasi subnet. Masalah desain yang penting adalah bagaimana caranya menentukan rute pengiriman paket dari sumber ke tujuannya. Rute dapat didasarkan pada tabel statik yang “dihubungkan” ke jaringan atau rute juga dapat ditentukan pada saat awal percakapan. Bila pada saat yang sama dalam sebuah subnet terdapat terlalu banyak paket, maka ada kemungkinan paket-paket tersebut tiba pada saat yang bersamaan. Pengendalian kemacetan seperti itu juga merupakan tugas dari network layer. 4. Transport Layer Fungsi dasar dari transport layer adalah menerima data dari session layer, memecah data menjadi bagian-bagian yang lebih kecil bila perlu, meneruskan data ke network layer, dan menjamin bahwa semua potongan data tersebut bisa tiba di sisi lainnya dengan benar. Selain itu, semua hal tersebut harus dilaksanakan secara efisien dan bertujuan untuk dapat melindungi layer-layer bagian atas dari perubahan teknologi hardware yang tidak dapat dihindari. Dalam keadaan normal, transport layer membuat koneksi jaringan yang berbeda bagi setiap koneksi transport yang diperlukan oleh session layer. Bila koneksi transport memerlukan throughput yang tinggi, maka transport layer dapat membuat koneksi jaringan yang banyak. Transport layer membagi-bagi pengiriman data ke sejumlah jaringan untuk meningkatkan throughput. Transport layer juga
24
menentukan jenis layanan untuk session layer dan pada gilirannya jenis layanan bagi para pengguna jaringan. Ada dua jenis layanan transport layer, yang paling populer adalah saluran error-free point to point yang meneruskan pesan sesuai dengan urutan pengirimannya. Jenis layanan lainnya adalah transport pesan terisolasi yang tidak menjamin urutan pengiriman dan mem-broadcast pesan-pesan ke sejumlah tujuan. Jenis layanan ditentukan pada saat koneksi dimulai. 5. Session Layer Session layer mengijinkan para pengguna untuk menetapkan session
dengan
pengguna
lainnya.
Sebuah
session
selain
memungkinkan transport data biasa, juga menyediakan layanan yang istimewa untuk aplikasi-aplikasi tertentu. Sebuah session digunakan untuk memungkinkan seorang pengguna melakukan log ke remote timesharing system atau untuk memindahkan file dari suatu mesin ke mesin lainnya, Session layer memiliki 2 layanan, yaitu manajemen token dan sinkronisasi. Yang pertama manajemen token adalah sebuah layanan untuk
melaksanakan
pengendalian
dialog.
Session
dapat
memungkinkan lalu-lintas bergerak ke dalam bentuk dua arah pada suatu saat, atau hanya satu arah saja. Jika pada satu saat lalu-lintas hanya satu arah saja, session layer membantu untuk menentukan giliran yang berhak menggukanan saluran pada suatu saat. Layanan yang kedua adalah sinkronisasi. Sebuah contoh untuk menjelaskan layanan ini adalah ketika mencoba transfer file yang berdurasi dua jam
25
dari mesin yang satu ke mesin yang lainnya dengan kemungkinan mempunyai selang waktu satu jam antara dua crash yang terjadi. Setelah masing-masing transfer dibatalkan, seluruh transfer mungkin perlu diulangi lagi dari awal, dan mungkin saja mengalami kegagalan lagi. Untuk mengurangi kemungkinan terjadinya masalah ini, session layer dapat menyisipkan tanda tertentu ke aliran data sehingga bila terjadi crash, hanya data yang berada sesudah tanda tersebut yang akan ditransfer ulang. 6. Presentation Layer Presentation layer melakukan fungsi-fungsi tertentu yang diminta untuk menjamin penemuan sebuah penyelesaian umum bagi masalah tertentu. Presentation layeri tidak mengijinkan pengguna untuk menyelesaikan sendiri suatu masalah. Tidak seperti layer-layer di bawahnya yang hanya melakukan pemindahan bit dari suatu tempat ke tempat lainnya, presentation layer memperhatikan sintaks dan semantik informasi yang dikirimkan. Salah satu contoh layanan presentation layer adalah enkoding data. Kebanyakan pengguna tidak memindahkan string bit biner yang random. Para pengguna saling bertukar informasi yang dinyatakan dalam bentuk string karakter, integer, float dan lainnya. Terdapat perbedaan antara satu komputer dengan komputer lainnya dalam memberi kode untuk menyatakan string-string tersebut. Untuk memungkinkan dua buah komputer yang memiliki presentasi yang berbeda untuk dapat berkomunikasi, struktur data yang dipertukarkan
26
dapat diyatakan dengan cara abstrak, sesuai dengan standard enkoding yang akan digunakan pada ”saluran”. Presentation layer mengatur struktur data abstak ini dan mengkonversi dari representasi yang digunakan pada sebuah komputer menjadi representasi standard jaringan, dan sebaliknya. 7. Application Layer Application
layer
terdiri dari bermacam-macam protokol.
Misalnya, terdapat ratusan jenis terminal yang tidak kompatibel di seluruh dunia. Ambil keadaan dimana editor layar penuh yang diharapkan bekerja pada jaringan dengan bermacam-macam terminal, yang masing-masing memiliki layout layar yang berlainan, mempunyai cara urutan penekanan tombol yang berbeda untuk penyisipan dan penghapusan teks, memindahkan sensor, dan lainnya. Cara
untuk
mengatasi
masalah
tersebut
adalah
dengan
menentukan terminal virtual jaringan abstrak, sehingga editor dan program-program lainnya dapat ditulis agar saling bersesuaian. Fungsi application layer lainnya adalah pemindahan file. Sistem file yang satu dengan yang lainnya memilki konvensi penamaan yang berbeda, cara menyatakan baris-baris teks yang berbeda, dan sebagainya. Perpindahan file dari sebuah sistem ke sistem lainnya yang berbeda memerlukan penanganan untuk mengatasi adanya ketidakkompatibelan
ini.
Tugas
tersebut
juga
merupakan
pekerjaan
application layer, seperti pada surat elektronik, remote job entry,
27
directory lookup, dan berbagai fasilitas bertujuan umum dan khusus lainnya.
Gambar 2.10 – Strukur Kerja Model Referensi OSI
28
2.5 Pengalamatan IP Internet protocol (IP) address adalah alamat numerik yang ditetapkan untuk sebuah komputer yang berpartisipasi dalam jaringan komputer yang memanfaatkan internet protocol untuk komunikasi antara node-nya. Walaupun alamat IP disimpan sebagai angka biner, mereka biasanya ditampilkan agar memudahkan manusia menggunakan notasi, seperti 208.77.188.166 (untuk IPv4), dan 2001: db8: 0:1234:0:5671 (untuk IPv6). Internet protocol juga memiliki tugas routing paket data antara jaringan, alamat IP dan menentukan lokasi dari node sumber dan node tujuan dalam topologi dari sistem routing. Untuk tujuan ini, beberapa bit pada alamat IP yang digunakan untuk menunjuk sebuah subnetwork. Jumlah bit ini ditunjukkan dalam notasi CIDR, yang ditambahkan ke alamat IP, misalnya, 208.77.188.166/24. Sistem pengalamatan IP ini terbagi menjadi 2, yaitu IP versi (IPv4) dan IP versi 6 (IPv6). Pengiriman data dalam jaringan TCP/IP berdasarkan IP address komputer pengirim dan komputer penerima. IP address memiliki dua bagian, yaitu alamat jaringan (network address) dan alamat komputer lokal (host address) dalam sebuah jaringan. Alamat jaringan digunakan oleh router untuk mencari jaringan tempat sebuah komputer lokal berada, semantara alamat komputer lokal digunakan untuk mengenali sebuah komputer pada jaringan lokal.
2.5.1 Jenis-Jenis Alamat IP Alamat IPv4 terbagi menjadi beberapa jenis, yaitu sebagai berikut :
29
1. Alamat Unicast Merupakan alamat IPv4 yang ditentukan untuk sebuah antarmuka jaringan yang dihubungkan ke sebuah internetwork IP. Alamat unicast digunakan dalam komunikasi point-to-point atau one-to-one. Alamat unicast menggunakan kelas A, B, dan C dari kelas-kelas alamat IP yang telah disebutkan sebelumnya. 2. Alamat Broadcast Merupakan alamat IPv4 yang didesain agar diproses oleh setiap node IP dalam segmen jaringan yang sama. Alamat broadcast digunakan dalam komunikasi one-to-everyone. Alamat broadcast IP versi 4 digunakan untuk menyampaikan paket-paket data “satu-untuk-semua”. Jika sebuah host pengirim yang hendak mengirimkan paket data dengan tujuan alamat broadcast, maka semua node yang terdapat di dalam segmen jaringan tersebut akan menerima paket tersebut dan memprosesnya. Berbeda dengan alamat IP unicast atau alamat IP multicast, alamat IP broadcast hanya dapat digunakan sebagai alamat tujuan saja, sehingga tidak dapat digunakan sebagai alamat sumber. Ada empat jenis alamat IP broadcast, yaitu : • Network Broadcast, merupakan alamat yang dibentuk dengan cara mengeset semua bit host menjadi 1 dalam sebuah alamat yang menggunakan kelas (classful). Alamat network broadcast digunakan untuk mengirimkan sebuah paket untuk semua host yang terdapat di dalam sebuah jaringan yang berbasis kelas.
30
Router tidak dapat meneruskan paket-paket yang ditujukan dengan alamat network broadcast. • Subnet Broadcast, merupakan alamat yang dibentuk dengan cara mengeset semua bit host menjadi 1 dalam sebuah alamat yang tidak menggunakan kelas. Alamat subnet broadcast digunakan untuk mengirimkan paket ke semua host dalam sebuah jaringan yang telah dibagi dengan cara subnetting, atau supernetting. Router tidak dapat meneruskan paket-paket yang ditujukan dengan alamat subnet broadcast. • All Subnet Directed Broadcast, merupakan Alamat IP ini adalah alamat broadcast yang dibentuk dengan mengeset semua bit-bit network identifier yang asli yang berbasis kelas menjadi 1 untuk sebuah jaringan dengan alamat tak berkelas. Sebuah paket jaringan yang dialamatkan ke alamat ini akan disampaikan ke semua host dalam semua subnet yang dibentuk dari network identifer yang berbasis kelas yang asli. Penggunaan alamat jenis ini telah ditinggalkan. • Limited Broadcast, merupakan alamat yang dibentuk dengan mengeset semua 32 bit alamat IP versi 4 menjadi 1. Alamat ini digunakan
ketika
sebuah
node
IP
harus
melakukan
penyampaian data secara one-to-everyone di dalam sebuah jaringan lokal tetapi ia belum mengetahui network identifiernya.
31
Semua host, yang berbasis kelas atau tanpa kelas akan mendengarkan dan memproses paket jaringan yang dialamatkan ke alamat ini. Meskipun kelihatannya dengan menggunakan alamat ini, paket jaringan akan dikirimkan ke semua node di dalam semua jaringan, ternyata hal ini hanya terjadi di dalam jaringan lokal saja, dan tidak akan pernah diteruskan oleh router IP, mengingat paket data dibatasi saja hanya dalam segmen jaringan lokal saja. Karenanya, alamat ini disebut sebagai limited broadcast. 3. Alamat Multicast Merupakan merupakan alamat IPv4 yang didesain agar diproses oleh satu atau beberapa node dalam segmen jaringan yang sama atau berbeda. Alamat multicast digunakan dalam komunikasi one-to-many. Alamat multicast digunakan untuk menyampaikan satu paket kepada banyak penerima. Dalam sebuah intranet yang memiliki alamat multicast IPv4, sebuah paket yang ditujukan ke sebuah alamat multicast akan diteruskan oleh router ke subjaringan di mana terdapat host-host yang sedang berada dalam kondisi “listening” terhadap lalu lintas jaringan yang dikirimkan ke alamat multicast tersebut. Dengan cara ini, alamat multicast pun menjadi cara yang efisien untuk mengirimkan paket data dari satu sumber ke beberapa tujuan.
32
2.5.2 Kelas-Kelas Pengalamatan IP
Gambar 2.11 – Kelas IP
IPv4 terbagi menjadi beberapa kelas dilihat dari oktet pertamanya. Yang menjadi pembeda kelas pada IPv4 adalah pola biner yang terdapat dalam oktet pertama. Pengalamatan IP terbagi dalam lima kelas, yaitu : 1. Kelas A Alamat-alamat kelas A diberikan untuk jaringan skala besar. Kelas A memiliki hingga 126 jaringan dan 16,777,214 host tiap jaringannya. Alamat dengan oktet awal 127 tidak diizinkan, karena digunakan untuk mekanisme Interprocess Communication (IPC) di dalam mesin yang bersangkutan. 2. Kelas B Alamat-alamat kelas B dikhususkan untuk jaringan skala menengah hingga skala besar. Kelas B dapat memiliki 16,384 network, dan 65,534 host untuk setiap network-nya.
33
3. Kelas C Alamat-alamat kelas C digunakan untuk jaringan berskala kecil. Kelas C memungkinkan pembuatan total 2,097,152 buah network, dan 254 host untuk setiap network-nya. 4. Kelas D Alamat-alamat kelas D disediakan hanya untuk alamat-alamat IP multicast, sehingga berbeda dengan kelas A, B, dan C. 5. Kelas E Alamat-alamat kelas E disediakan sebagai alamat yang bersifat "eksperimental" atau percobaan dan dicadangkan untuk digunakan pada masa depan.
Tabel 2.1 – Range IP Tiap Kelas Kelas
Range
Kelas A
1.x.x.x – 126.x.x.x
Kelas B
128.x.x.x – 191.x.x.x
Kelas C
192.x.x.x – 223.x.x.x
Kelas D
224.x.x.x – 239.x.x.x
Kelas E
240.x.x.x – 255.x.x.x
34
2.5.3 Public dan Private IP Address Ada dua jenis IP address, yaitu : 1. Public IP Address Merupakan IP address untuk setiap komputer yang terhubung pada internet dimana setiap IP tersebut adalah unik. Maka tidak akan ada dua komputer dengan alamat IP public yang sama dalam seluruh internet. Skema pengalamatan memungkinkan komputer untuk “menemukan satu sama lain” dan melakukan pertukaran informasi. Pengguna tidak memiliki kontrol atas alamat IP (public) yang diberikan ke komputer. Alamat IP publik diberikan oleh Internet Service Provider (ISP) secara langsung setelah komputer terhubung ke gateway internet. Sebuah alamat IP public dapat berupa statis atau dinamis. Sebuah alamat IP public statis tidak dapat berubah dan digunakan terutama untuk hosting halaman web atau layanan di internet. Di sisi lain sebuah alamat IP public yang dinamis dipilih dari sebuah pool yang tersedia pada alamat dan perubahan masing-masing terjadi satu kali untuk menghubungkan ke internet. Sebagian besar pengguna internet hanya akan memiliki IP dinamis yang bertugas untuk setiap komputer.
Ketika
terjadi
disconnetted
atau
jaringan
terputus/padam apabila menghubungkannya kembali maka otomatis akan mendapat IP baru.
35
2. Private IP Address Digunakan untuk penomoran komputer dalam jaringan pribadi termasuk rumah, sekolah dan LAN bisnis di bandara dan hotel yang memungkinkan komputer dalam jaringan untuk berkomunikasi satu sama lain. Berbeda dengan IP public, administrator jaringan private bebas untuk menetapkan alamat IP dari pilihannya sendiri (disediakan tiga blok ruang alamat IP untuk jaringan private yang telah dicadangkan oleh Internet Assigned Numbers Authority). Perangkat dengan alamat IP private tidak dapat terhubung langsung ke internet. Demikian juga, komputer di luar jaringan lokal tidak dapat terhubung langsung ke perangkat dengan IP private. Hal ini dimungkinkan untuk menghubungkan dua jaringan pribadi dengan bantuan router atau perangkat serupa yang mendukung Network Address Translation. Jika jaringan private yang terhubung ke internet (melalui koneksi internet melalui ISP) maka setiap komputer akan memiliki IP private maupun IP public. IP private dipakai untuk komunikasi dalam jaringan dimana IP public digunakan untuk komunikasi melalui internet.
36
Tabel 2.2 – Range Private IP Adress Kelas
Alamat Yang Dicadangkan
A
10.0.0.0 – 10.255.255.255
B
172.16.0.0 – 172.31.255.255
C
192.168.0.0 – 192.168.255.255
2.6 Virtual Private Network Virtual Private Network (VPN) merupakan suatu lingkungan komunikasi di mana hak akses dikontrol untuk mengijinkan koneksi peer yang berada dalam komunitas yang berkepentingan, dan dibangun dari beberapa bentuk partisi yang mendasari media komunikasi yang umum, di mana media komunikasi tersebut menyediakan layanan kepada jaringan secara non-exclusive. VPN memungkinkan penyediaan layanan jaringan private untuk suatu organisasi pada jaringan public atau shared seperti internet. 2.6.1 Jenis-Jenis VPN VPN dibagi menjadi 2 jenis, yaitu : •
Remote Access VPN -
Remote access VPN memungkinkan mobile atau home-based users untuk mengakses ke server suatu organisasi dari jarak jauh.
37
•
Site-To-Site VPN -
Site-to-site VPN memungkinkan koneksi antara organisasi secara geografis menyebarkan jaringan (seperti kantor pusat dan kantor cabangnya).
2.6.2 VPN Tunneling Protocol Tunneling merupakan enkapsulasi dari paket atau paket di dalam frames, seperti memasukkan suatu amplop ke dalam amplop lain. Tunneling memegang peranan penting dalam penggunaan VPN, tetapi perlu diingat bahwa tunnels bukan merupakan VPN, dan VPN bukan merupakan tunnels. Beberapa peran tersebut meliputi : •
Menyembunyikan alamat private, tunneling menyembunyikan paket private dan alamat tersebut di dalam paket alamat public, sehingga paket private dapat melewati jaringan public.
•
Mengangkut muatan non-IP, tunnels sama dengan sirkuit virtual dimana paket non-IP dapat menjadi muatan untuk dapat diangkut melalui jaringan public seperti internet.
•
Fasilitas 'Data Shunting', memisahkan paket-paket data. Tunneling dapat meneruskan atau 'shunt' seluruh paket langsung menuju ke lokasi spesifik.
•
Menyediakan keamanan, beberapa protokol tunneling menyediakan lapisan keamanan tambahan sebagai komponen tetap dari protokol.
38
Contoh-contoh protokol VPN tunneling : 1. IPSec : IPSec didefinisikan secara resmi pertama kali di tahun 1995 dengan pengenalan 'Security Architecture for the Internet Protocol' pada Request for Comments (RFC) 1825. IPSec menyediakan keutuhan dan kerahasiaan untuk paket IP. Sebagai sarana untuk menyediakan layanan tersebut, IPSec meliputi tiga elemen dasar yang berguna sebagai protokol VPN, yaitu : • Otentikasi, memeriksa bahwa si pengirim data merupakan pengirim itu sendiri bukan orang lain dan data yang dikirim sama dengan data yang diterima. • Enkripsi, mengacak data sehingga tidak dapat dimengerti oleh orang lain yang tidak memiliki kunci yang tepat. • Penyesuaian kunci, menyesuaikan kunci antara pengirim dan penerima. 2. PPTP : Point-to-Point Tunneling Protocol (PPTP) digunakan untuk memfasilitasi pemindahan data secara aman dari klien ke server perusahaan swasta melalui infrastruktur akses internet sebagai media transportasi umum.
39
3. L2TP : Layer
2
Tunneling
Protocol
(L2TP)
merupakan
hasil
penggabungan dari spesifikasi PPTP dan L2F, dimana dapat mengenkapsulasi PPP frames dan mengantarkan data ke jaringan bersama (public). 4. GRE : Generic Routing Encapsulation (GRE) ditetapkan pada tahun 1994 dan merupakan salah satu dari pelopor protokol tunneling, pada faktanya digunakan sebagai teknik enkapsulasi untuk protokol tunneling lainnya.
2.7 IP Security (IPSec) IPSec
adalah kerangka kerja standar terbuka yang merinci aturan untuk
komunikasi yang aman. IPSec bergantung pada algoritma yang ada untuk mengimplementasikan enkripsi, otentikasi, dan pertukaran kunci. IPSec bekerja di network layer, melindungi dan mengotentikasi paket IP antara perangkat IPSec yang berpartisipasi. Akibatnya, IPSec dapat melindungi hampir semua lalu lintas aplikasi karena perlindungan dapat diimplementasikan dari layer 4 sampai layer 7.
40
Framework (kerangka) IPSec terdiri dari lima blok bangunan: •
Yang pertama merupakan protokol IPSec. Pilihan meliputi ESP atau AH.
•
Yang kedua merupakan jenis kerahasiaan yang diimplementasikan menggunakan algoritma enkripsi seperti DES, 3DES, AES, atau SEAL. Pilihan tergantung pada tingkat keamanan yang diperlukan.
•
Yang ketiga merupakan integritas yang dapat diimplementasikan baik menggunakan MD5 atau SHA.
•
Keempat merupakan bagaimana shared secret key dibentuk. Kedua metode tersebut adalah pre-shared atau digitally signed (tandatangan digital) menggunakan RSA.
•
Yang terakhir merupakan kelompok algoritma Diffie-Hellman (DH). Ada empat algoritma pertukaran kunci DH yang terpisah yaitu DH Kelompok 1 (DH1), DH Kelompok 2 (DH2), DH Kelompok 5 (DH5), dan DH Kelompok 7 (DH7). Jenis kelompok yang dipilih tergantung pada kebutuhan tertentu.
IPSec dapat mengamankan jalur antara sepasang gateway, sepasang host, atau gateway dan host. Dengan menggunakan framework IPSec, IPSec menyediakan fungsi-fungsi keamanan penting sebagai berikut : •
Confidentiality (kerahasiaan) - IPSec menjamin kerahasiaan dengan menggunakan enkripsi.
•
Integrity (integritas) - IPSec memastikan data tidak berubah ketika tiba di tujuan dengan menggunakan algoritma hash seperti MD5 atau SHA.
41
•
Authentication (otentikasi) - IPSec menggunakan Internet Key Exchange (IKE) untuk mengotentikasi pengguna dan perangkat yang dapat melakukan komunikasi secara independen. IKE menggunakan beberapa jenis otentikasi, termasuk username dan password, one-time password, biometrik, pre-shared key (PSK), dan sertifikat digital.
•
Secure key exchange (pertukaran kunci yang aman) - IPSec menggunakan algoritma DH untuk menyediakan metode pertukaran kunci public antara dua rekan untuk membentuk sebuah kunci rahasia bersama.
Gambar 2.12 – Framework IPSec
42
• Confidentiality (Kerahasiaan) Kerahasiaan diperoleh melalui enkripsi saat melewati VPN. Tingkat keamanan tergantung pada panjang kunci dari algoritma enkripsi. Semakin pendek kunci nya, maka akan semakin mudah untuk didekripsi. Algoritma enkripsi dan panjang kunci yang digunakan pada VPN yaitu sebagai berikut : •
DES – Menggunakan kunci 56-bit, memastikan enkripsi dengan performa yang tinggi. DES merupakan crytosystem dengan kunci simetrik.
•
3DES – Sebuah variasi dari 56-bit DES. 3DES menggunakan tiga kunci enkripsi 56-bit setiap 64-bit blok, enkripsinya lebih kompleks dibandingkan dengan DES. 3DES merupakan cryptosystem dengan kunci simetrik.
•
AES – Menyediakan keamanan yang lebih kompleks dibandingkan dengan DES dan lebih efisien daripada 3DES. AES menawarkan tiga kunci yang berbeda : 128 bits, 192 bits, dan 256 bits. AES merupakan cryptosystem dengan kunci simetrik.
•
Software Optimized Encryption Algorithm (SEAL) – dikembangkan pada tahun 1993 oleh Phillip Rogaway dan Don Coppersmith, yang menggunakan kunci 160-bit. SEAL merupakan cryptosystem dengan kunci simetrik.
43
• Integrity (Integritas) Fungsi VPN yang selanjutnya adalah integritas data. Data yang diangkut melalui internet public berpotensi dapat dicegat dan dimodifikasi, oleh karena itu VPN merupakan suatu metode untuk membuktikan integritas data yang diperlukan untuk menjamin data belum diubah. Hashed Message Authentication Codes (HMAC) adalah algoritma integritas data yang menjamin keutuhan pesan menggunakan nilai hash. Jika nilai hash yang dikirim sesuai dengan nilai hash yang diterima, data merupakan data yang benar (tidak berubah). Akan tetapi, jika nilai hash yang dikirim tidak sesuai dengan nilai hash yang diterima, maka data tersebut tidak benar (telah berubah). Secara umum, terdapat dua algoritma HMAC : •
HMAC-Message Digest 5 (HMAC-MD5) – Menggunakan 128-bit shared-secret
key.
Data
dengan
128-bit
shared-secret
key
digabungkan dan dikirim dengan menggunakan algoritma HMAC – MD5, outputnya adalah 128-bit hash. •
HMAC-Secure Hash Algorithm 1 (HMAC-SHA-1) – Menggunakan secret key 160-bit. Data dengan 160-bit
shared-secret key
digabungkan dan dikirim dengan menggunakan algoritma HMACSHA-1, outputnya adalah 160-bit hash.
44
•
Authentication (Otentikasi) Apabila melakukan pertukaran data jarak jauh melalui e-mail atau fax
perlu mengetahui (otentikasi) pihak penerima. Hal ini berlaku juga untuk VPN, pihak penerima harus dipastikan terlebih dahulu sebelum jalur komunikasi dianggap aman. Pada era elektronik, data ditandai menggunakan private encryption key dari pengirim yang disebut digital signature. Digital signature tersebut dibuktikan melalui dekripsi menggunakan public key dari pengirim. Terdapat dua metode untuk konfigurasi otentikasi peer-to-peer : •
Pre-shared Key (PSK) –
sebuah pre-shared secret key
dimasukkan kedalam setiap peer secara manual dan digunakan untuk membuktikan (otentikasi) peer tersebut. Setiap peer harus memastikan setiap penerima sebelum tunnel dianggap aman. •
RSA Signatures – Pertukaran sertifikat digital mengotentikasikan peers.
Perangkat
lokal
membawa
sebuah
hash
dan
mengenkripsinya menggunakan private key. Hash yang telah terenkripsi dilampirkan ke dalam pesan dan diteruskan ke penerima dan bertindak seperti sebuah signature. Pada penerima, hash yang terenkripsi akan didekripsikan menggunakan public key. Jika hasil dekripsi hash sama dengan hash awal, maka signature tersebut asli. Setiap peer memastikan setiap penerima sebelum tunnel dianggap aman.
45
•
Secure Key Exchange Algoritma enkripsi seperti DES, 3DES, dan AES serta algoritma hashing
MD5 dan SHA-1 memerlukan sebuah simetrik yaitu shared secret key untuk melakukan enkripsi dan dekripsi. E-mail, courier, atau overnight express dapat digunakan untuk mengirimkan shared secret keys kepada administrator, tetapi metode pertukaran kunci paling mudah adalah dengan metode pertukaran public key antara perangkat enkripsi dan dekripsi. Kunci Diffie-Hellman (DH) adalah metode pertukaran public key yang menyediakan sebuah cara bagi dua peer untuk membuat shared secret key yang hanya diketahui oleh kedua peer tersebut, meskipun kedua peer tersebut melakukan komunikasi di saluran yang tidak aman. Variasi dari algoritma pertukaran kunci DH, dikenal sebagai kelompok DH. Terdapat empat kelompok DH, yaitu 1, 2, 5, dan 7. •
Kelompok DH 1, 2, dan 5 mendukung eksponensiasi melalui sebuah modulus utama dengan ukuran kunci masing-masing 768 bits, 1024 bits, dan 1536 bits.
•
Klien Cisco 3000 mendukung kelompok DH 1, 2, dan 5. Enkripsi DES dan 3DES mendukung kelompok DH 1 dan 2.
•
Enkripsi AES mendukung kelompok DH 2 dan 5.
•
Klien Certicom movianVPN mendukung kelompok DH 7.
46
•
Kelompok 7 mendukung adanya Elliptical Curve Cryptography (ECC), yang dapat mengurangi waktu yang dibutuhkan untuk menghasilkan kunci.
2.7.1 IPSec Security Protocol IPSec merupakan framework (kerangka kerja) standar terbuka. IPSec menguraikan pesan untuk mengamankan komunikasi, tetapi bergantung pada algoritma yang ada. Dua protokol framework utama IPSec adalah AH dan ESP. Pemilihan dari salah satu protokol tersebut berpengaruh pada blok framework lain yang tersedia : ¾ Authentication Header (AH) Authentication Header (AH), yang merupakan protokol IP 51, adalah protokol yang sesuai untuk digunakan ketika confidentiality (kerahasiaan) tidak diperlukan atau diizinkan. Hal ini memastikan bahwa data berasal dari sumber dan memverifikasi data tersebut tidak berubah selama masa transit. AH tidak menyediakan kerahasiaan data (enkripsi) dari paket tersebut. Seluruh data yang berupa teks dikirim tanpa di enkripsi. Jika hanya menggunakan protokol AH, maka protokol tersebut hanya memberikan perlindungan yang lemah. ¾ Encapsulating Security Payload (ESP) Encapsulating Security Payload (ESP), yang merupakan protocol IP 50, dapat menyediakan confidentiality (kerahasiaan) dan authentication (otentikasi). Protokol ini menyediakan kerahasiaan dengan melakukan
47
enkripsi pada paket IP. Enkripsi paket IP menyembunyikan muatan dan identitas data dari sumber dan tujuan utama. ESP menyediakan otentikasi untuk isi dari paket IP dan ESP header. Otentikasi menyediakan sumber otentikasi dan integritas data. Meskipun enkripsi dan otentikasi merupakan pilihan pada ESP, tetapi salah satu dari kedua hal tersebut harus dipilih. ESP dan AH dapat diterapkan untuk paket IP dalam dua mode yang berbeda, transport mode dan tunnel mode : o Transport Mode Keamanan disediakan hanya untuk transport layer ke atas dari model OSI. Transport mode melindungi muatan data dari paket tetapi meninggalkan alamat IP asli dalam plaintext. Alamat IP asli digunakan untuk mengarahkan paket melalui internet. ESP tranport mode digunakan antar host. Transport mode bekerja baik dengan GRE, karena GRE menyembunyikan alamat penerima dengan menambahkan IP dirinya sendiri. o Tunnel Mode Tunnel Mode menyediakan keamanan untuk paket IP lengkap yang asli. Paket IP yang asli dienkripsi dan kemudian dirumuskan dalam paket IP yang lain. Alamat IP pada paket IP luar digunakan untuk mengarahkan paket melalui internet. ESP tunnel mode digunakan antara host dan gateway keamanan atau antara dua gateway keamanan.
48
•
Authentication Header (AH) AH mencapai keaslian data dengan menerapkan fungsi hash satu arah pada paket untuk membentuk sebuah hash atau intisari pesan. Hash tersebut dikombinasikan dengan teks dan ditransmisikan. Penerima mendeteksi perubahan pada setiap bagian dari paket yang terjadi selama transit dengan melakukan fungsi hash satu arah yang sama pada paket yang diterima dan membandingkan hasilnya dengan nilai dari intisari pesan yang dikirimkan oleh pengirim. Kenyataannya bahwa fungsi hash satu arah juga melibatkan shared secret key diantara dua sistem tersebut yang berarti keaslian data terjamin.
Gambar 2.13 – Protokol AH
Proses AH terjadi dalam urutan sebagai berikut: 1. IP header dan muatan data di-hash menggunakan shared secret key. 2. Hash membangun sebuah AH header baru, yang dimasukkan kedalam paket yang asli.
49
3. Paket yang baru ditransmisikan ke IPSec peer router. 4. Peer router melakukan hash terhadap IP header dan muatan data menggunakan shared secret key dan membandingkan kedua hash tersebut. Kedua hash tersebut harus sama persis. Jika satu bit berubah selama masa paket ditransmisikan, maka hasil hash pada paket yang diterima berubah dan AH header tidak akan cocok.
Gambar 2.14 – Proses AH
•
Encapsulating Security Payload (ESP) ESP menyediakan kerahasiaan dengan mengenkripsi muatan data. Jika ESP dipilih sebagai protocol IPSec, sebuah algoritma enkripsi juga harus dipilih. Algoritma enkripsi yang biasanya digunakan untuk IPSec adalah 56-bit DES. ESP juga menyediakan integritas dan otentikasi.
50
Muatan data dienkripsi dan dikirim melalui algoritma hash, HMAC-MD5 atau HMAC-SHA-1. ESP juga menyediakan proteksi anti-replay. Proteksi tersebut memverifikasi bahwa setiap paket adalah unik dan tidak dapat diduplikasi. Proteksi ini membuat para hacker tidak dapat mencegah paket dan memasukkan paket untuk mengubah aliran data. Tujuan memverifikasi bahwa jumlah urutan paket tidak diduplikasi dan diterima dalam urutan yang benar. Proteksi ini juga didukung di AH.
Gambar 2.15 – Protokol ESP
Data asli dilindungi oleh ESP karena seluruh datagram IP asli dan trailer ESP dienkripsi. Dengan otentikasi ESP, IP datagram dan trailer dienkripsi, dan header ESP, termasuk dalam proses hashing. Terakhir, sebuah IP header ditambahkan dalam muatan data yang terotentikasi.
51
Alamat IP yang baru digunakan untuk mengarahkan paket data melalui internet. Ketika otentikasi dan enkripsi dipilih, enkripsi dilakukan terlebih dahulu. Alasan untuk urutan proses ini adalah bahwa hal tersebut memfasilitasi pendeteksian yang cepat dan penolakan terhadap paket yang diduplikasi atau paket yang palsu oleh perangkat penerima. Sebelum mendekripsi paket, penerima dapat mengotentikasi paket yang akan datang. Dengan melakukan hal tersebut, maka dapat mendeteksi masalah dengan cepat dan berpotensi mengurangi dampak serangan DoS.
Gambar 2.16 – Proses ESP
52
2.8 Internet Key Exchange Solusi IPSec VPN memerlukan parameter pertukaran kunci, menentukan shared key, mengotentikasi peer, dan negosiasi parameter kunci enkripsi. Negosiasi antara kedua parameter kunci enkripsi dikenal juga dengan Security Association (SA). Security Associations (SA) merupakan sebuah blok framework dari IPSec. Security Association diatur di dalam SA Database (SADB), yang ditentukan disetiap perangkat. Sebuah VPN memiliki entri SA yang mendefinisikan parameter kunci enkripsi dan parameter pertukaran kunci. Semua sistem kriptografi, termasuk Caesar cipher, Vigenere cipher, Enigma machine, untuk algoritma enkripsi modern, harus menggunakan manajemen kunci. Diffie-Hellman (DH) digunakan untuk membuat shared secret key. Namun, IPSec menggunakan protokol Internet Exchange Key (IKE) untuk menetapkan proses pertukaran kunci. IKE menghitung shared keys berdasarkan pada pertukaran dari serangkaian paket data. Hal ini melarang pihak ketiga untuk mendekripsikan kunci bahkan jika pihak ketiga menangkap semua pertukaran data yang digunakan untuk menghitung kunci. IKE berada pada lapisan UDP dan menggunakan UDP port 500 untuk pertukaran informasi IKE antar security gateway. IKE didefinisikan dalam RFC 2409 yang menggabungkan Internet Security Association and Key Management Protocol (ISAKMP) dan metode pertukaran kunci Oakley and Skeme. Oakley dan Skeme memiliki kelompok kunci, router cisco mendukung kelompok 1 (kunci 768bit), kelompok 2 (kunci 1024-bit) dan kelompok 5 (kunci 1536-bit). IKE menggabungkan protokol tersebut untuk membangun koneksi yang aman antara
53
perangkat IPSec. Setiap perangkat harus memiliki ISAKMP dan parameter IPSec yang identik untuk mendirikan sebuah VPN operasional dan aman. Untuk mendirikan sebuah saluran komunikasi yang aman antara dua peer, protokol IKE mengeksekusi dua fase : •
Phase 1 – dua peer IPSec melakukan negosiasi awal SA. Tujuan dasar dari tahap 1 adalah untuk menetapkan kebijakan IKE, otentikasi peer, dan membangun saluran yang aman antar peer.
•
Phase 2 – SA dapat dinegosiasikan oleh IKE untuk memproses ISAKMP pada IPSec.
Gambar 2.17 – IKE phase 1 dan IKE phase 2
Tiga pertukaran terjadi dalam IKE phase 1 : •
Pertukaran pertama antara pengirim dan penerima menetapkan kebijakan keamanan dasar. Peers bernegosiasi dan menyetujui algoritma dan hash yang digunakan untuk mengamankan komunikasi IKE. Pengirim mengirimkan usulan untuk skema enkripsi dan otentikasi yang akan digunakan. Penerima mencari kebijakan ISAKMP yang cocok dan
54
memilih usulan yang paling cocok untuk situasi keamanan dan kemudian mengirimkan usulan tersebut kepada pengirim. Jika kebijakan tersebut ditemukan antara peer, IKE tahapn 1 diteruskan. Jika kebijakan tidak ditemukan, maka terowongan tersebut dibatalkan.
Gambar 2.18 – Pertukaran pertama pada IKE phase 1
•
Pertukaran kedua menciptakan dan menukarkan kunci public DH antara dua penerima. DH memungkinkan dua pihak yang saling tidak mengetahui satu sama lain untuk menentukan shared secret key melalui saluran komunikasi yang tidak aman. Dua peer menjalankan protokol pertukaran kunci DH untuk memperoleh kunci yang dibutuhkan
oleh berbagai
enkripsi dan algortima hash. Beberapa tingkat pertukaran kunci DH yang tersedia di IOS Cisco : 1. DH kelompok 1 – menghasilkan kunci 768 bit. Kelompok ini merupakan pilihan yang biasa dipakai apabila algoritma enkripsi yang digunakan adalah DES.
55
2. DH kelompok 2 – menghasilkan kunci 1024 bit. Kelompok ini merupakan pilihan yang biasa dipakai apabila algoritma enkripsi yang digunakan adalah 3DES. 3. DH kelompok 5 – menghasilkan kunci 1536 bit. DH5 seharusnya digunakan dengan menggunakan AES. 4. DH kelompok 7 (elliptic curve cryptography [ECC]) – menghasilkan kunci IPSec ketika medan elliptic curve adalah 163 bit. Kelompok ini dirancang untuk digunakan dengan host bertenaga rendah seperti PDA.
Gambar 2.19 – Pertukaran kedua pada IKE phase 1
•
Pada pertukaran ketiga, setiap penerima harus mengotentikasi penerima lainnya sebelum jalur komunikasi dianggap aman. Pertukaran terakhir pada IKE phase 1 mengotentikasi remote peer. Inisiator dan penerima saling mengotentikasi satu sama lain dengan menggunakan salah satu dari tiga data sumber metode otentikasi, yaitu PSK, RSA signature, dan RSA encrypted nonce.
56
Gambar 2.20 – Pertukaran ketiga pada IKE phase 1
Sedangkan tujuan dari IKE phase 2 adalah untuk merundingkan parameter keamanan IPSec yang akan digunakan untuk mengamankan IPSec tunnel (terowongan). IKE phase 2 hanya dapat terjadi setelah IKE telah membentuk terowongan yang aman pada phase 1. SA dinegosiasikan IKE untuk memproses ISAKMP pada IPSec, yang membutuhkan kunci enkripsi untuk operasi tersebut. IKE phase 2 melakukan fungsi-fungsi sebagai berikut : •
Menegosiasikan parameter keamanan IPSec, yang dikenal sebagai IPSec transform sets.
•
Menetapkan IPSec SA.
•
Melakukan negosiasi ulang IPSec SA secara berkala untuk menjamin keamanan.
•
Melakukan penambahan pertukaran DH secara opsional.
57
2.9 ISAKMP Internet Security Association Key Management Protocol (ISAKMP) menjelaskan prosedur dan format paket untuk bernegosiasi, membangun, memodifikasi, dan menghapus Security Association (SA). ISAKMP menyediakan framework umum untuk format atribut SA dan metodologi untuk negosiasi, modifikasi, dan menghapus SA yang menggunakan protokol pertukaran kunci yang berbeda. ISAKMP dirancang untuk menjadi kunci pertukaran yang independen, tidak bergantung ke protokol pertukaran kunci manapun, atau tidak terikat pada algoritma kriptografi, teknik pembuatan (generate) kunci, atau mekanisme otentikasi. ISAKMP
menyediakan
elemen
jaringan
dengan
kemampuan
untuk
berkomunikasi antar peer secara fungsi mendukung atribut keamanan yang umum. UDP dan TCP port 500 sudah disediakan (reserved) untuk ISAKMP oleh Internet Assigned Number Authority (IANA), organisasi yang bertanggung jawab untuk mengatur nomor protokol dan layanan lainnya.