makalah secure shell
Post on 10-Jan-2016
494 Views
Preview:
DESCRIPTION
TRANSCRIPT
-
i
SECURE SHELL
MAKALAH
Oleh
LUQMAN MUHAMMAD ZAGI 23214020
ARIFISAL 23214039
Program Studi Rekayasa Manajemen Keamanan Informasi
SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA
INSTITUT TEKNOLOGI BANDUNG 2014
-
ii
DAFTAR ISI
DAFTAR ISI ........................................................................................................................................ii
DAFTAR GAMBAR DAN TABEL ........................................................................................................ iv
Gambar ........................................................................................................................................ iv
Tabel ............................................................................................................................................ iv
BAB I PENDAHULUAN ..................................................................................................................... 1
I. 1 Latar Belakang dan Rumusan Masalah ................................................................................. 1
I.1.1 Latar Belakang ................................................................................................................. 1
I.1.2 Rumusan Masalah ........................................................................................................... 3
I.2 Batasan Masalah .................................................................................................................... 4
I.3 Tujuan dan Manfaat ............................................................................................................... 4
BAB 2 ISI .......................................................................................................................................... 5
2.1 Definisi ................................................................................................................................... 5
2.2 Cara Kerja SSH Secara Sederhana ......................................................................................... 5
2.3 SSH1 dan SSH2 ....................................................................................................................... 7
2.4 Protocol ................................................................................................................................. 7
2.5 Fase pada SSH ...................................................................................................................... 11
2.5.1 Connection Setup ......................................................................................................... 12
2.5.2 SSH Version Negotiation ............................................................................................... 12
2.5.3 Algorithm Negotiation .................................................................................................. 12
2.5.4 Key Exchange ................................................................................................................ 13
2.5.5 User Authentication ..................................................................................................... 13
2.5.6 Service Request ............................................................................................................ 15
2.5.7 Data Transmission and Connection Terdown .............................................................. 16
2.6 SSH Policy Issue ................................................................................................................... 16
2.7 Tujuan Utama Protokol SSH ................................................................................................ 17
-
iii
2.8 Public-Key Cryptography ..................................................................................................... 17
2.9 Port Fowarding .................................................................................................................... 19
KESIMPULAN DAN SARAN ............................................................................................................. 21
DAFTAR PUSTAKA ......................................................................................................................... 22
-
iv
DAFTAR GAMBAR DAN TABEL
Gambar
Gambar 1 CIA triad ......................................................................................................................... 2
Gambar 2 1 Proses kerja SSH .......................................................................................................... 6
Gambar 2 2SSH Protocol ................................................................................................................. 8
Gambar 2 3 User Authentication Process ..................................................................................... 14
Gambar 2 4 Port Fowarding .......................................................................................................... 20
Tabel
Tabel 2 1Contoh Pemilihan Algortima .......................................................................................... 13
Tabel 2 2 Algoritma Enkripsi SSH1 SSH2 ....................................................................................... 19
Tabel 2 3 Algoritma Otentikasi SSH1 dan SSH2 ............................................................................ 19
-
1
BAB I
PENDAHULUAN
I. 1 Latar Belakang dan Rumusan Masalah
I.1.1 Latar Belakang
Perkembangan masa kini perangkat elektronik di dunia berkembang pesat. Tentunya
perkembangan ini telah membawa manusia ke dunia digital. Semua device yang dimiliki
manusia mulai tersambung satu sama lain. Kemampuan device yang ada pun meningkat dengan
cepat. Kecepatan perkembangan ini di teliti oleh Gordon Moore dan terciptalah Moores Law.
Isi dari hukum ini adalah Setiap 18 bulan, kemampuan transistor pada tiap 1 inch diameter
silicon menjadi dua kali lipat (Strickland, 2009).
Perkembangan ini pula yang menyebabkan hampir semua peralatan mampu
melakakukan komputasi. Contoh paling nyata adalah smartwatch dan Smart Television.
Perkembangan ini membawa ke suatu era baru diamana semua device tersambung ke internet
sehingga memudahkan penggunanya dalam berbagai hal. Perlu nya koneksi ke internet ini lah
yang membuat berbagai pihak berusaha memgamankan saluran komunikasi.
Berbicara tentang aman, tentunya tidak dapat terlepas dari sebuah konsep yang
disebut dengan CIA triad. Menurut Stalling (Stalling, 2014), NIST standart FISP 199 (Standards
for security Categorization of Federal Information and Information Systems)
mengkarakteristikan tiga objektif yang diperlukan untuk suatu infomasi dianggap aman. Tiga
karakteristik itu adalah:
Confidentiality Pembatasan terhadap pengungkapan dan akses terhadap informasi,
termasuk melindungi privasi personal dan hak milik terhadap informasi tersebut.
Integrity Memepertahankan informasi terhadap modifikasi dan perusakan, termasuk
memastikan informasi tanpa penolakan dan ke otentikannya.
-
2
Availability Memastikan waktu dan keberadaan akses terhadap informasi.
Gambar 1 CIA triad
Pada awalnya, komunikasi dalam internet menggunakan Telnet. Teknologi ini dibuat
pada akhir 1960 dan digunakan untuk melakukan sambungan dan mengatur komputer dari
jarak jauh. Telnet juga merupakan basis dari protocol yang ada saat ini seperti File Transfer
Protocol (FTP) dan lain lain. Namun pada berjalannya waktu, didapatkan bahwa telnet tidaklah
aman untuk digunakan.
Kelemahan fatal pada telnet (Hangzou H3C Technologies Co., Ltd, 2009) ada tiga. Ketiga
kelemahan tersebut adalah:
1. Telnet melakukan transmisi data dengan plain text, dimana tidak ada proteksi terhadap
data yang ditransmisikan
-
3
2. Telnet menggunakan mekanisme tranditional password authentication dan
mentransmisikan informasi user otentikasi melalui network dengan plain text, sehingga
mudah diketahui oleh attacker menggunkan teknik eavesdropped.
3. Telnet Client tidak mampu mengidentifikasi Telnet Server sehingga attacker dengan
mudah melakukan server spoofing attack.
Menurut Daniel (Silverman, 2005), SSH di kembangkan oleh Tatu Ylnen, seorang
peneliti dari Helsinki University of technology Finlandia pada tahun 1995. Pada saat itu, jaringan
pada universitasnya terkena serangan Password Sniffing Attack.
Kelebihan SSh (Hangzou H3C Technologies Co., Ltd, 2009), adalah:
SSH mentransmisikan data dalam cipher text, memastikan confidentiality dari
pertukaran informasi
SSH mentransmisikan user authentication information dalam bentuk cipher text. Hal ini
sangat efektif dalam menghindari user identity information eavesdropping.
SSH menyediakan beberapa metode otentikasi (contoh otentikasi public key) untuk
meningkatkan ketahanan user otentikasi
Kunci enkripsi dan dekripisi untuk komunikasi SSH server dan SSH client di bangkitkan
secara dinamis. Hal ini sangat penting karna susah melakukan crack dan memiliki
keamanan yang lebih tinggi
SSH client dapa melaukan otentikasi identitas dari server. Hal ini dapat menghindari
server spoofing attack
I.1.2 Rumusan Masalah
Apakah definisi dari SSH?
Bagaimana cara kerja dari SSH?
Protocol apa saja yang digunakan pada SSH?
Policies apa saja yang ada pada SSH?
Apakah tujuan dari penggunaan SSH?
Public Key cryptography yang digunakan
-
4
I.2 Batasan Masalah
Batasan yang digunakan dalam makalah ini adalah sekedar berupa study literature.
I.3 Tujuan dan Manfaat
Tujuan dari penulisan makalah ini adalah:
1. Mengerti definisi dari SSH
2. Mengerti cara kerja SSH
3. Mengerti protocol yang digunakan pada SSH
4. Mengerti Policies apa saja yang ada pada SSH
5. Mengerti tujuan penggunaan SSH
6. Mengerti public key cryptography yang digunakan.
-
5
BAB 2
ISI
2.1 Definisi
Menurut Cahyan (Cahyani, 2010), SSH adalah program yang memunginkan user untuk
login ke system remote dan memiliki koneksi yang terenkripsi. Menurut Daniel (Silverman,
2005), SSH adalah popular, powerful, software based yang digunakan untuk network security.
Ketika data dari computer dikirim ke ntwork, SSH otomatis mengenkripnya. Ketika data sampai
ke penerima yang diinginkan, SSH secara otomatis mendekrip. User tidak akan menyadari
keamanan komunikasi ini (disebut transparen encryption)
Dapat disimpulkan bahwa Secure Shell (SSH) adalah protokol jaringan yang
memungkinkan pertukaran data melalui saluran yang aman antara dua perangkat yang
terhubung dalam suatu jaringan. SSH sangat populer, powerfull dan media keaman jaringan
dengan pendekatan perangkat lunak.
SSH menggunakan kriptografi berbasis RSA public key baik untuk konektivitas maupun
autentifikasi. Dan untuk algoritma enkripsinya menggunakan Blowfish, DES, dan IDEA,
meskipun banyak algoritma yang digunakan, IDEA merupakan default basis enkripsi algoritma
yang digunakan.
2.2 Cara Kerja SSH Secara Sederhana
Cara kerja sederhana dari SSH adalah sebagai berikut :
-
6
Gambar 2 1 Proses kerja SSH
Sebuah SSH server program, di install dan dijalankan oleh administrator, menerima atau
menolak koneksi yang dating dari host computer. User kemudian menjalankan program Client
SSH untuk membuat request kepada SSH server seperti Please log me in," "Please send me a
file," or "Please execute this command." Semua komunikasi antara client dan server pasti
terenkrip dan terbebas dari modifikasi
Menurut Cahyani (Cahyani, 2010), terdapat tujuh langkah sebelum komunikasi
terbentuk. Ketuju langkah tersebut adalah:
Langkah 1 : Client bind pada local port nomor besar dan melakukan koneksi ke port 22
pada server.
Langkah 2 : Client dan server setuju untuk menggunakan sesi SSH tertentu. Hal ini
penting karena SSH v.1 dan v.2 tidak kompatibel.
Langkah 3 : Client meminta public key dan host key milik server.
-
7
Langkah 4 : Client dan server menyetujui algoritma enkripsi yang akan dipakai
(misalnya TripleDES atau IDEA).
Langkah 5 : Client membentuk suatu session key yang didapat dari client dan
mengenkripsinya menggunakan public key milik server.
Langkah 6 : Server men-decrypt session key yang didapat dari client, melakukan re-
encrypt dengan public key milik client, dan mengirimkannya kembali ke
client untuk verivikasi.
Langkah 7 : Pemakai mengotentikasi dirinya ke server di dalam aliran data terenkripsi
dalam session key tersebut.
2.3 SSH1 dan SSH2
SSH1 dan SSH2 memiliki feature yang sama antara lain (Purser, 2008):
Client program dapat melakukan remote login, remote command execution, dan
mengamankan pengkopian file di dalam network
SSH server dapat di konfigurasi
Terdapat beberapa algoritma enkripsi dan mekanisme otentikasi
SSH agent dapat melakukan cache untuk akses yang mudah
SSH2 menambah fitur baru untuk menyediakan produk yang lebih baik dan lebih komprehensif.
Fitur tersebut adalah:
Encryption cipher seperti 3DES dan AES
Penggunaan algoritma sound cryptographic Massage Authentication Code (MAC) untuk
integrity checking
Support terhadap public key certificates.
2.4 Protocol
SSH-2 merupakan versi terbaru dan mempunyai standar dari Internet Engineering Task
Force (IETF). Secara arsitektur, protokol SSH-2 memiliki arsitektur internal yang jelas dan well-
-
8
separated layers (terdefinisi di RFC 4251). Hal yang menjamin keamanan SSH, adalah keamanan
di layer dan protokolnya.
Berikut gambar dan penjelasan terhadap protocol yang ada
Gambar 2 2SSH Protocol
Transport Layer Protocol
Pada Transport Layer ditangani pertukaran initial key dan server authentication serta
terjadi compression dan integrity verification. Hal ini berkaitan dengan layer diatasnya,
sebuah interface untuk mengirim dan menerima plaintext sampai 32.768 bytes. Pada
layer ini juga menangani pertukaran key lagi, biasanya setelah 1GB data yang sudah
ditransfer atau setelah 1jam berlalu.
User Authentication Protocol
Pada layer ini menangani Client authentication dan menyediakan banyak metode
untuk authentikasi. Autentikasi bersifat client-driven, sebuah fakta yang tidak
dimengerti oleh kebanyakan usir, ketika ada permintaan suatu password, itu mungkin
saja client prompting, bukan server. Dalam proses autentifikasi biasanya digunakan
metode:
Password
Sebuah metode yang langsung berhubungan dengan password authentication,
termasuk memfasilitasi penggantian password.
Public Key
-
9
Sebuah metode untuk public key-based authentication, biasanya terdapat
minimal DSA atau RSA.
Keyboard-interactive (RFC 4256)
Sebuah metode yang sebuah server mengirim satu atau lebih peringatan untuk
memasukkan informasi dan client merespon balik dengan menekan salah satu
tombol di keyboard oleh user. Biasanya digunakan dalam one-time password
authentication contohnya S/Key or SecurID.
GSSAPI Authentication
Tujuan dari protokol ini adalah untuk menampilkan client user otentication. Ini
diasumsikan bahwa protokol berjalan melalui sebuah protokol transport layer yang
secure, yang sudah diautentifikasi oleh mesin server, dienkripsi secara terpercaya oleh
communications channel, dan memperhitungkan sebuah session identifikasi yang unik
untuk session tersebut. Beberapa metode autentifikasi dengan beberapa sekuriti
berbeda karakteristik diperbolehkan untuk digunakan.
Server memungkinkan memasuki periode sleep setelah melakukan pengulangan
autentifikasi yang tidak berhasil, hal ini dilakukan untuk mempersulit para attackers
untuk mencari key yang ada
Connection Layer Protocol
Pada layer ini mendefinisikan konsep channel, channel requests dan global requests
menggunakan SSH service. Sebuah koneksi SSH bisa melayani banyak channel sekaligus
secara simultan, pada setiap proses transfer data dalam dua arah. Channel requests
digunakan untuk mengarahkan channel ke data yang spesifik, seperti mengganti ukuran
dari sebuah terminal window atau exit code pada server. SSH client request sebuah
server port untuk dihubungkan menggunakan sebuah global request.
Tipe channel standar:
Shell, untuk terminal shell, SFTP dan exec request (termasuk SCP transfer).
Direct-tcpip, untuk hubungan client-server.
-
10
Forwarded-tcpip, untuk hubungan server-client
SSHFP DNS record
Menyediakan public host key fingerprints untuk menangani autentifikasi. Hal yang
menjamin keamanan SSH, adalah keamanan di layer dan protokolnya. Secara garis
besarnya SSH terdiri dari
Transport Layer Protocol [SSH-TRANS] menyediakan server autentifikasi,
confidentiality, dan integritas. Transport layer akan berjalan pada TCP/IP
connection, tetapi mungkin juga bisa digunakan di atas data stream yang lain.
User Authentication Protocol [SSHUSERAUTH] memberikan autentikasi clientside
user ke server. Ini berjalan dalam protokol transport layer.
The Connection Protocol [SSH-CONNECT] multiplexe tunnel yang telah dienkripsi
ke dalam beberapa logical channels. Berjalan pada user authentication protocol.
Client mengirimkan sebuah service request saat transport layer aman dan koneksi sudah
berjalan. Lalu service request yang kedua dikirimkan ketika user authentication sudah
terpenuhi. Hal ini memperbolehkan protokol baru untuk terdefinisi dan berdampingan dengan
daftar protokol diatasnya. Sehingga proses enkripsi bisa berjalan dengan baik dan keamanan
data terjamin.
Koneksi protokol menyediakan channels yang bisa digunakan untuk memperluas
jangkauan tujuan. Metode-metode standar dibutuhkan untuk membuat secure interactive shell
sessions dan menyambungkan dengan arbitrary TCP/IP ports dan X11 connections (tunneling).
Setiap server host harus memiliki sebuah host key. Host bisa memiliki banyak host key
menggunakan banyak algoritma yang berbeda. Jika sebuah host memiliki key, host harus
memiliki minimal sebuah key yang menggunakan setiap algoritma public key yang dibutuhkan.
-
11
Host key server digunakan selama pertukaran key untuk memverifikasi bahwa client
benar-benar sedang menghubungi server yang benar.
Ada dua model berbeda yang bisa digunakan :
Client memiliki sebuah local database yang berhubungan dengan setiap hostname
(seperti yang diketikan oleh user) dengan mencocokkannya terhadap public host key.
Metode ini membutuhkan infrastuktur administrative yang tidak secara terpusat, dan
tidak memiliki third-party coordination. Pada bagian bawah dimana name-to-key
Associations mungkin menjadi memberatkan dalam pemeliharaannya.
The host name-to-key association memiliki sertifikat resmi dari Certification Authority
(CA). Client hanya mengetahui CA root key dan bisa memverifikasi validitas dari semua
host key yang bersertifikat CA.
Protokol memperbolehkan negosiasi enkripsi, integritas, pertukaran key, kompresi, dan
public key algorithms and formats secara penuh. Enkripsi, integritas, public key, dan kompresi
algoritma bisa memiliki perbedaan arah.
2.5 Fase pada SSH
Menurut H3C (Hangzou H3C Technologies Co., Ltd, 2009), ada tujuh fase yang dilalui dari
permulaan hingga akhir Ketujuh Fase tersebut adalah sebagai berikut:
Connection Setup
SSH Version Negotiation
Algorithm Negotiation
Key Exchange
User Authentication
Service Request
Data Transmission and Connection Teardown
-
12
2.5.1 Connection Setup
SSH mendengarkan connection request dari client pada port 22. Setelah mendeteksi
connection request, SSH akan melakukan 3 operasi handshake untuk membangun koneksi TCP.
Semua subsequent paket akan di tukar melalui koneksi TCP ini.
2.5.2 SSH Version Negotiation
Setelah koneksi TCP terbangun, Server dan client akan saling memberitahukan SSH yang
support untuk masing masing dari mereka kemudian membandingkan versi nya. Versi tertinggi
yang support ke server dan client yang akan digunakan. Jika Version Negotiation berhasil,
Server dan client akan melanjutkan dengan algorithm negotiation, jika tidak akan terputus.
2.5.3 Algorithm Negotiation
Pertukaran paket SSH protocol membutuhkan beberapa algoritma:
Key exchange algorithm untuk membangkitkan session key, seperti Diffie-Hellman-
group exchange-SHA1, Diffie-Hellman-group1-SHA1, atau Diffie-Hellman-group 14-
SHA1.
Encryption algorithm untuk enkripsi data, seperti 3DES-CBC, AES128-CBC, atau DESCBC.
Host public key algorithm untuk digital signature and authentication, seperti RSA atau
DSA.
Message Authentication Code (MAC) algorithm untuk melindungi integritas data seperti
HMAC-MD5, MHAC-MD5-96, HMAC-SHA1 or HMAC-SHA1-96.
Tiap client dan server memungkinkan hanya dapat berkerja pada algoritma yang berbeda, oleh
karena itu diperlukan negosiasi algoritma apa yang digunakan. Cara negosiasi algoritma bekerja
dengan tiga langkah yaitu:
1. Client dan server saling mengirim list dari algoritma yang support
2. Negosiasi algoritma dalam prosedur: Ambil algoritma pertama dari list client dan
cocokkan kepada list di server. Jika ada, negosiasi berhasil dan proses pencocokan
selesai. Jika tidak, ambil tipe algoritma selanjutnya dan cocokkan ke list pada server.
-
13
Proses ini akan terus berulang hingga tidak ditemukan kecocokan antara list client dan
server. Jika hal ini terjadi, proses dianggap gagal
3. Jika negosiasi algoritma berhasil, peers akan terus menegosiasikan tipe algoritma. Jika
gagal, algoritma antara peers akan dianggap gagal dan server akan memutus koneksi
dengan client
Contoh sederhana:
Tabel 2 1Contoh Pemilihan Algortima
Algoritma Enkripsi Client Algoritma Enkripsi Server Negotiated encryption
algoritm
3DES, 3DES-CBC, AES 128 CBC AES128-CBC, 3DES-CBC, DES-
CBC
3DES-CBC
2.5.4 Key Exchange
Setelah proses negosiasi algoritma berhasil, SSH server dan client akan membangkitkan
dan bertukar kunci enkripsi secara dinasi dan aman untuk memastikan keamanan pada kunci.
Hal ini dapat mencegah kunci di intercepeted oleh pihak ketiga.
2.5.5 User Authentication
Setelah pertukaran kunci selesai, proses user authentication akan dimulai.
-
14
Gambar 2 3 User Authentication Process
1. Client mengirim ke server sebuah authentication request packet
2. Ketika menerima authentication request packet, server merespon dengan
authentication challenge packet, yang membawa list metode otentikasi yang support
dan client harus lalui
3. Client memilih metode otentikasi dari list dan memulai authentication request, yang
membawa username, metode otentikasi, dan informasi yang relevan terhadap metode
otentikasi:
a. Untuk password otentikasi, informasi nya adalah password client
b. Untuk otentikasi kunci public, informasi nya adalah kunci public (jika
menggunakan otentikasi kunci public) atau digital signature (jika menggunakan
otentikasi digital signature)
4. Ketika server menerima authentication request, server akan meng otetikasi client
dengan cara:
a. Untuk otentikasi password, server membandingkan username dan password dari
client dengan yang ada di local atau mengirim ke server otentikasi untuk
mengotentikasi client
-
15
b. Untuk otentikasi kunci public, server mengecek validitas dari kunci public client.
Jika kunci public invalid, otentikasi gagal. Begitu juga jika menggunakan digital
signature. Server akan menlakukan pengecekan ke validitasan digital signature
5. Berdasar pada konfigurasi yang ada pada local client, jika client berhasil lolos dari
otentikasi, server akan melakukan pengecekan lebih lanjut:
a. Jika client lolos pada otentikasi terkahir dan tidak ada tipe otentikasi lain yang
diperlukan, server akan mengirim pesan sukses
b. Jika client lolos pada otentikasi terakhir tetapi harus melalui otentikasi lain,
server akan mengitim kepada client otentikasi challenge yang berisi otentikasi
lain yang harus dilalui oleh client
c. Jika client gagal pada otentikasi terakhir tetapi jumlah authentication attempts
belum mencapai batas, server akan mengirim ulang otentikasi challenge
d. Jika client gagal pada otentikasi terakhir dan jumlah authentication attempts
telah mencapai batas, server akan mengirimkan pemberitahuan kepada client
bahwa otentikasi gagal dan koneksi pada client diputus
2.5.6 Service Request
SSH support pada beberapa service. Setelah SSH Client melewati semua tipe otentikasi
yang dibutuhkan oleh server, Client akan mengirim service request kepada server untuk
menggunakan service. Berikut prosedur service request:
1. Client mengirim pesan SSH_MSG_CHANNEL_OPEN untuk menginisiasi sesi ke server
2. Saat menerima pesan SSH_MSG_CHANNEL_OPEN, server akan merespon dengan pesan
SSH_MSG_CHANNEL_OPEN_CONFIRMATION untuk membangun sesi dengan client jika
sipport dengan tipe request session
3. Ketika sesi terbangun, Client akan menggunakan shell (SSH) atau subsystem Service
(SFTP)
-
16
2.5.7 Data Transmission and Connection Terdown
Setelah service request dikabulkan dan sesi terbangun, server dan client dapat bertukar
data secara aman melalui:
1. Client melakukan enkripsi dan mengirim perintah untuk dieksekusi oleh server
2. Ketika menerima paket, Server melakukan dekripsi terhadap paket, kemudian
mengeksekusi perintah dan mengrimkan hasilnya kepada client
3. Client akan menunjukkan hasilnya ke layar
4. Setelah komunikasi selesai atau client mengalami timed out karna berada pada masa
idle cukup lama, sesi akan ditutup dan koneksi akan terputus.
2.6 SSH Policy Issue
Hal-hal yang berkaitan dengan Policy issues harus memiliki alamat pada mekanisme
konfigurasi di setiap implementasi,
Enkripsi, integritas, dan kompresi algoritma, secara terpisah di setiap arah. Policy harus
spesifik pada algoritmanya.
Public key algorithms dan key exchange method (metode pertukaran kunci) digunakan
untuk host otentication. Keberadaan host key yang terpercaya untuk public key
algorithms juga memberikan efek pada pilihan ini.
Metode autentifikasi dibutuhkan oleh server untuk setiap user. Server policy
membutuhkan banyak autentifikasi untuk beberapa dari semua user yang ada.
Operasi yang diperbolehkan untuk digunakan user dengan menggunakan koneksi
protokol adalah yang berhubungan dengan security. Policy tidak seharusnya
memperbolehkan server untuk memulai session atau menjalan command pada mesin
client, dan tidak harus memperbolehkan koneksi ke autentifikasi agen meskipun ada
permintaan koneksi tersebut.
Masalah lain, seperti local policy. Banyak dari masalah ini yang mungkin terlibat dengan
hubungan melalui firewall dan berkaitan dengan local security policy.
-
17
2.7 Tujuan Utama Protokol SSH
Tujuan utama dari protokol SSH adalah untuk memperbaiki keamanan di internet. Hal ini
dilakukan dengan cara yang mudah untuk disebarkan, meskipun pada tingkat keamanan yang
tinggi.
Semua enkripsi, integritas, dan public key algorithms yang digunakan sudah dikenal dan
sudah tidak bisa dipungkiri kebenaran algoritmanya.
Semua algoritma digunakan secara kriptografi yang dipercaya mampu menyediakan
proteksi perlawanan terhadap serangan terkuat dari cryptanalytic (pelaku kriptografi)
untuk beberapa dekade.
Semua algoritma dinegosiasikan dan pada kasus, beberapa algoritma dipatahkan, hal ini
mudah untuk mengganti dengan algoritma yang lain tanpa memodifikasi basis protokol.
SSH protokol yang disetujui oleh consensus IETF, yakni:
Service Names
Authentication Methods
Connection Protocol Channel Names
Connection Protocol Global Request Names
Connection Protocol Channel Request Names
Key Exchange Method Names
Assigned Algorithm Names
Encryption Algorithm Names
MAC Algorithm Names
Public Key Algorithm Names
Compression Algorithm Names
2.8 Public-Key Cryptography
SSH menggunakan public-key cryptography. Lawan dari public-key cryptography adalah
symmetric cryptography. Pada symmetric cryptography, satu kunci yang sama digunakan untuk
-
18
melakukan enkripsi dan dekripsi. Pada sistem public-key cryptography, enkripsi dan dekripsi
menggunakan kunci yang berbeda. Sejak dikembangkannya public-key cryptography, selalu
timbul pertanyaan mana yang lebih baik. Para pakar kriptografi mengatakan bahwa keduanya
tidak dapat dibandingkan karena mereka memecahkan masalah dalam domain yang berbeda.
Symmetric cryptography merupakan hal yang terbaik untuk mengenkripsi data.
Kecepatannya dan keamanan akan choosen-ciphertext attack merupakan kelebihannya.
Sementara itu public-key cryptography dapat melakukan hal-hal lain lebih baik daripada
symmetric cryptography, misalnya dalam hal key management.
Untuk algoritma enkripsi yang digunakan, SSH menggunakan algoritma Blowfish, sebuah
algoritma enkripsi yang merupakan symmetric cryptography dan merupakan block chipper
dengan panjang variable-key 32-bit sampai 448-bit. Disinyalir kurang aman, karena sudah ada
cracker yang bisa membobol variable-key sepanjang 56-bit.
Selain itu, SSH menggunakan DES (Data Encrypton Standard). DES merupakan algoritma
kriptografi simetris yang paling umum digunakan saat ini. Biasanya digunakan untuk enkripsi
password di sistem berbasis UNIX. Tetapi penggunaannya sudah tidak aman lagi, karena sudah
ada beberapa pihak yang bisa membobol enkripsi berbasis DES. DES merupakan block chiper
yang beroperasi dengan menggunakan blok berukuran 64-bit dan kunci berukuran 56-bit. Brute
force attack dengan mencoba segala kombinasi membutuhkan 256 kombinasi atau sekitar 70
juta milyar kombinasi, bisa menembus pertahanan DES, meskipun membutuhkan waktu yang
cukup lama yakni 30 hari. Dan DES disinyalir sudah tidak aman lagi.
Secara default, SSH menggunakan IDEA. IDEA singkatan dari International Data
Encryption Algorithm yang merupakan algoritma enkripsi yang menggunakan block chipher
dengan panjang key 128-bit. IDEA memang diklaim yang paling secure daripada jenis algoritma
enkripsi yang lain. Algoritma ini sudah dipakai beberapa tahun belakangan ini dan nampak tidak
ada serangan serius yang dipublikasikan yang menyerang sistem enkripsi IDEA.
Sebagai perbandingan algoritma enkripsi yang digunakan pada SSH1 dan SSH2 terdapat
pada table berikut:
-
19
Tabel 2 2 Algoritma Enkripsi SSH1 SSH2
Chiper SSH1 SSH2
DES Yes No
3DES Yes Yes
IDEA Yes No
Blowfish Yes Yes
Twofish No Yes
Arcfour No Yes
Cast128-CBC No Yes
Sementara untuk otentikasi digunakan
Tabel 2 3 Algoritma Otentikasi SSH1 dan SSH2
Cipher SSH1 SSH2
RSA Yes No
DSA No Yes
2.9 Port Fowarding
Selain fungsi enkripsi, SSH memiliki satu kelebihan yaitu kemampuan untuk melakukan
Port Forwarding. Menurut Barrett (Silverman, 2005) Port forwarding kadang-kadang disebut
tunneling karena koneksi SSH menyediakan "terowongan" yang aman, di mana koneksi TCP / IP
yang lain bisa melewatinya. SSH menggunakan TCP / IP sebagai mekanisme transportasi,
biasanya TCP port 22 pada mesin server. Terjadi proses enkripsi dan dekripsi lalu lintas data
yang melewati terowongan ini.
Ada dua macam Port Forwarding, yaitu Local Forwarding dan Remote Forwarding
Local Forwarding
-
20
Local forwarding terjadi apabila aplikasi client TCP / IP berada di komputer client, dan
server aplikasi TCP / IP yang dituju berada di sisi yang lain. Local forwarding dilakukan
dengan jalan memanfaatkan port di komputer client (mulai dari 1024 sampai 65535)
untuk melewatkan koneksi sebuah aplikasi TCP / IP, kemudian komputer client akan
membuat koneksi ke komputer remote pada port 22 dan akan mengirimkan data ke
komputer tujuan melalui port 22.
Remote Forwarding
Pada Remote Forwarding prosesnya sama dengan Local Forwarding, hanya kebalikan
dari Local Forwarding. Pada Remote Forwarding lokasi server ada di local, sedangkan
lokasi client ada pada remote komputer.
Local Komputer
SSH Tunnel
Remote Komputer
SSH Server
Internet
Gambar 2 4 Port Fowarding
-
21
KESIMPULAN DAN SARAN
Kesimpulan yang bisa diambil dari makalah ini adalah bahwa Secure Shell (SSH)
didefinisikan sebagai protokol jaringan yang memungkinkan pertukaran data melalui saluran
yang aman antara dua perangkat yang terhubung dalam suatu jaringan. SSH sangat populer,
powerfull dan media keaman jaringan dengan pendekatan perangkat lunak. SSH memiliki tiga
layer yang digunakan saat berkomunikasi
SSH memiliki tujuh fase yang perlu dilalui untuk berkomunkasi hingga akhirnya selesai
dan komunikasi diputus. SSH juga memiliki policies dan tujuan dibentuknya protocol ini. Public
key yang digunakan pada server dan client dapat berbeda. Saat akan berkomunikasi, keduanya
saling bersalaman agar komunikasi dapat terjadi.
-
22
DAFTAR PUSTAKA
Branchamont, L. (2006, January). The Secure Shell (SSH) Authentication Protocol. Retrieved
September 12, 2014, from RFC-Base: http://www.rfc-base.org/txt/rfc-4252.txt
Branchamont, L. (2006, January). The Secure Shell (SSH) Connection Protocol. Retrieved
September 12, 2014, from RFC-Base: http://www.rfc-base.org/txt/rfc-4254.txt
Branchamont, L. (2006, January). The Secure Shell (SSH) Transport Layer Protocol. Retrieved
September 12, 2014, from RFC-Base: http://www.rfc-base.org/txt/rfc-4253.txt
Cahyani, I. D. (2010). Sistem Keamanan Enkripsi SSH untuk Keamanan Data. Semarang:
Universitas Pandanaran Semarang.
Hangzou H3C Technologies Co., Ltd. (2009). SSH Technology White Paper. Hongkong: H3C
Technologies Co., Ltd.
Purser, J. R. (2008, September 22). SSHv1 or SSHv2? What's the big deal? Retrieved September
27, 2014, from The Cisco Learning Network:
https://learningnetwork.cisco.com/blogs/network-sheriff/2008/09/22/sshv1-or-sshv2-
whats-the-big-deal
Silverman, D. J. (2005). SSH: The Secure Shell The Definitive Guide. California: O'reilly.
Stalling, W. (2014). Cryptography and Network Security Principle and Practice. New Jersey:
Pearson Education, Inc.
Strickland, J. (2009, March 6). How Moore's Law Works. Retrieved September 20, 2014, from
Howstuffwork: http://computer.howstuffworks.com/moores-law.htm
top related