SISTEM KEAMANAN PADA STATIC PORT DALAM JARINGAN
MENGGUNAKAN METODE PORT KNOCKING
Teza Lesmana
Program Studi Teknik Informatika Sekolah Tinggi Teknik Harapan Jl.HM Joni No. 70 Medan
Email : [email protected]
Abstrak
Teknologi informasi saat ini yang selalu berubah, menjadikan keamanan suatu informasi sangatlah penting. Banyak serangan sering dilakukan pada port-port static yang dalam keadaan terbuka, sehingga nantinya akan membuat orang-orang yang tidak mempunyai hak akses maupun yang tidak berkepentingan dapat dengan mudah mengendalikan port-port static. Dalam mengatasi serangan pada port-port static, salah satunya adalah dengan menggunakan metode Port Knocking. Pada dasarnya cara kerja Port Knocking adalah menutup semua port yang ada, dan hanya user tertentu saja yang dapat mengakses sebuah port yang telah ditentukan, yaitu dengan cara mengetuk terlebih dahulu. Hacker yang mampu menyerang melalui port biasanya ingin membobol sebuah server mail, server data, maupun server web pada sebuah perkantoran, maka dari itu pengimplementasian sistem keamanan jaringan komputer dengan menggunakan metode Port Knocking untuk mengamankan serangan pada server linux ubuntu.
Kata Kunci : Port Static, Port Knocking, Keamanan Jaringan, Linux Ubuntu
Abstract
Technology information nowadays is always changing, making information security is very important. Many attacks are often carried out on static ports that open, so that will make people who do not have access and who are not interested can easily control the static ports. In addressing the attacks on static ports, one of which is by using Port Knocking. Basically how the Port Knocking is closing all ports, and only certain users can access a port that has been determined, that is by knocking first. Hackers were able to invade through the port normally want to break into a mail server, data server, and web server in an office, and therefore the implementation of computer network security system using the method to secure attacks Port Knocking on Ubuntu Linux Server.
Keywords: Static Port, Port Knocking, Network Security, Linux Ubuntu
1. Pendahuluan
Dengan Pesatnya perkembangan teknologi saat ini membuat teknologi sangat berperan penting dalam kehidupan kita saat ini. Seiring dengan perkembangan teknologi Informasi saat ini yang selalu berubah, menjadikan keamanan suatu informasi sangatlah penting. Banyak serangan sering dilakukan pada port-port yang dalam keadaan terbuka, sehingga nantinya akan membuat orang-orang yang tidak mempunyai hak akses maupun yang tidak berkepentingan dapat dengan mudah mengendalikan port-port yang telah ia masuki. Maka untuk melakukan keamanan pada jaringan komputer dalam mengatasi serangan pada port-port, salah satunya adalah dengan menggunakan metode Port Knocking. [1]
Port Knocking merupakan suatu sistem keamanan yang di buat secara khusus untuk sebuah jaringan. Pada dasarnya cara kerja Port Knocking adalah menutup semua port yang ada, dan hanya user tertentu saja yang dapat mengakses sebuah
port yang telah ditentukan, yaitu dengan cara mengetuk terlebih dahulu. Berbeda dengan cara kerja dari firewall, cara kerja dari firewall adalah menutup semua port tanpa memperdulikan apapun meskipun user tersebut memiliki hak untuk mengakses port tersebut. Sehingga user yang memiliki hak akses tersebut juga tidak bisa untuk mengaksesnya. Banyak serangan seperti Hacker yang mampu menyerang melalui port untuk membobol sebuah server mail, server data, maupun server web pada sebuah perkantoran. Sehingga bisa menimbulkan sebuah kerusakan data yang dapat mengganggu operasional sebuah kantor.
Dalam penulisan ini, penulis mendapatkan banyak referensi dari berbagai sumber dalam bentuk jurnal yang diambil melalui Internet. Penulis mencoba mengimplementasikan sistem keamanan jaringan komputer dengan menggunakan metode Port Knocking untuk mengamankan serangan pada server.
2. 1 Sistem Keamanan Jaringan Komputer Keamanan Jaringan Komputer adalah proses untuk mencegah dan mengidentifikasi penggunaan yang tidak sah dari jaringan komputer. Langkah-langkah pencegahan membantu menghentikan pengguna yang tidak sah yang disebut “penyusup” untuk mengakses setiap bagian dari sistem jaringan komputer. Tujuan/keamanan jaringan komputer adalah untuk mengantisipasi resiko jaringan komputer berupa bentuk ancaman fisik maupun logik baik langsung ataupun tidak langsung mengganggu aktivitas yang sedang berlangsung dalam jaringan komputer.[2]
Jika diamati mengenai keamanan maka keamanan jaringan komputer dapat ditinjau dari segi bentuknya yaitu seperti berikut:
1. Keamanan Hardware (Perangkat Keras) Keamanan hardware berkaitan dengan perangkat keras yang digunakan dalam jaringan komputer. Keamanan hardware sering dilupakan padahal merupakan hal utama untuk menjaga jaringan agar tetap stabil. Dalam keamanan hardware, server dan tempat penyimpanan data harus menjadi perhatian utama. Akses secara fisik terhadap server dan data-data penting harus dibatasi semaksimal mungkin. Akan lebih mudah bagi pencuri data untuk mengambil harddisk atau tape backup dari server dan tempat penyimpanannya daripada harus menyadap data secara software dari jaringan. Sampah juga harus diperhatikan karena banyak sekali hacker yang mendatangi tempat sampah perusahaan untuk mencari informasi mengenai jaringan komputernya. Salah satu cara mengamankan hardware adalah menempatkan di ruangan yang memiliki keamanan yang baik.
2. Keamanan Software (Perangkat Lunak) Sesuai dengan namanya, maka yang harus diamankan adalah perangkat lunak. Perangkat lunak yang kita maksud disni bisa berupa sistem operasi, sistem aplikasi, data dan informasi yang tersimpan dalam komputer jaringan terutama pada server. Contohnya, jika server hanya bertugas menjadi router, tidak perlu software web server dan FTP server diinstal. Membatasi software yang dipasang akan mengurangi konflik antar software dan membatasi akses, contohnya jika router dipasangi juga dengan FTP server, maka orang dari luar dengan login anonymous mungkin akan dapat mengakses router tersebut.
Software yang akan diinstal sebaiknya juga memiliki pengaturan keamanan yang baik. Kemampuan enkripsi (mengacak data) adalah spesifikasi yang harus dimiliki oleh software yang akan digunakan, khususnya enkripsi 128 bit karena enkripsi dengan sistem 56 bit sudah dapat dipecahkan dengan mudah saat ini. Beberapa software yang memiliki lubang keamanan seperti mail server, send mail dan aplikasi telnet. Sendmail memilliki kekurangan yaitu dapat di telnet tanpa
login di port 25 dan pengakses dapat membuat email dengan alamat palsu. Aplikasi telnet memiliki kekurangan mengirimkan data tanpa mengenkripsinya (mengacak data) sehingga bila dapat disadap akan sangat mudah untuk mendapatkan data.
Hal kedua yang perlu diperhatikan adalah password. Sebaiknya diset panjang password untuk mempersulit hacker memecahkan password. Password juga akan semakin baik jika tidak terdiri huruf atau angka saja, huruf kecil atau kapital semua, namun sebaiknya di kombinasi. Enkirpsi dapat menambah keamanan jaringan dengan cara mengacak password dan user name, baik dalam record di host maupun pada saat password dan username itu dilewatkan jaringan saat melakukan login ke komputer lain.
2.2 Port dan Jenis-Jenisnya
Port adalah mekanisme yang mengizinkan sebuah komputer untuk mendukung beberapa sesi koneksi dengan komputer lainnya dan program di dalam jaringan. Port dapat mengidentifikasikan aplikasi dan layanan yang menggunakan koneksi di dalam jaringan TCP/IP. [3]
Sehingga, port juga mengidentifikasikan sebuah proses tertentu di mana sebuah server dapat memberikan sebuah layanan kepada klien atau bagaimana sebuah klien dapat mengakses sebuah layanan yang ada dalam server. Port dapat dikenali dengan angkat 16-bit (dua byte) yang disebut dengan Port Number dan diklasifikasikan dengan jenis protokol transport apa yang digunakan ke dalam Port TCP dan Port UDP. Karena memiliki angka 16-bit, maka total maksimum jumlah port untuk setiap protokol transport yang digunakan adalah 65536 buah.
2.3 TCP / IP dan Fungsinya
TCP/IP (Singkatan dari Transmission Control Protocol/Internet Protocol) adalah standar komunikasi data yang digunakan oleh komunitas internet dalam proses tukar-menukar data dari satu komputer ke komputer lain di dalam jaringan Internet. Protokol ini tidaklah dapat berdiri sendiri, karena memang protokol ini berupa kumpulan protokol (protocol suite). Protokol ini juga merupakan protokol yang paling banyak digunakan saat ini. Data tersebut diimplementasikan dalam bentuk perangkat lunak (software) di sistem operasi. Istilah yang diberikan kepada perangkat lunak ini adalah TCP/IP stack.
Fungsi TCP adalah bertanggung jawab untuk mengadakan komunikasi antara dua host/komputer. Sedangkan fungsi IP adalah untuk menyampaikan paket data ke alamat yang tepat. Sedangkan fungsi IP adalah untuk menyampaikan paket data ke alamat yang tepat.
2.4 Aplikasi Zenmap
Zenmap adalah aplkasi multi platform sebagai interface sederhana untuk aplikasi nmap. Nmap (Network Mapper) sendiri adalah sebuah aplikasi open source untuk explorasi network dan audit keamanannya. Nmap bekerja dengan melakukan scan terhadap komputer (host) stand alone ataupun host yang terhubung dalam sebuah jaringan, menentukan host-host yang aktif dalam suatu jaringan, menentukan informasi sistem operasi, port-port yang terbuka dan jenis firewall yang digunakan. [4]
2.5 Putty
Putty adalah sebuah program open source yang dapat kita gunakan untuk melakukan protokol jaringan SSH, Telnet dan Rlogin. Protokol ini dapat digunakan untuk menjalankan sesi remote pada sebuah komputer melalui sebuah jaringan, baik itu LAN, maupun internet. Program ini banyak digunakan oleh para pengguna komputer tingkat menengah ke atas, yang biasanya digunakan untuk menyambungkan, mensimulasi, atau mencoba berbagai hal yang terkait dengan jaringan. Program ini juga dapat kita gunakan sebagai tunnel dalam suatu jaringan. [5]
2.6 Aplikasi Knockd
Knockd adalah aplikasi pengetukan port pada server. Aplikasi ini mampu melacak semua lalu lintas pada sebuah jaringan antarmuka Ethernet, mencari urutan “ketukan” khusus pada lubang port. Komputer klien membuat lubang port ini dengan cara mengirimkan sebuah paket TCP(Transmission Control Protocol) ke port pada sebuah server. Port ini harus pada posisi yang terbuka, karena knockd memperhatikan batas lapisan pada suatu link, aplikasi ini memantau seluruh jalur bahkan untuk port yang tertutup sekalipun. Ketika komputer server mendeteksi urutan ketukan port tertentu, aplikasi ini menjalankan perintah yang ditentukan dalam file konfigurasinya. Aplikasi ini bisa digunakan untuk menjebol firewall dengan akses yang cepat. [6] 2.7 Perbedaan VPN Dengan Port Knocking
VPN merupakan singkatan dari Virtual Private Network yaitu sebuah koneksi private melalui jaringan publik (internet), yaitu:
1. Virtual Network, yang berarti jaringan yang terjadi hanya bersifat virtual. Tidak ada koneksi jaringan secara riil antara 2 titik yang akan berhubungan.
2. Private, jaringan yang terbentuk atau bersifat private dimana tidak semua orang bisa mengaksesnya. Data yang dikirimkan terenkripsi sehingga tetap rahasia meskipun melalui jaringan public.
VPN memang teknologi yang selama ini digunakan untuk membangun koneksi yang bersifat
private dari mana saja diseluruh dunia. Salah satu media yang digunakannya adalah Internet. Melalui VPN, tetap dapat terkoneksi dengan server-server di kantor pusat meskipun tengah berada di luar kota maupun di luar negeri, asalkan ada koneksi internet.[7]
3. Analisis Sistem
Analisis dilakukan untuk memecahkan suatu masalah menjadi komponen-komponen yang lebih kecil untuk mengidentifikasi atau mengevaluasi masalah yang ditemui serta kebutuhan yang diharapkan sehingga nantinya dapat diusulkan perbaikan-perbaikannya. Analisis sistem dapat dijelaskan mulai dari analisis sistem, analisis kebutuhan perangkat lunak dan perangkat simulasi jaringan.
3.1 Perancangan Simulasi Jaringan
Perancangan simulasi sistem keamanan pada static port menggunakan metode port knocking memerlukan 1 buah modem wireless dan 2 laptop, yang mana satu sebagai penyerang dan satu lagi sebagai server. Dapat dilihat melalui desain berikut ini.
Modem Wireless BOLT 192.168.1.1
Server Client
IP Address : 192.168.1.10 IP Address : 192.168.1.88 Subnet Mask : 255.255.255.0 Subnet Mask : 255.255.255.0 Default Gateway : 192.168.1.1 Default Gateway: 192.168.1.1
Gambar 1 Desain Jaringan
Berdasarkan gambar 3.1 desain jaringan akan di jelaskan perangkat-perangkat yang digunakan dalam perancangan jaringan. Adapun penjelasannya sebagai berikut:
1. Internet : Jaringan Internet ditangkap oleh sinyal Bolt
2. Modem Wireless BOLT :Modem membagi Jaringan Internet ke laptop server dan client
3. Server : Server mengamankan
serangan terhadap port Xampp
4. Client : Client melakukan
serangan port Xampp pada server.
3.2 Topologi Jaringan Pengetukan Port
Topologi Jaringan di bawah ini merupakan cara pengetukan port yang dilakukan oleh client/administrator untuk bisa mengakses port 3306/ MySQL pada server menggunakan aplikasi nmap yang berfungsi sebagai scanner port yang terbuka. Program knockd yang terpasang pada server melakukan identifikasi pada IP Address Client/Administrator apakah IP tersebut diizinkan untuk memasuki port yang ingin di akses atau tidak.
Gambar 2 Topologi Jaringan Port Knocking 3.3 Flowchart
Flowchart merupakan bagan alir yang menerangkan sistematika kerja pada sebuah sistem yang berjalan, disini saya menerangkan sistematika kerja port knocking pada sebuah server yang bisa kita lihat seperti di bawah ini.
Gambar 3 Flowchart Port Knocking Penjelasaan Flowchart
1. Program dimulai dengan pengetukan dari client 2. Apakah IP address client terdaftar di dalam list
a. Jika Ya apakah sequence ketukan sesuai b. Jika Tidak kita masukkan IP Address client
dalam list
3. Sequence akan di periksa, apakah ketukan port nya sesuai atau tidak
a. Jika Sesuai maka port 3306/layanan MySQL akan terbuka
b. Jika tidak Port 3306 akan tertutup. 4. Program Berakhir
4. Implementasi dan Pengujian
Dalam mengimplementasikan sistem keamanan pada port static menggunakan metode port knocking, saya melakukan instalasi aplikasi knockd dan xampp pada Linux Ubuntu Server Desktop. Aplikasi knockd akan memblokir penyerang yang ingin memasuki port yang kita
Tidak Ya Tidak T i d a k Ya Ya Menutup Port 3306/ Layanan MySqL START
Ketukan Port dari Client
Ip Address ada dalam
List ?
Memasukkan Ip Address client dalam
List
Apakah Sequence Ketukan Sesuai
Pengecekan Squence Ketukan port untuk membuka/menutup port 3306 Membuka Port 3306/Layanan MySQL END Tidak Port 3306
Modem Wireless Bolt 192.168.1.1 IP Address : 192.168.1.10 Subnet Mask : 255.255.255.0 Default Gateway : 192.168.1.1 IP Address : 192.168.1.23 Internet Attacker Port Knocking Program X Firewall SERVER Static Port Client / Administrator IP Address : 192.168.1.88 Subnet Mask : 255.255.255.0 Default Gateway : 192.168.1.1
amankan. sedangkan xampp sebagai aplikasi yang diamankan portnya.
Aplikasi yang digunakan pada client/administrator adalah Nmap dan Putty. Zenmap (Nmap/network mapping) berfungsi sebagai scanner port yang aktif, sedangkan Putty sebagai terminal antara 2 operating system yang berbeda.
4.1 Pengujian Tanpa Metode Port Knocking
` Pada bagian ini penulis akan membuat suatu pengujian tanpa menggunakan metode port knocking, bahan penghujiannya adalah menggunakan perintah ping dan nmap. Pertama sekali saya akan menunjukkan script knockd yang membuktikan bahwa port yang saya amankan masih terbuka dengan bebas untuk diakses yaitu dengan gambar seperti di bawah ini.
Gambar 4 Script Port Knockd Terbuka Kemudian saya akan melakukan test ping antara client dan server. IP yang saya gunakan pada server adalah 192.168.1.10 yang akan saya tuju pada IP client 192.168.1.88 seperti yang terlihat dibawah ini.
Gambar 5 Ping ke client
Saya juga akan melakukan test ping dari client ke server untuk memastikan bahwa kedua komputer saling terkoneksi dengan lancar seperti yang terlihat di bawah ini.
Gambar 6 Ping ke Server
Dari Ping antara server dan client tersebut dapat kita ketahui bahwa port masih bisa kita akses karena masih menunjukkan adanya reply antara keduanya. Dan juga bisa kita ketahui dengan memakai aplikasi Zenmap dengan memasukkan IP Address milik server yaitu 192.168.1.10 kemudian klik Scan pada Profile Intense Scan seperti yang terlihat pada gambar di bawah ini.
Gambar 7 Nmap menscan Server dalam keadaan port yang terbuka
Pada keterangan gambar di atas dapat kita ketahui bahwa proses penyerangan atau penyusupan pada port dapat dilakukan oleh komputer penyerang (Attacker).
4.2 Pengujian Menggunakan Metode Port Knocking
Pertama saya matikan dulu firewall yang ada pada server agar penyerangan bisa dilakukan, caranya ialah dengan membuka terminal, ketikkan
sudo ufw default deny incoming kemudian tekan enter, maka firewall akan mati pada server.
Gambar 8 Firewall Mati pada Server Pada tahap ini saya ingin menjelaskan bahwa port yang saya amankan adalah port 80, 3306 cara mengubah port pada openSSH dilakukan di sequence, untuk merubah angka tersebut kita tekan pada keyboard huruf s+ nomor yang kita inginkan untuk dijadikan port yang diamankan sebagai catatan pada openSSH kita harus menginputkan port yang terkecil terlebih dahulu kemudian port yang memiliki angka terbesar, begitu juga sebaliknya pada closeSSH kita harus menginputkan port yang terbesar dahulu kemudian port yang terkecil. Seperti yang terlihat pada gambar di bawah ini.
Gambar 9 Penginputan Port pada Knockd Kita lakukan perubahan angka 0 pada START_KNOCKD menjadi START KNOCKD=1 dengan cara menekan A+1 pada angka 0, maka angka 0 akan berubah menjadi 01, kita hilangkan angka 0 nya dengan menekan tombol delete, maka akan muncul tampilan seperti di bawah ini:
Gambar 10 Settingan Penutupan Port pada Knockd
Kita lakukan pengujian dengan melakukan test ping pada server di komputer client, maka kita akan menemukan bahwa host tujuan tidak menunjukkan reaksi seperti yang terlihat di bawah ini
Gambar 11 Test Ping pada Server Kita juga bisa melakukan pengecekan bahwa port yang telah kita kunci tidak dapat diakses oleh client dapat ditunjukkan pada aplikasi Putty, pertama kita harus mengisikan IP Address milik server yaitu 192.168.1.10 kemudian kita ketikkan angka 80 pada port.
Gambar 12 Test Port pada Putty Selanjutnya kita tekan enter seperti yang terlihat dibawah ini. Kita mendapatkan pemberitahuan bahwa Network error Connection refused, yang berarti Jaringan error Koneksi ditolak, yang berarti port yang kita tuju telah terkunci dengan baik oleh server.
Gambar 13 Akses Port Menggunakan Putty Gagal
Saya juga melakukan pengujian menggunakan Zenmap, pertama kita masukkan IP Server 192.168.1.10 pada kolom Target, kemudian Scan pada Profile Intense Scan maka akan muncul gambar seperti dibawah ini, dari situ kita bisa melihat bahwa port server tidak dapat ditangkap oleh aplikasi Zenmap.
Gambar 14 Zenmap Scanning Server Kondisi
Port Tertutup
Jadi bisa disimpulkan bahwa sistem keamanan menggunakan port knocking ini termasuk sistem keamanan yang cukup aman digunakan pada server untuk mengamankan port-port yang sebelumnya terbuka agar tidak bisa di akses oleh orang yang tidak berkepentingan. 5. Penutup
5.1 Kesimpulan
Berdasarkan pengujian mengenai metode port knocking penulis dapat mengambil kesimpulan:
1. Sistem keamanan pada port static dapat mencegah serangan dari luar seperti ping of death dan nmap/ port scanner.
2. Untuk pengamanan metode port knocking aplikasi knockd sudah cukup baik dalam mengamankan port static.
3. Jaringan yang di bangun merupakan jaringan yang bersifat client-server 4. Aplikasi knockd hanya bisa diakses di PC
server, dan tidak bisa diakses dari PC client.
5.2 Saran
1. Pengembangan selanjutnya pada pengamanan port static dengan metode port knocking bisa dikembangkan lagi menjadi lebih baik dengan aplikasi lain yang lebih baik.
2. Sistem keamanan port static dengan menggunakan metode port knocking diharapkan bisa berkembang dengan banyaknya aplikasi multi user
DAFTAR PUSTAKA
[1] Cahaya, Firman. 2011. Rancang Bangun
Sistem Keamanan Jaringan Komputer
Dengan Menggunakan Metode Port
Knocking. Surabaya: Informatika.
[2] Widyastana, Ichsan. 2013. Simulasi Sistem
Routing Menggunakan Metode Routing Information Protocol Versi 1 (Ripv1) Pada Linux Debian. Medan: Informatika.
[3] Dini. 2015. Jenis Port Jaringan dan
Fungsinya.Pontianak.
[4] Sumawijaya,Budi. 2011. Simple Interface &
Result Viewer untuk Nmap. Tangerang: IT
Development Infotama Kreasindo.
[5] Subekti, Aji. 2014. Pengertian Putty dan
Kegunaannya: Bandung.
[6] Vinet, Judd. 2016. Knockd-a Port Knocking
Server. Kanada: Software Engineer.
[7] Sonrisa,Taufiq. 2016. Firewall Server
Dengan Metode Port Knocking. Makasar: