Apa itu SSH dan Bagaimana Cara Kerjanya?
Diterbitkan: 2021-08-15SSH adalah protokol jaringan aman untuk mengakses komputer jarak jauh dalam jaringan.
Komputer berbicara satu sama lain melalui jaringan. Oleh karena itu, peneliti jaringan menetapkan seperangkat aturan untuk berkomunikasi dengan mesin lain dan mulai mengembangkan protokol seperti Telnet; dengan menggunakan itu, satu pengguna dapat mengambil kendali atas komputer lain.
Tetapi mereka tidak aman, yaitu siapa pun di tengah jaringan dapat mencegat dan membaca data yang sedang ditransfer. Pada pertengahan 90-an, protokol yang lebih aman bernama ssh telah diperkenalkan sebagai penerus protokol telnet yang andal.
Jika Anda seorang pengembang perangkat lunak atau administrator sistem yang bekerja di suatu industri, Anda mungkin pernah menggunakan ssh, setidaknya satu kali. Jika belum, mari kita pelajari sekarang, karena ini adalah salah satu keterampilan penting yang harus diketahui.
Apa itu SSH?
SSH atau Secure Shell atau Secure Socket Shell adalah protokol jaringan yang membantu kita mengakses dan berkomunikasi secara aman dengan mesin jarak jauh (kebanyakan server jarak jauh).
Ini menyediakan enkripsi yang kuat dan banyak digunakan oleh administrator dan pengembang jaringan untuk mengelola sistem & aplikasi jarak jauh, menjalankan perintah, berbagi file, dll.
Kebutuhan SSH
SSH dibuat pada tahun 1995 untuk mengatasi masalah keamanan yang dihadapi oleh protokol akses jarak jauh yang tidak aman seperti rlogin, rsh, Telnet.
Sekarang mari kita bicara tentang Telnet, yang merupakan singkatan dari Teletype Network yang dikembangkan pada tahun 1969. Ini adalah alat baris perintah sederhana yang berjalan di komputer Anda untuk mengakses server jarak jauh (di mana saja di dunia). Dan kirim perintah untuk dieksekusi di server itu, sama seperti jika Anda duduk tepat di depan server jarak jauh (bahkan bermil-mil jauhnya dari server). Telnet mentransmisikan dan menerima pesan dalam teks biasa melalui jaringan.
Perintah yang akan Anda jalankan bisa untuk menjalankan program, membuat direktori, membuat/menghapus/mentransfer file, memulai/menghentikan layanan, dll.
Masalah dengan menghubungkan mesin lain dalam jaringan adalah, data yang dikirimkan akan melewati banyak jaringan. Sementara itu, beberapa di antaranya mungkin tidak aman, dan transmisi data dapat disadap, kemungkinan dimodifikasi sebelum mencapai mesin target yang dimaksud.
Di masa-masa awal, di mana keamanan tidak begitu penting, semua komunikasi terjadi dalam teks biasa. Oleh karena itu, data yang dikirimkan melalui internet antara klien dan server dapat disadap dengan mudah. Dan itu dapat dibaca karena pesan tidak dienkripsi.
Oleh karena itu, protokol teks biasa sangat tidak aman dan tidak pernah digunakan untuk transmisi data sensitif seperti kata sandi, rahasia, dll. Oleh karena itu, SSH dianggap sebagai alternatif yang aman untuk protokol jaringan akses jarak jauh lama.
Bagaimana cara kerjanya?
SSH menggunakan arsitektur klien-server untuk mengamankan komunikasi melalui jaringan dengan menghubungkan klien ssh dengan server ssh. Secara default, ssh server mendengarkan port TCP standar 22 (Anda dapat mengubahnya untuk keamanan yang lebih baik).
Ini menggunakan teknik kriptografi kunci publik untuk mengotentikasi antara klien dan server. Selain itu, protokol menggunakan enkripsi simetris yang kuat & algoritma hashing untuk pertukaran pesan antara klien dan server untuk memastikan privasi dan integritas data.
Linux adalah sistem operasi yang banyak digunakan untuk server jarak jauh karena keamanan dan daya tahannya . Banyak Server yang menggunakan sistem operasi Linux di internet telah berjalan bertahun-tahun tanpa banyak kegagalan atau bahkan di-restart.

