BAB I PENDAHULUAN
1.1
Latar Belakang Remote login seperti SSH sudah menjadi hal yang sering dilakukan oleh
seorang administrator jaringan untuk melakukan troubleshooting ataupun hanya memonitoring keadaan server suatu jaringan. Saat seorang administrator jaringan ingin melakukan SSH maka hal yang dilakukan yaitu mengakses port SSH (secara default port 22) dan melakukan login maka koneksi untuk SSH akan terjadi, dari hal tersebut dapat kita katakan bahwa port SSH ini sangatlah penting, karena dengan mengakses port ini, remote login SSH akan dapat dilakukan. Pada dasarnya Port SSH ini akan selalu terbuka untuk menerima koneksi dari luar agar dapat melakukan SSH, Dengan kondisi demikian dapatkah di katakakan server akan tetap aman ?sedangkan setiap orang yang tidak berkepentingan dapat mencoba melakukan koneksi SSH untuk masuk ke dalam server. Dalam perkembangan jaman, seorang hacker dapat menggunakan multithreading program untuk menjalankan program brute-force password yang dalam setiap detiknya saja dapat melakukan 1000 kali percobaan penebakan username dan password. Salah satu kasus penyerangan service SSH terjadi seperti yang dijelaskan pada situs http://www.shellperson.com, bahwa pada tanggal 10 april 2010 servernya telah berhasil dibobol melalui service SSH dengan cara melancarkan serangan Brute-Force Attack.
Serangan Brute-Force Attack ini
teridentifikasi ketika administarator jaringan tersebut melihat log otentikasi. Penyerang meninggalkan jejak berupa ribuan percobaan login yang tercatat di file log sistem yang tetdapat pada direktori /var/log.auth.log.1 seperti yang dijelaskan pada website tersebut. Dalam hal ini kita dapat menggunakan firewall untuk menutup port SSH yang selalu terbuka. Permasalahan yang muncul adalah jika kita menutup port SSH, maka secara otomatis komunikasi tidak akan dapat dilakukan dan koneksi SSH mustahil dapat dilakukan. Dengan mengkonfigurasi
firewall menggunakan Port Knocking, maka seorang administrator jaringan dapat mengatur buka tutup port dalam jaringan khususnya port SSH. Dengan mekanisme mengetuk beberapa port pada server SSH maka akan memicu terbukanya port SSH dan percobaan Brute-Force Attack dapat diatasi, dengan cara ini Port Knocking efektif untuk digunakan. Mekanisme pembukaan port knocing ini umumnya menggunakan beberapa urutan port yang telah ditentukan (statis) sebelumnya. Kita dapat memberikan pengamanan lebih terhadap Port Knocking ini, karena dengan menggunakan program sniffing paket data dalam jaringan, kita dapat memantau alur jaringan dan mencari urutan port yang sering diketuk, hal ini dapat menjadi celah jika terdeteksi oleh hacker. Salah satu dari solusi yang dapat kita terapkan yaitu dengan mengacak port yang akan diketuk, metode ini dapat kita sebut dengan nama Random Port Knocking. Random Port Knocking ini akan memberikan keamanan lebih kepada server karena sistem pengetukan port yang dilakukan secara random sehingga port yang diketuk untuk membuka port utama tidak akan mudah untuk termonitoring. Dengan mengacak beberapa port yang yang akan diketuk pada metode Random Port Knocking ini maka setiap port yang diketuk pada setiap sesinya akan berbeda – beda sehingga integiritas keamanan dapat lebih ditingkatkan.
1.2
Rumusan Masalah Berdasarkan latar belakang diatas, dapat dirumuskan permasalahan
Bagaimana melakukan pengacakan port dalam metode Random Port Knocking ini sehingga dapat mengamankan port SSH ?
1.3
Tujuan Tujuan dari penelitian ini yaitu mengamankan port SSH pada server
dengan menggunakan metode Random Port Knocking.
1.4
Batasan Masalah Agar penelitian lebih fokus, permasalahan yang ditinjau tidak terlalu luas
dan sesuai dengan maksud dan tujuan yang ingin dicapai. Batasan masalah penelitian ini antara lain : 1.
Tidak membahas keamanan paket data.
2.
Fokus penelitian ini yaitu kepada hasil pengacakan port menggunakan Linear Congruent Generators (LCG) yang akan digunakan pada metode Random Port Knocking untuk proses buka tutup port pada SSH.
3.
Aplikasi metode ini difokuskan pada port SSH (port 22).
4.
Penelitian ini dilakukan menggunakan media virtual menggunakan Virtual Machine dengan Sistem Operasi Ubuntu 12.04 LTS dan menggunakan bahasa pemrograman C.
1.5
Manfaat Adapun Manfaat penelitian ini yaitu diharapkan dengan metode Random
Port Knocking ini, dimana port yang akan diketuk akan di random diharapkan dapat lebih meningkatkan keamanan port SSH sehingga orang yang tidak berkewajiban/hacker tidak dapat melakukan Brute-Force Attack yang dapat mengakibatkan pembobolan server.
1.6
Metodelogi Penelitian Ilmu Komputer merupakan ilmu yang sangat kompleks, sedemikian
luasnya bidang ini sehingga penelitian dalam bidang ini juga menjadi demikian luasnya. Berbagai jurnal penelitiandalam bidang Ilmu Komputer menggunakan beberapa Metode. (Utami Ema,dkk : 2007) Menjelaskan bahwa, dari beberapa penelitian pada Ilmu Komputer terlihat bahwa penelitian di bidang ini dapat dikategorikan menjadi 2 (dua) yakni : a. Penelitian berfokus pada Metode Penelitian b. Penelitian berfokus pada suatu bidang area penelitian
Dapat Disimpulkan penelitian ini berfokus pada suatu bidang area penelitian. Metedologi penelitian ini akan menjelaskan langkah – langakah yang diambil dalam menggunakan Random Port Knocking dalam mengamankan port SSH.
1.7
Identifikasi Dan Perumusan Masalah Pada tahapan identifikasi dan perumusan masalah ini, penulis melakukan
pengumpulan data-data yang terkait dengan masalah yang dihadapi dalam penelitian. Dalam melakukan penelitian ini, metode pengumpulan data yang akan digunakan adalah metode observasi. Data dikumpulkan dengan mengadakan pengamatan langsungterhadap obyek yang diteliti. Dalam hal ini penulis mengidentifikasi terdapat celah keamanan pada port SSH yang selalu terbuka, maka dilakukan penelitian Random Port Knocking untuk meningkatkan keamanan padapengumpulan data dapat diperoleh dengan cara mengamati file log pada server, dengan hal tersebut dapat diamati port yang sering diserang. Dari data yang didapat barulah dapat diidentifikasi dan dirumuskan masalah terkait dengan penelitian ini. Dari perumusan masalah, dapat dirumuskan permasalahan yang akan ditemui yaitu bagaimana mengamankan port SSH dari serangan hacker atau attackeryaitu dengan menggunakan metode Random Port Knocking agar integritas keamanan pada remote server(SSH) dapat lebih ditingkatkan.
1.8
Desain Penelitian Dalam penelitian kali ini akan menggunakan algoritma Linear
Congruential Generator (LCG) yang merupakan salah satu teknik pengacakan dari metode Pseudo Random Number Generator. Objek dalam penelitian ini adalah pada pengacakan 3 buah port menggunakan Pseudo Random Number Generator. Dengan metode LCG ini port yang akan diketuk akan diacak dan selanjutnya akan dikirimkan kepada program client mengetuk port yang telah dirandom terlebih dahulu.
sehingga client
dapat
Desain penelitian ini akan digambarkan dengan tahap-tahap alur kerja programbeserta penjelasannya.Dalam Random Port Knocking ini menggunakan metode pengacakan port yang menggunakan Pseudo Random Number Generator (PRNG). Dimana urutan port yang akan diketuk diacak antara range 0 sampai 65.535 buah port. Seperti yang telah dijelaskan diatas, objek dari metode ini yaitu 3 buah port yang akan diacak untuk mendapatkan port sequence nya atau urutan portnya. Dengan mengacak urutan port ini membuat metode Random Port Knocking ini sangat aman, gambaran secara keseluruhan Random Port Knocking ini akan dijelaskan dibawah ini : 1. Tahap pertama client membuka program client yang berfungsi untuk ngirim TCP paket yang berisi data “minta” yang berguna untuk meminta 3 port acak yang akan diketuk nantinya kepada server. 2. Pada sisi server akan menerima kode permintaan 3 port acak. 3. Setelah menerima kode permintaan 3 port acak dari client kemudian dari sisi server ngirimkan 3 buah port acak tersebut ke sisi client 4. Setelah menerima 3 buah nomor port acak dari server, maka selanjutnya client akan mengetuk port sesuai dengan nomor-nomor port yang dikirimkan dari server tadi. Jika benar maka port SSH akan terbuka dan koneksi SSH dapat dilakukan. 5. Setelah port SSH pada server terbuka maka client dapat melakukan koneksi SSH seperti biasa pada terminal.
1.8.1
Skenario Pengujian Skenario pengujian merupakan salah hal yang penting dalam pelaksanaan
sebuah penelitian. Dengan adanya skenario pengujian, penelitian dapat berjalan sesuai dengan apa yang direncanakan dan diharapkan akan mendapatkan hasil yang sesuai. Dalam penelitian ini penulis menggunakan software atau tool pengujian sebagai berikut :
Nmap (Network Mapper ) Nmap merupakan sebuah tools open source untuk eksplorasi dan audit keamanan jaringan. Nmap bekerja sangat cepat melakukan scanner port pada jaringan, meskipun jaringan yang cukup besar. Dalam Nmap juga akan terlihat port-port dalam jaringan yang tertutup dan yang terbuka serta pemetaan jaringan dapat terlihat secara tepat pada Nmap. NetCat NetCat adalah sebuah utiliti tool yang digunakan untuk berbagai hal yang berkaitan dengan protokol TCP atau UDP. Yang dapat membuka koneksi TCP, mengirimkan paket-paket UDP, listen pada port -port TCP dan UDP, melakukan scanning port, dan sesuai dengan IPV4 dan IPV6. Proses-proses pengujiannya sebagai berikut : Jalankan program pada server dengan terlebih dahulu menutup port SSH lalu kita lakukan scanning port dengan menggunakan program Nmap, dari scanning tersebut akan terlihat port SSH terbuka atau tidak. Selanjutnya akan dilakukan pengujian yaitu melakukan pembukaan port dengan melakukan tahap-tahap Random Port Knocking. Skenario ini diawali dengan melakukan pengetukan port yang benar pada server dengan cara mengirimkan paket TCP menggunakan software NetCat, jika ketukan port benar, maka client
dapat terkoneksi SSH dengan server. Untuk
melakukan penutupan port SSH dilakukan dengan mengirimkan paket data TCP yang berisi kata “tutup” kepada server maka port SSH akan kembali tertutup.