Bagaimana Cara Kerja SSH?

ssh vs ftp
Shares

Baik seorang blogger atau pemilik bisnis besar, menjaga reputasi Anda di mata pelanggan adalah hal yang sangat penting. Melakukan langkah-langkah proaktif untuk menjaga keamanan situs web Anda dari potensi penyusupan adalah suatu keharusan. Ada berbagai metode perlindungan yang bisa Anda terapkan, dan salah satunya adalah dengan menggunakan protokol SSH.


Apa itu SSH?

SSH adalah kependekan dari Secure Shell, yang merupakan standar protokol komunikasi antara klien dan server yang digunakan dalam jaringan komputer berbasis TCP/IP. Melalui Secure Shell, Anda dapat masuk ke komputer dari jarak jauh dan menjalankan perintah. Ini adalah model klien-server yang umum digunakan untuk koneksi jarak jauh. Yang membedakan SSH dari pendahulunya, yaitu TELNET, adalah enkripsi yang kuat yang digunakan dalam koneksi SSH.

Mengamankan data yang Anda kirim sangat penting, terutama ketika berada di jaringan yang tidak aman. Menggunakan protokol shell jarak jauh yang tidak aman dapat meningkatkan risiko, itulah sebabnya mengatur lapisan otentikasi pengguna menjadi populer dalam penggunaan SSH.

Ada dua kelompok utama pengguna Secure Shell. Administrator jaringan menggunakannya untuk mengelola server dari jarak jauh, sementara pelanggan hosting mengandalkan koneksi SSH untuk mengelola server mereka dengan metode otentikasi khusus. SSH memungkinkan Anda untuk mengkonfigurasi mesin jarak jauh, memperbaiki masalah pada router yang mungkin terjadi, atau mengakses database dari lokasi yang berjauhan. Protokol ini juga memfasilitasi penggunaan email dan transfer file yang aman.

Secure Socket Shell, dengan kemampuan enkripsi yang kuat, menjadikan tugas sehari-hari dalam mengelola peralatan jarak jauh lebih aman. Ini membantu melindungi situs web Anda dari serangan luar, seperti upaya pencurian kata sandi atau upaya untuk menyamar sebagai server DNS.

Anda dapat mengakses VPS atau server khusus Anda melalui klien SSH. Ini memungkinkan Anda untuk melakukan berbagai tugas, seperti mengedit file sistem, menginstal perangkat lunak baru, melihat, memindahkan, menyalin, dan mengedit file di server, serta membuat atau memulihkan cadangan data.

Untuk mengetahui perbedaan antara VPS dan dedicated server, baca artikel ini. Anda akan mengetahui kapan investasi pada solusi khusus layak dilakukan dan kapan solusi virtual sudah cukup.


Mekanisme Protokol SSH

Anda sudah familiar dengan konsep protokol transfer file SSH. Melalui aplikasi klien shell yang aman, Anda dapat dengan mudah mengakses dan bekerja di sistem jarak jauh seolah-olah Anda berada di sistem lokal. Secure Shell (SSH) merupakan solusi terbaik untuk mengatasi kerentanan yang dimiliki oleh protokol Telnet. SSH beroperasi dalam arsitektur client-server, dimana servernya mendengarkan pada port standar 22. Tingkat keamanannya sangat tinggi, sehingga memungkinkan dua komputer untuk berkomunikasi tanpa risiko kebocoran data.

Dasar dari seluruh koneksi SSH adalah algoritma pertukaran kunci enkripsi. SSH memungkinkan otentikasi klien melalui pertukaran kunci simetris saat terhubung ke sistem operasi jarak jauh yang berbeda. Selain itu, protokol SSH juga menyediakan:

  • Pilihan untuk otentikasi berbasis kata sandi.
  • Kemampuan untuk membuat terowongan koneksi TCP di dalam koneksi SSH.
  • Dukungan untuk mengirim sesi X-Window secara aman.
  • Alat transfer file SCP yang aman.
  • Integrasi dengan berbagai metode otentikasi eksternal, termasuk Kerberos, sertifikat digital, dan SmartCards.

