GNU/Linux >> Belajar Linux >  >> Linux

Cara menggunakan Perintah ssh-keygen di Linux

Gunakan perintah ssh-keygen untuk menghasilkan pasangan kunci otentikasi publik/pribadi. Kunci otentikasi memungkinkan pengguna untuk terhubung ke sistem jarak jauh tanpa memberikan kata sandi. Kunci harus dibuat untuk setiap pengguna secara terpisah. Jika Anda membuat pasangan kunci sebagai pengguna root, hanya root yang dapat menggunakan kunci tersebut.

Contoh berikut membuat bagian publik dan pribadi dari kunci RSA:

# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:z6zTVQ/PJYt2o96DrVYClmfcqBG8Pdb8nzqY2m2HjeY root@geeklab
The key's randomart image is:
+---[RSA 2048]----+
|         .       |
|          o      |
|           * =   |
|          * O B .|
|        S. B + O.|
|         +. = = =|
|         .+ooB+.o|
|        ..oo=Bo+.|
|        .o.+*E=. |
+----[SHA256]-----+

Gunakan opsi –t untuk menentukan jenis kunci yang akan dibuat. Nilai yang mungkin adalah “rsa1 ” untuk protokol versi 1, dan “dsa “, “ecdsa “, atau “rsa ” untuk protokol versi 2.

Anda memiliki opsi untuk menentukan frasa sandi untuk mengenkripsi bagian pribadi kunci. Jika Anda mengenkripsi kunci pribadi Anda, Anda harus memberikan frasa sandi setiap kali Anda menggunakan kunci tersebut. Ini mencegah penyerang, yang memiliki akses ke kunci pribadi Anda dan dapat menyamar sebagai Anda dan mengakses semua komputer yang Anda akses, untuk dapat melakukannya. Penyerang masih perlu memberikan frasa sandi.

Perintah ssh-key dalam contoh menghasilkan dua kunci di direktori ~/.ssh:

$ ls ~/.ssh
id_rsa
id_rsa.pub

Untuk masuk ke, atau menyalin file ke, sistem jarak jauh tanpa memberikan kata sandi, salin kunci publik (~/.ssh/id_rsa.pub dalam contoh ini) ke ~/.ssh/authorized_keys pada sistem jarak jauh. Setel ~/.ssh jarak jauh izin direktori ke 700 . Anda kemudian dapat menggunakan alat ssh atau scp untuk mengakses sistem jarak jauh tanpa memberikan kata sandi.

Untuk mengizinkan beberapa koneksi, tambahkan kunci publik ke file otor_keys pada sistem jarak jauh alih-alih menyalinnya. Contoh berikut menambahkan kunci publik:

$ cat id_rsa.pub >> authorized_keys

Anda dapat meningkatkan keamanan sistem lebih jauh dengan menonaktifkan otentikasi kata sandi standar, dan menerapkan otentikasi berbasis kunci. Untuk melakukannya, setel opsi PasswordAuthentication ke no di /etc/ssh/sshd_config file konfigurasi sebagai berikut:

# vi /etc/ssh/sshd_config
PasswordAuthentication no

Ini melarang pengguna yang kuncinya tidak ada di authorized_keys file pengguna tertentu di server untuk terhubung melalui ssh. Sambungan ditolak dan pesan berikut muncul:

$ ssh host01
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

Menyetel opsi PasswordAuthentication ke ya, yang merupakan default, memungkinkan pengguna menggunakan kata sandi untuk otentikasi.


Linux
  1. Cara menggunakan perintah sed Linux

  2. Cara menggunakan perintah grep Linux

  3. Cara menggunakan perintah history di Linux

  1. Cara menggunakan Perintah Su di Linux

  2. Cara Menggunakan Perintah id di Linux

  3. Cara menggunakan perintah "layar" di Linux

  1. Cara Menggunakan Perintah Sudo di Linux

  2. Cara Menggunakan Linux di Command

  3. Cara Menggunakan Perintah ssh-keygen untuk mengkonfigurasi ssh tanpa kata sandi