Kunci SSH
Koneksi jarak jauh ke server selalu memerlukan otentikasi klien agar pihak yang tidak berwenang tidak dapat memperoleh akses. Metode dasar otentikasi adalah penggunaan kata sandi. Namun kata sandi memiliki satu kekurangan — dapat dibobol, terutama jika pemilik server tidak memperhatikan kompleksitas kata sandi.
Untuk koneksi SSH ke server Linux, metode alternatif yang direkomendasikan adalah otentikasi kunci SSH. Kunci-kunci ini berupa pasangan — kunci privat dan kunci publik. Kunci privat harus disimpan di lingkungan privat klien, sedangkan kunci publik dikirim ke server dan ditempatkan di authorized_keys file.
Metode otentikasi ini tidak berlaku untuk server Windows, karena koneksi RDP tidak memiliki fungsionalitas tersebut.
Penggunaan kunci SSH bukan persyaratan sistem pada platform Navixy, tetapi sangat disarankan bagi pemilik server demi alasan keamanan.
Jangan membagikan kunci privat kepada siapa pun yang tidak Anda percayai. Jika Anda perlu memberikan akses ke server kepada pihak ketiga, tidak perlu membagikan kunci milik Anda. Sebagai gantinya, Anda dapat meminta kunci publik mereka dan menambahkannya ke server Anda sementara, lalu menghapusnya setelah pekerjaan selesai.
Membuat kunci SSH di Linux
Jika workstation Anda menggunakan OS berbasis Linux, maka Anda perlu menggunakan paket openssh yang mungkin sudah terpasang atau memerlukan instalasi tambahan. Di Ubuntu dan Debian paket ini diinstal dengan perintah berikut:
apt -y install openssh-serverUntuk distro lain, perintahnya mungkin berbeda.
Untuk mulai menghasilkan kunci, jalankan perintah ini:
ssh-keygenAnda akan diminta memasukkan path berkas tempat kunci akan ditempatkan. Anda dapat meninggalkan lokasi default (dalam tanda kurung) dengan menekan Enter, atau menentukan lokasi dan nama berkas kustom.
Selanjutnya, Anda akan diminta memasukkan passphrase. Ini merupakan langkah keamanan tambahan untuk melindungi kunci Anda dari penggunaan oleh pihak ketiga jika kunci tersebut dikompromikan. Langkah ini bersifat opsional.

Setelah berhasil menghasilkan pasangan kunci, Anda akan melihat notifikasi:

Dengan lokasi default, kunci publik disimpan di /root/.ssh/id_rsa.pub, dan kunci privat disimpan di /root/.ssh/id_rsa.
Sekarang Anda perlu menyalin kunci publik ke server Anda, ke direktori pengguna atas nama siapa koneksi jarak jauh akan dilakukan. Misalkan nama penggunanya adalah navixy. Sambungkan ke server Anda dan edit berkas dengan editor teks apa pun, misalnya:
Cantumkan isi kunci publik Anda setelah ssh-rsa. Anda dapat menambahkan komentar singkat setelah kunci untuk menjelaskan tujuannya.

Simpan berkas.
Sekarang Anda dapat terhubung ke server menggunakan kunci SSH yang baru dibuat.
Setelah ini, Anda dapat menonaktifkan otentikasi kata sandi di server Anda.
Membuat kunci SSH di Windows
Jika Anda menggunakan Windows, klien yang paling umum untuk menghubungkan ke server via SSH adalah PuTTY. Ada juga banyak klien alternatif, tetapi semuanya pada dasarnya melayani tujuan yang sama, sehingga pilihan ada pada Anda.
Di Windows, pembuatan kunci SSH dilakukan menggunakan PuTTYgen utility yang disertakan dalam paket instalasi PuTTY.
Jalankan PuTTYgen dari menu Start.

Pastikan tipe kunci RSA terpilih dan klik Generate.

Selama proses pembuatan kunci, geser mouse beberapa kali di atas jendela aplikasi untuk menghasilkan nilai acak.

Setelah pembuatan kunci selesai, kunci publik akan ditampilkan di PuTTYgen, dan kunci privat akan disimpan dalam memori aplikasi. Untuk menyimpan kunci-kunci ini, klik Save public key dan Save private key. Tentukan direktori di PC Anda untuk menyimpan berkas kunci.

Saat menyimpan kunci privat, jika bidang Key passphrase tidak diisi, Anda akan diminta "Are you sure you want to save this keywithout a passphrase to protect it?". Klik Yes atau kembali ke jendela sebelumnya untuk menentukan passphrase.

Sekarang kunci publik harus disalin ke server Anda ke dalam authorized_keys file. File tersebut terletak di direktori pengguna atas nama siapa koneksi jarak jauh akan dilakukan. Misalkan nama penggunanya adalah navixy, dan dalam kasus ini lokasi berkas akan menjadi /home/navixy/.ssh/authorized_keys.
Gunakan klien transfer berkas apa pun untuk bekerja dengan berkas di server Linux jarak jauh. Di sini kami akan menjelaskan proses menggunakan WinSCP sebagai klien yang paling populer.
Buka berkas authorized_keys file via WinSCP untuk diedit.

Salin nilai kunci publik dari jendela PuTTYgen atau dari berkas yang sebelumnya disimpan. Kunci harus mulai dengan ssh-rsa. Jika beberapa kunci sudah tersimpan di authorized_keys file, tambahkan kunci baru setelahnya, mulai pada baris baru.

Simpan berkas.
Sekarang Anda dapat terhubung ke server Anda via PuTTY menggunakan berkas kunci privat. Anda perlu menentukan path ke berkas tersebut di PC Anda. Untuk melakukan ini, pilih path yang diperlukan di Connection - SSH - Auth - Credentials section (new version PuTTY) or Connection - SSH - Auth (old version), in Private key for authentication field.

Tentukan nama pengguna dan alamat server (mis. navixy@myserver.domain.com) di Session tab dan sambungkan ke server Anda. Jika semuanya dilakukan dengan benar, koneksi akan terjalin tanpa perlu memasukkan kata sandi.
Kunci SSH di solusi cloud
Saat Anda menerapkan mesin virtual ke layanan cloud seperti AWS, MS Azure dan sejenisnya, Anda dapat mengeluarkan kunci SSH pada saat membuat mesin, atau menambahkan kunci yang sudah ada jika sebelumnya telah dibuat. Ketika Anda melakukan ini, layanan cloud akan secara otomatis memasukkan kunci publik ke authorzed_keys pengguna server. Yang perlu Anda lakukan setelah server dideploy adalah melakukan koneksi SSH menggunakan kunci privat.
Meskipun platform cloud memungkinkan Anda membuat kunci SSH, mereka tidak menyimpan bagian privat di pihak mereka. Setelah diunduh, kunci privat harus disimpan dengan aman, karena jika hilang akses ke server akan menjadi tidak mungkin.
Menonaktifkan otentikasi kata sandi
Setelah Anda berhasil mengonfigurasi otentikasi kunci, Anda tidak perlu mempertahankan otentikasi kata sandi. Demi alasan keamanan, Anda dapat menonaktifkannya.
Sambungkan ke server via SSH dan buka berkas sshd_config untuk diedit, mis. dengan editor Vi:
Temukan parameter PasswordAuthentication di berkas dan atur menjadi no:
Simpan berkas. Restart layanan sshd:
Sekarang Anda hanya dapat menjalin koneksi jarak jauh ke server Anda via SSH menggunakan kunci SSH yang sebelumnya ditambahkan. Otentikasi kata sandi dinonaktifkan.
Last updated
Was this helpful?