SSH merupakan paket jadwal yang digunakan sebagai pengganti yang kondusif untuk rlogin, rsh dan rcp. Ia memakai public-key cryptography untuk mengenkripsi komunikasi antara dua host, demikian pula untuk autentikasi pemakai. Ia sanggup digunakan untuk login secara kondusif ke remote host atau menyalin data antar host, sementara mencegah man-in-themiddle attacks (pembajakan sesi) dan DNS spoofing atau sanggup dikatakan Secure Shell yakni jadwal yang melaksanakan loging terhadap komputer lain dalam jaringan, mengeksekusi perintah lewat mesin secara remote, dan memindahkan file dari satu mesin ke mesin lainnya. SSL (Secure Socket Layer) dikembangkan oleh Netscape untuk mengamankan HTTP dan hingga kini masih inilah pemanfaatan utama SSL. SSL menjadi penting sebab beberapa produk umum menyerupai Netscape Communicator, Internet Explorer, dan WS_FTP Pro, yang merupakan produk yang lazim digunakan, memakai SSL. Secure Sockets Layer, yakni metode enkripsi yang dikembangkan oleh Netscape untuk memperlihatkan keamanan di Internet. Ia mendukung beberapa protokol enkripsi dan memperlihatkan autentikasi client dan server. SSL beroperasi pada layer transpor, membuat saluran enkripsi yang kondusif untuk data, dan sanggup mengenkripsi banyak tipe data. Hal ini sanggup dilihat dikala mengunjungi site yang kondusif untuk melihat dokumen online kondusif dengan Communicator, dan berfungsi sebagai dasar komunikasi yang kondusif dengan Communicator, juga dengan enkripsi data Netscape Communication lainnya. Atau sanggup dikatakan bahwa SSL merupakan Protokol berlapis. Dalam tiap lapisannya, sebuah data terdiri dari panjang, deskripsi dan isi. SSL mengambil data untuk dikirimkan, dipecahkan kedalam blok-blok yang teratur, kemudian dikompres bila perlu, menerapkan MAC, dienkripsi, dan kesudahannya dikirimkan. Di kawasan tujuan, data didekripsi, verifikasi, dekompres, dan disusun kembali. Hasilnya dikirimkan ke klien di atasnya.
Kegunaan SSH dan SSL
SSL dirancang untuk mengamankan sesi web, sedangkan SSH dirancang untuk menggantikan protokol telnet dan FTP. Keduanya memiliki banyak fitur lain, tetapi tujuan utamanya memang untuk mengamankan komunikasi melalui internet.
SSL telah digunakan untuk mengamankan protokol-protokol yang insecure menjadi secure. SSL menjadi mediator antara pemakai dengan protokol HTTP dan menampilkan HTTPS kepada pemakai. Hal yang sama sanggup dilakukan pula terhadap protokol-protokol insecure lain menyerupai POP3, SMTP, IMAP dan apasaja yang merupakan aplikasi TCP.
Adapun SSH merupakan produk serbaguna yang dirancang untuk melaksanakan banyak hal, yang kebanyakan berupa penciptaan tunnel antar host. Beberapa implementasi SSH tergantung pada SSL libraris sebab SSH dan SSL memakai banyak memakai algoritma enkripsi yang sama (misalnya TripleDES(Pengembangan dari DES oleh IBM). ), Algoritma enkripsi lain yang didukung oleh SSH di antaranya BlowFish (BRUCE SCHNEIER), IDEA (The International Data Encryption Algorithm), dan RSA (The Rivest-Shamir-Adelman).
Dengan banyak sekali metode enkripsi yang didukung oleh SSH, Algoritma yang digunakan sanggup diganti secara cepat bila salah satu algoritma yang diterapkan mengalami gangguan. SSH tidak menurut SSL menyerupai halnya HTTPS menurut SSL. SSH memiliki jauh lebih banyak kelebihan daripada SSL, dan keduanya tidak bekerjasama satu sama lain.
Keduanya merupakan dua protokol yang berbeda, namun dalam mencapai tujuan-tujuannya mungkin saling tumpang tindih. SSL tidak memberi apa-apa kecuali handshake dan enkripsi. Diperlukan aplikasi untuk membuat SSL menjalankan tugasnya. SSH sebaliknya menjalankan menjalankan sendiri banyak hal. Dua hal penting SSH yakni console login (menggantikan telnet) dan secure filetransfer (menggantikan FTP), tetapi dengan SSH anda juga memperoleh kemampuan membentuk source tunnel untuk melewatkan HTTP,FTP,POP3, dan apapun lainnya melalui SSH tunel.
Tanpa adanya traffic dari suatu aplikasi, SSL tidak melaksanakan apa-apa, tetapi SSH sudah membentuk encrypted tunel antara dua host yang memungkinkan untuk melaksanakan login shell, file transfer, dan lain sebagainya. HTTPS memakai SSL untuk menjalankan HTTP yang secure dan HTTPS itu sanggup dilewatkan melalui tunel yang dibuat oleh SSH.
Cara Kerja SSH dan SSL
Cara Kerja SSH
Misalkan suatu client mencoba mengakses suatu linux server melalui SSH. SH daemon yang berjalan baik pada linux server maupun SSH client telah memiliki pasangan public/private key yang masing-masing menjadi identitas SSH bagi keduanya. Langkah-langkah
koneksinya yakni sebagai berikut :
Langkah 1
Client bind pada local port nomor besar dan melaksanakan koneksi ke port 22 pada server.
Lankah 2
Client dan server oke untuk memakai sesi SSH tertentu. Hal ini penting sebab SSH v.1 dan v.2 tidak kompatibel.
Langkah 3
Client meminta public key dan host key milik server.
Langkah 4
Client dan server menyetujui algoritma enkripsi yang akan digunakan (misalnya TripleDES atau IDEA).
Langkah 5
Client membentuk suatu session key yang didapat dari client dan mengenkripsinya memakai public key milik server.
Langkah 6
Server men-decrypt session ky yang didapat dari client, meng-re-encrypt-nya dengan public key milik client, dan mengirimkannya kembali ke client untuk verivikasi.
Langkah 7
Pemakai mengotentikasi dirinya ke server di dalam pedoman data terenkripsi dalam session key tersebut.
Sampai disini koneksi telah terbentuk, dan client sanggup selanjutnya bekerja secara interaktif pada server atau mentransfer file ke atau dari server. Langkah ketujuh diatas sanggup dilaksanakan dengan banyak sekali cara (username/password, kerberos, RSA dan lain-lain)
Cara Kerja SSL
Cara kerja SSL sanggup kita lihat dengan tahapan – tahapan :
Langkah 1
Client membentuk koneksi awal ke server dan meminta koneksi SSL.
Langkah 2
Bila server yang dihubungi telah dikonfigurasi dengan benar, maka server ini akan mengirimkan client public key miliknya.
Langkah 3
Client membandingkan akta dari server ke basisdata trusted authorities. Bila akta ini terdaftar di situ, artinya client mempercayai (trust) server itu dan akan maju kelangkah 4. Bila akta itu terdaftar, maka pemakai harus menambahkan akta ini ke trusted database sebelum maju ke langkah 4.
Langkah 4
Client memakai Public Key yang didapatnya untuk men-enkrip sesi dan mengirimkan session key ke server. Bila server meminta akta client di langkah2, maka clent harus mengirimkannya sekarang.
Langkah5
Bila server di-setup untuk mendapatkan sertifikat, maka server akan membandingkan akta yang diterimanya dengan basisdata trusted authorities dan akan mendapatkan atau menolak koneksi yang diminta. Bila kondisi ditolak, suatu pesan kegagalan akan dikirimkan ke client. Bila koneksi diterima, atau bila server tidak di-setup untuk mendapatkan sertifikat, maka server akan men-decode session key yang didapat dari client dengan privete key milik server dan mengirimkan pesan berhasil ke client yang dengan demikian membuka suatu secure data chanel.
Implementasi SSH dan SSL
Implementasi SSH terlihat dalam produk-produk berikut :
FreeSSH
OpenSSH (Unix, Windows)
LSH (unix)
PuTTY (Windows)
Okhapkin s port of SSH1(windows)
MacSSH (Macintosh)
TeraTerm (windows)
MindTerm (Inix, Windows)
NitfyTelnet 1.1 SSH (Machintosh)
Commercial SSH
SSH communication Security (unix, windows)
F-Secure SSH (unix,Windows)
Secure CRT, SecureFX (windows)
Vshell (Windows)
Implementasi SSL
Terdapat dua implementasi SSL: SSLeay dan OpenSSL. Microsoft menerapkan versi SSH-nya sendiri yang dikenal sebagai TSL atau Transport Layer Security (disebut juga sebagai SSL v.3.1), namun tidak menerima banyak tunjangan diluar produk-produk Microsoft sendiri. Sumber http://www.arjunservice.net
EmoticonEmoticon