Dengan demikian, Secure Shell (SSH) melindungi pengguna dari berbagai jenis serangan, termasuk:

  • Upaya sniffing dan spoofing sesi.
  • Serangan pemalsuan server DNS.
  • Penyusupan IP sumber (mengelabui sistem tepercaya).
  • Penyusupan IP spoofing (meniru server jarak jauh).
  • Upaya peretasan kata sandi.

Protokol SSH memiliki dua varian: SSHv1 yang lebih tua dan SSHv2 yang lebih baru, yang dikembangkan oleh Internet Engineering Task Force (IETF). Kedua varian ini berbeda dalam metode enkripsi yang digunakan, tetapi prinsip dasarnya tetap sama, yakni menggunakan kriptografi kunci publik untuk klien dan server.

Khususnya, fokus akan ditempatkan pada SSHv2 dalam tulisan ini, dengan penekanan pada perbedaan utamanya dibandingkan dengan versi sebelumnya. SSHv1 kehilangan popularitasnya dengan cepat karena rentan terhadap serangan peretasan sesi, yang tidak mungkin berhasil dengan tingkat enkripsi yang canggih yang dimiliki oleh SSHv2.


Otorisasi Klien SSH dan Server SSH

SSH server

Setiap sistem komputer yang menggunakan protokol klien SSH terbaru memiliki file kunci publik RSA atau DSA yang unik. Pada SSHv1, server hanya menggunakan kunci RSA. Kunci SSH ini memiliki panjang minimal 1024 bit. Dalam SSHv1, server menghasilkan sepasang kunci publik-pribadi yang secara berkala ditukar, dengan panjang minimal 768 bit. Saat koneksi SSH dibuat, klien menerima dua jenis kunci dari server: satu adalah kunci host, dan yang lain adalah kunci server.

Selama proses koneksi SSH, klien menerima kunci publik server, yang terdiri dari kunci permanen 1024-bit dan kunci 768-bit yang berubah secara berkala. Klien membandingkan kunci permanen ini dengan yang disimpan di dalamnya dan memastikan bahwa mereka sesuai untuk memastikan koneksi ke server SSH yang benar.

Kemudian, klien mengenkripsi nomor menggunakan kunci publik yang diterima dari server dan mengirimkan kembali nomor yang telah dienkripsi tersebut. Server, selanjutnya, mendekripsi nilai tersebut dengan menggunakan kunci pribadinya. Nilai yang dihasilkan akan menjadi kunci algoritma simetris yang digunakan untuk mengamankan sesi komunikasi yang berlangsung. Algoritme yang paling umum digunakan untuk mengenkripsi sesi ini antara lain Blowfish dan Triple DES.

Di sisi lain, dalam SSHv2, kunci server tidak dibuat. Sebaliknya, algoritma Diffie-Hellman digunakan untuk menghasilkan kunci sesi secara otomatis. SSHv2 mendukung berbagai algoritma enkripsi seperti AES (128, 192, 256 bit), Blowfish, Triple DES, CAST128, dan Arcfour. Selain itu, integritas sesi dijaga melalui salah satu algoritma hashing seperti SHA-1 atau MD5.

Setelah berhasil diotorisasi, pengguna dapat mengakses server jarak jauh dan memulai transfer data. Metode otentikasi pengguna pada dasarnya melibatkan pertukaran data dengan menggunakan kunci publik serta otorisasi rhhosts.


Otorisasi Rhost

Dalam konteks ini, kita mengasumsikan bahwa server SSH telah mencatat entri dalam file/etc/ hosts. equiv atau /etc /shosts.equiv, atau bahkan dalam file .shosts atau .rhosts. Di dalamnya, terdapat daftar komputer klien dan nama pengguna yang diizinkan. Jika entri yang sesuai dengan file tersebut ada, akses aman akan diberikan secara otomatis tanpa perlu memasukkan kata sandi.

