SSH adalah singkatan dari "Secure Shell" dan merupakan protokol terenkripsi yang digunakan untuk masuk dan mengelola server jarak jauh. SSH juga mendukung berbagai mekanisme otentikasi. SSH menggunakan otentikasi berbasis kata sandi dan otentikasi berbasis kunci publik untuk koneksi aman antara klien dan server. Otentikasi berbasis kunci SSH lebih aman daripada otentikasi berbasis kata sandi karena kunci sangat sulit ditebak atau dipecahkan menggunakan daya komputasi yang tersedia saat ini.
Dalam tutorial ini, kami akan menunjukkan cara mengatur otentikasi berbasis kunci SSH di server Ubuntu 18.04.
Prasyarat
- Dua VPS Ubuntu 18.04 baru di Platform Cloud Atlantic.Net.
- Kata sandi root dikonfigurasi di kedua server.
Langkah 1 – Buat Server Cloud Atlantic.Net
Pertama, masuk ke Server Cloud Atlantic.Net Anda. Buat server baru, pilih Ubuntu 18.04 sebagai sistem operasi dengan setidaknya 2GB RAM. Hubungkan ke Server Cloud Anda melalui SSH dan masuk menggunakan kredensial yang disorot di bagian atas halaman.
Setelah Anda masuk ke server Ubuntu 18.04 Anda, jalankan perintah berikut untuk memperbarui sistem dasar Anda dengan paket terbaru yang tersedia.
apt-get update -yapt-get upgrade -y
Langkah 2 – Buat Kunci SSH di Mesin Klien
Pertama, masuk ke mesin klien Anda dan buat pasangan kunci SSH baru dengan menjalankan perintah berikut:
ssh-keygen -t rsa
Anda harus menekan Enter untuk menerima lokasi file default dan memberikan frasa sandi untuk menambahkan lapisan keamanan ekstra, seperti yang ditunjukkan di bawah ini:
Membuat pasangan kunci rsa publik/pribadi.Masukkan file untuk menyimpan kunci (/root/.ssh/id_rsa):Masukkan frasa sandi (kosongkan tanpa frasa sandi):Masukkan kembali frasa sandi yang sama:Identifikasi Anda telah disimpan di / root/.ssh/id_rsa.Kunci publik Anda telah disimpan di /root/.ssh/id_rsa.pub.Sidik jari kuncinya adalah:cd:58:c4:35:60:6f:a4:2e:f0:b7:42 :c5:20:78:86:b2 [email protected] seni acak kuncinya adalah:+--[ RSA 2048]----+| Hai. ..+o+ || . o o. =.+ . || o o. =o || E o B . || S = || . o . || . . || . || |+-----------------+
Perintah di atas akan menghasilkan pasangan kunci RSA 2048-bit dengan frasa sandi yang aman untuk mencegah pengguna yang tidak sah masuk.
Anda dapat melihat kunci publik dan pribadi yang dihasilkan dengan perintah berikut:
ls -l .ssh/id_rsa*
Anda akan melihat output berikut:
-rw------- 1 root root 1766 Nov 1 11:03 .ssh/id_rsa-rw-r--r-- 1 root root 401 Nov 1 11:03 .ssh/id_rsa.pubPada titik ini, Anda memiliki kunci publik dan pribadi yang dapat Anda gunakan untuk mengautentikasi dengan server Ubuntu Anda.
Langkah 3 – Salin Kunci Publik ke Server Ubuntu
Selanjutnya, Anda perlu menyalin kunci publik dari mesin klien ke server Ubuntu 18.04 Anda. Anda dapat menyalin kunci publik dengan utilitas ssh-copy-id seperti yang ditunjukkan di bawah ini:
ssh-copy-id [email protected]Anda akan melihat output berikut:
Keaslian host '192.168.0.102 (192.168.0.102)' tidak dapat ditentukan. Sidik jari kunci ECDSA adalah f7:9c:72:63:33:ac:d6:49:26:9c:af:c6 :ff:11:27:01.Apakah Anda yakin ingin melanjutkan koneksi (ya/tidak)? yaKetik “ya ” dan tekan ENTER untuk melanjutkan. Anda akan melihat output berikut:
/usr/bin/ssh-copy-id:INFO:mencoba masuk dengan kunci baru, untuk menyaring yang sudah diinstal/usr/bin/ssh-copy-id:INFO:1 key(s) tetap harus diinstal -- jika sekarang Anda diminta untuk menginstal kata sandi [email protected] baru:Selanjutnya, Anda akan diminta untuk memasukkan nama pengguna dan kata sandi jarak jauh. Setelah otentikasi berhasil, konten kunci publik ~/.ssh/id_rsa.pub akan ditambahkan ke file ~/.ssh/authorized_keys pengguna jarak jauh seperti yang ditunjukkan di bawah ini:
Jumlah kunci yang ditambahkan:1Sekarang coba masuk ke mesin, dengan: "ssh '[email protected]'"dan periksa untuk memastikan bahwa hanya kunci yang Anda inginkan yang ditambahkan.Langkah 4 – Nonaktifkan Otentikasi Kata Sandi SSH
Selanjutnya, masuk ke mesin server Ubuntu 18.04 Anda dan nonaktifkan otentikasi berbasis kata sandi SSH untuk menambahkan lapisan keamanan ekstra ke server Anda.
Anda dapat menonaktifkan otentikasi berbasis kata sandi dengan mengedit file /etc/ssh/sshd_config:
nano /etc/ssh/sshd_configTemukan baris berikut dan ubah nilainya menjadi “tidak”:
PasswordAuthentication noChallengeResponseAuthentication noUsePAM noSimpan dan tutup file, lalu restart layanan SSH untuk menerapkan konfigurasi:
systemctl restart sshLangkah 5 – Masuk ke Server menggunakan Kunci SSH
Pada titik ini, otentikasi berbasis kunci SSH dikonfigurasi. Sekarang saatnya masuk ke mesin server Ubuntu 18.04 dengan kunci publik.
Anda dapat login ke server Ubuntu 18.04 Anda hanya dengan menjalankan perintah berikut:
ssh [email protected]Jika Anda masuk untuk pertama kali, Anda akan diminta seperti yang ditunjukkan di bawah ini:
Keaslian host '192.168.0.102 (192.168.0.102)' tidak dapat ditentukan. Sidik jari kunci ECDSA adalah f7:9c:72:63:33:ac:d6:49:26:9c:af:c6 :ff:11:27:01.Apakah Anda yakin ingin melanjutkan koneksi (ya/tidak)? yaKetik Ya dan tekan Enter kunci untuk melanjutkan. Selanjutnya, Anda akan diminta untuk memasukkan kata sandi untuk kunci pribadi Anda seperti yang ditunjukkan di bawah ini:
Masukkan kata sandi untuk kunci '/root/.ssh/id_rsa':Berikan frasa sandi kunci pribadi Anda dan tekan Enter untuk masuk ke server Anda.
Kesimpulan
Dalam tutorial di atas, kita belajar cara mengatur otentikasi berbasis kunci SSH dengan frasa sandi di Ubuntu 18.04. Koneksi antara mesin klien Anda dan mesin server Ubuntu 18.04 sekarang sangat aman. Anda juga dapat menggunakan kunci yang sama untuk server jarak jauh lainnya. Jika Anda siap untuk memulai autentikasi berbasis kunci SSH, coba hosting VPS dengan Atlantic.Net hari ini.
Mengamankan Server Web Apache Anda dengan Keamanan Mod Cara Menginstal dan Mengonfigurasi ModEvasive dengan Apache di Ubuntu 18.04Linux