Sebagian besar sesi SSH (periode di mana kami mengakses server jarak jauh) hanya akan memiliki dua operasi berikut:
- Autentikasi
- Eksekusi Perintah
Server SSH dapat mengautentikasi klien menggunakan berbagai metode.
Dan dua cara yang populer adalah:
- Berbasis kata sandi
- Berbasis kunci
Otentikasi berbasis kata sandi adalah metode default yang digunakan untuk otentikasi untuk klien yang diinstal OpenSSH. Ini adalah otentikasi ssh paling dasar tetapi bukan yang paling aman.
Meskipun kata sandi dikirim ke server dengan aman, serangan brute force modern dapat melewati autentikasi.
Otentikasi berbasis kunci meningkatkan keamanan sistem lebih jauh dengan menghasilkan pasangan kunci SSH, yang terbukti menjadi alternatif yang andal dan aman.
Setelah server mengotentikasi klien dengan sukses, koneksi aman dibuat di antara mereka.
Mengakses Server Jarak Jauh Menggunakan SSH
Jika Anda adalah pengguna Mac/Linux, Anda dapat langsung menggunakan terminal untuk mengetik dan menjalankan perintah ssh, karena OpenSSH sudah terinstal secara default.
Jika Anda adalah pengguna Windows, Anda perlu menginstal satu klien emulator terminal pihak ketiga untuk menjalankan perintah ssh. Putty adalah klien ssh paling populer untuk sistem operasi Windows.
Untuk terhubung ke server jarak jauh menggunakan SSH, Anda perlu mengetahui setidaknya dua hal.
- tuan rumah server
- nama belakang
Sintaks untuk perintah ssh dasar adalah:
$ ssh <user-name> @ <host> -p <port-no>
Nama pengguna adalah nama pengguna mesin jarak jauh yang kami coba sambungkan (dan bukan pengguna di mesin lokal Anda), dan host adalah alamat IP atau nama domain.
Mari kita lihat contoh menghubungkan ke server jarak jauh menggunakan situs web OverTheWire. Ini adalah situs web tantangan permainan perang gratis.
Sekarang, mari terhubung ke tantangan bandit menggunakan ssh. Ini adalah salah satu tantangan yang tersedia di situs web yang mengajarkan cara masuk menggunakan SSH.
Kredensial:
nama pengguna & kata sandi: bandit0
host & porta: bandit.labs.overthewire.org , 2220
Saat Anda mengetik perintah berikut dan tekan enter:
$ ssh [email protected] -p 2220
Ini akan meminta Anda memasukkan kata sandi untuk tujuan otentikasi. Sekarang ketik kata sandi dan tekan enter:
Jika kata sandi yang diketik benar, Anda berhasil masuk ke server jarak jauh, dan terminal Anda akan terlihat seperti gambar di atas.
Sekarang Anda dapat menggunakan terminal mesin jarak jauh untuk mengetik dan menjalankan perintah Anda dan melakukan operasi yang diperlukan.
Saat Anda ingin mengakhiri sesi ssh, maka ketikkan perintah keluar :
$ exit
Anda akan mendapatkan pesan, “ Koneksi ditutup” saat Anda berhasil keluar dari sesi ssh.
Kesimpulan
Alasan utama di balik popularitas SSH adalah seluruh komunikasi antara server dan klien dienkripsi .
Kebanyakan orang menganggap menggunakan ssh itu rumit, dan mendapatkan pengetahuan tentang cara kerjanya tidak mudah dimengerti, tetapi sebenarnya lebih sederhana dari yang Anda pikirkan. Sekarang Anda memiliki pemahaman dasar tentang SSH, cara kerjanya, aspek keamanan di baliknya, dan mengapa SSH berperan penting dalam komunikasi.
Selanjutnya, jelajahi beberapa sumber daya untuk menjadi Sysadmin.