Otorisasi kunci publik

Kunci publik pengguna disimpan dalam Server Secure Shell dengan algoritma RSA. Ketika koneksi pertama kali dibuat, klien memilih kunci publik yang ingin digunakan. Server kemudian mengirim nomor acak yang telah dienkripsi menggunakan kunci publik yang dipilih oleh klien. Untuk membukanya, klien harus menggunakan kunci rahasianya yang sesuai dengan kunci publik yang digunakan.

Jika langkah ini berhasil, klien akan mengenkripsi nomor acak tersebut dengan kunci pribadinya sendiri. Server harus mendekripsinya menggunakan kunci publik yang sesuai. Jika server berhasil mendekripsi nomor yang sebelumnya telah dikirimkan kepada klien (yang dienkripsi menggunakan kunci publik klien), maka otorisasi klien dianggap sukses.

Dalam SSHv2, proses enkripsi dan dekripsi untuk otentikasi kunci publik berbeda. Pertama, SSHv2 menggunakan algoritma RSA dan DSA. Ketika server mengirimkan nomor acak terenkripsi ke klien, server menandatangani kunci sesi yang telah disepakati dengan menggunakan algoritma Diffie-Hellman dan kunci pribadi. Server SSH mengonfirmasi koneksi dengan menggunakan kunci publik pengguna.

Selain itu, sistem berbasis SSHv2 dapat memanfaatkan metode otentikasi eksternal seperti Kerberos, X.509, dan SmartCards.

Setelah melalui langkah-langkah otorisasi pengguna ini, Anda dapat mulai bekerja secara remote pada komputer tersebut. Ada dua mode yang tersedia: mode pertama adalah eksekusi perintah SSH non-interaktif yang diinisiasi dari sisi klien. Mode kedua, yang lebih canggih, memungkinkan penyediaan shell jarak jauh kepada pengguna, yang merupakan mekanisme untuk mengakses komputer secara remote.

Bagaimana cara menggunakan Secure Shell?

Terdapat berbagai program yang bisa Anda gunakan untuk menghubungkan klien SSH ke server. Beberapa yang paling umum adalah PuTTY dan OpenSSH. Selain itu, ada banyak program lain yang tersedia untuk berbagai sistem operasi. Contohnya, SSHdos untuk DOS, NiftyTelnet SSH untuk macOS, MindTerm untuk Java, MSSH, WinSCP, TTSSH, dan SecureCRT untuk Windows.

Konfigurasi PuTTY

Untuk memulai koneksi, buka tab ‘Sesi’. Di dalam kolom ‘Nama Host yang Dituju’, masukkan nama domain yang telah Anda konfigurasi atau alamat IP server. Pada bagian ‘Jenis Koneksi’, pilih opsi ‘SSH’, lalu klik ‘Buka’, dan masukkan informasi login serta password Anda. Sekarang, Anda sudah dapat mengakses server menggunakan protokol SSH.

Untuk mengelola server, gunakan perintah-perintah berikut di konsol shell:

  • ‘find’ untuk mencari file berdasarkan nama;
  • ‘ls’ untuk menampilkan daftar direktori atau file;
  • ‘mkdir’ untuk membuat direktori baru;
  • ‘mv’ untuk memindahkan direktori atau file;
  • ‘cp’ untuk menyalin direktori atau file;
  • ‘rm’ untuk menghapus direktori atau file.

Sebaiknya pastikan opsi ‘Logging’ dimatikan dan ‘Tanyakan Pengguna Setiap Saat’ tidak dicentang. Di tab ‘Terminal’, pilih:

  • Mode bungkus otomatis yang seharusnya sudah aktif;
  • Gunakan warna latar belakang untuk membersihkan layar;
  • Gema lokal diatur sebagai ‘Otomatis’;
  • Pengeditan garis lokal diatur sebagai ‘Otomatis’.

