Top Banner

of 26

Makalah Secure Shell

Jan 10, 2016

Download

Documents

Arifisal Doank

Makalah ini tentang SSH
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
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