Pengertian SSH (Secure Shell)
SSH adalah akronim dari Secure Shell yang merupakan sebuah protokol jaringan yang memanfaatkan kriptografi untuk melakukan komunikasi data pada perangkat jaringan agar lebih aman. Dalam konsepnya penggunaan SSH ini harus didukung oleh server maupun perangkat atau komputer klien yang melakukan pertukaran data. Keduanya harus memiliki SSH Server dari sisi komputer server dan SSH Klien untuk komputer penerima (klien).
Banyak digunakan pada sistem operasi berbasis Linux dan Unix untuk mengakses akun Shell, SSH dirancang sebagai pengganti Telnet dan shell remote tak aman lainnya, yang mengirim informasi, terutama kata sandi, dalam bentuk teks sederhana yang membuatnya mudah untuk dicegat. Enkripsi yang digunakan oleh SSH menyediakan kerahasiaan dan integritas data melalui jaringan yang tidak aman seperti internet.
Fungsi SSH
Fungsi SSH dapat digunakan untuk menggantikan telnet, rlogin, ftp dan rsh, salah satu fungsi utamanya adalah untuk menjamin keamanan dalam melakukan transmisi data pada suatu jaringan. SSH banyak dimanfaatkan oleh berbagai network admin dibeberapa belahan dunia untuk mengontrol web dan jenis jaringan lainnya seperti WAN. Fuungsi SSH ini sebenarnya adalah dibuat untuk menggantikan protokol sebelumnya yang dianggap sangat rentan terhadap pencurian data melalui malware berbahaya. Protokol tersebut antara lain adalah rlogin, telnet dan protokol rsh.
Fungsi lain SSH adalah :
- Melakukan enkripsi terhadap data yang dikirim,
- Protokol untuk pertukaran data dalam suatu jaringan,
- Otentifikasi, mekanisme untuk memastikan pengirim dan penerima adalah benar dan aman
- Kerahasiaan, memastikan kerahasiaan daya yang dikirim agar hanya diketahui oleh penerima dan pengirim.
Manfaat menggunakan SSH
Manfaat menggunakan akun SSH adalah meningkatkan keamanan data pada komputer Anda ketika mengakses internet, karena dengan adanya Akun SSH sebagai perantara koneksi internet Anda, SSH akan memberikan enskripsi pada semua data yang terbaca, baru mengirimkannya ke server lain.
Selain dapat melakukan enskripsi data, SSH juga memiliki kemampuan melakukan Port Forwarding yang mana memungkinkan kita mendapatkan manfaat sebagai berikut ini:
- Melakukan koneksi aplikasi TCP (misalnya : webserver, mail server, FTP server) dengan lebih secure (aman)
- Melakukan koneksi dengan membypass (melewati) firewall atau proxy setempat.
Menggunakan Akun SSH untuk tunneling koneksi internet Anda memang tidak menjamin meningkatkan speed internet Anda. Namun dengan menggunakan Akun SSH, otomatis IP yang Anda gunakan akan bersifat statis dan dapat Anda gunakan secara privat dengan catatan hanya Anda lah user dalam Akun SSH tersebut.
Protocol SSH ini memiliki banyak fungsi, selain fungsi tunneling yang sering kita gunakan, kita juga bisa menggunakan SSH untuk SFTP, SOCKS4/5 proxy atau bisa juga kita gunakan untuk mengatur VPS atau hosting milik kita khususnya VPS dengan OS Linux seperti CentOS.Untuk menggunakan tunneling menggunakan SSH ini kita bisa mengguankan SSH client seperti Bitvise Tunnelier ataupun Putty untuk sistem operasi Windows.
Untuk mendapatkan akun dan penggunaan dari SSH ini, kita bisa mendapatkan akun SSH gratis di cjb.net atau jika kita memiliki VPS biasanya pihak penyedia memberikan juga SSH untuk pengaturan VPS kita.
Kegunaan SSH
SSH dirancang untuk menggantikan protokol telnet dan FTP. SSH merupakan produk serbaguna yang dirancang untuk melakukan banyak hal, yang kebanyakan berupa penciptaan tunnel antar host. Dua hal penting SSH adalah 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.
Public Key Cryptografi (Kriptografi Kunci Publik)
SSH menggunakan metode public-key cryptography untuk mengenkripsi komunikasi antara dua host, demikian pula untuk autentikasi pemakai. Dengan metode ini, kita akan memerlukan 2 buah kunci berbeda yang digunakan baik untuk melakukan enkripsi dan dekripsi. Dua buah kunci tersebut masing-masing disebut public key (dipublikasikan ke publik/orang lain) dan private key (dirahasiakan/hanya pemiliknya yang tahu). Masing masing kunci di atas dapat digunakan untuk melakukan enkripsi dan dekripsi.
Cara kerja SSH
Public/private key yang masing-masing menjadi identitas SSH bagi keduanya.
Langkah-langkah koneksinya adalah sebagai berikut :
- 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.
- 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 ky yang didapat dari client, meng-re-encrypt-nya dengan public key milik client, dan mengirimkannya kembali ke client untuk verifikasi.
- Langkah 7 Pemakai mengotentikasi dirinya ke server di dalam aliran data terenkripsi dalam session key tersebut. Sampai disini koneksi telah terbentuk, dan client dapat selanjutnya bekerja secara interaktif pada server atau mentransfer file ke atau dari server. Langkah ketujuh diatas dapat dilaksanakan dengan berbagai cara (username/password, kerberos, RSA dan lain-lain).
sekian dari saya Stephen Setiawan
0 comments