Di tab ‘Keyboard’, biarkan opsi tetap pada pengaturan default. Jika Anda perlu menggunakan karakter aksen dalam bahasa lain, aktifkan kedua opsi terakhir di bawah ‘Aktifkan Fitur Keyboard Tambahan’. Pada tab ‘Tampilan’, Anda dapat memilih jenis font yang sesuai dengan preferensi Anda. Anda dapat melakukan perubahan dengan mengklik opsi ‘Ubah’, yang memungkinkan Anda menyesuaikan jenis font, gaya, dan ukuran.

Di tab ‘Terjemahan’, disarankan untuk memilih ‘Gunakan Font dalam Mode ANSI dan OEM’. Selanjutnya, di tab ‘Koneksi’, pilih opsi ‘xterm’, dan masukkan nama pengguna Anda di kolom ‘Nama Pengguna Login Otomatis’. Jika Anda ingin menggunakan protokol SSHv2, Anda dapat mengubahnya di opsi ‘SSH’ dan memilih versi 2.


Kesimpulan

Cara yang lebih umum untuk terkoneksi dengan server adalah melalui FTP (File Transfer Protocol) dan varian yang lebih aman, yaitu FTPS. Namun, dengan FTP atau FTPS, Anda hanya dapat menyalin file ke server dan mengunduhnya ke perangkat Anda. Sebaliknya, sesi SSH memberikan lebih banyak kemungkinan daripada sekadar tingkat keamanan transportasi. Anda dapat bekerja langsung di server dan menjalankan berbagai perintah.

FTP client

Dengan memanfaatkan teknologi Secure Shell, Anda tidak perlu mengedit file secara lokal. Sebaliknya, Anda dapat mengoperasikannya langsung di server, yang merupakan solusi yang lebih praktis. Protokol SSH juga bertanggung jawab atas perlindungan koneksi dengan mengenkripsi melalui koneksi proxy.

Kemampuan tinggi dalam hal keamanan dan potensi yang besar menjadikan Secure Shell sebagai pilihan terbaik untuk mengelola hosting khusus atau VPS. Karena keamanan adalah faktor kunci, saya yakin Anda telah memahaminya. Oleh karena itu, selain memilih otentikasi SSH yang sesuai, penting juga untuk memilih penyedia hosting yang tepat.

Salah satu penyedia hosting teraman yang patut dipertimbangkan adalah UltaHost. Mereka mengutamakan keamanan dengan lapisan perlindungan yang meliputi berbagai ancaman, mulai dari Malware hingga DDoS. Dukungan perangkat keras terbaru dengan NVme SSD menjadikan UltaHost sebagai pemimpin dalam layanan hosting yang aman. Di UltaHost, Anda dapat memilih otentikasi server menggunakan protokol Secure Shell dan FTPS.

UltaHost tidak hanya menjaga keamanan online Anda, tetapi juga melindungi reputasi situs web Anda dan pengunjung dari berbagai ancaman cyber. Mereka secara rutin melakukan pemindaian untuk deteksi malware dan kerentanan lainnya pada situs web Anda.

Namun, UltaHost bukan hanya tentang hosting yang aman. Mereka juga memberikan dukungan 24/7 dari tim profesional. Infrastruktur mereka sangat fokus pada otomatisasi dan kinerja yang optimal. Jadi, mari kita telusuri perbedaannya! Anda dapat melihat berbagai rencana yang mereka tawarkan untuk kebutuhan Anda.

Previous Post
What is DNS

Apa itu DNS dan bagaimana cara kerjanya?

Next Post
How to Get All Keys in Redis

Bagaimana Cara Mendapatkan Semua Kunci di Redis?

Related Posts
 25% off   Enjoy Powerful Next-Gen VPS Hosting from as low as $5.50