Petunjuk di help.ubuntu.com/community/SSH/OpenSSH/Configuring merekomendasikan untuk menonaktifkan otentikasi kata sandi sehingga "hanya mungkin untuk terhubung dari komputer yang telah Anda setujui secara khusus". Tetapi mereka tidak mengatakan bagaimana secara khusus menyetujui komputer. Bagaimana cara melakukannya?
Jawaban yang Diterima:
Pada setiap pengguna yang ingin Anda akses ke server, jalankan di terminal:
ssh-keygen
ssh-copy-id <username>@<serverIPorDNSname>
Ini akan menanyakan Anda di mana menyimpannya, defaultnya baik-baik saja. Ini akan meminta Anda untuk memasukkan kata sandi. Ini untuk mengenkripsi kunci untuk berjaga-jaga jika komputer dicuri atau disusupi. Jika Anda tidak menginginkan frasa sandi, kosongkan kedua perintah frasa sandi.
Perintah pertama membuat kunci ssh untuk pengguna saat ini yang menjalankannya. Perintah kedua ssh masuk ke server dan menambahkan kunci pengguna saat ini ke daftar server tentang siapa yang diizinkan untuk masuk. Karena ssh-copy-id menggunakan ssh, Anda harus melakukannya sebelum menonaktifkan login sandi.
Kunci SSH adalah dua bagian yang cocok. Satu setengah diberitahukan kepada semua orang, yang lain dirahasiakan. Menggunakan algoritma matematika, setengah publik dapat digunakan untuk mendekripsi data yang dienkripsi dengan kunci pribadi. Jika data berhasil didekripsi dengan kunci publik, Anda pasti tahu bahwa itu adalah bagian pribadi dari kunci yang mengenkripsinya. Jadi ketika Anda masuk dengan kunci ssh, klien mengirim pesan (dienkripsi menggunakan kunci pribadi) yang pada dasarnya mengatakan "biarkan saya masuk". Server memeriksa menggunakan kunci publik dan jika kunci publik ada dalam daftar komputer yang diizinkan, login berhasil.
ssh-copy-id adalah (menggunakan ssh) menyalin bagian publik ke daftar server dari kunci apa yang diizinkan untuk login (daftar ini disimpan di /home/cat /media/USB/stick/path/to/id_rsa.pub >>/home/<username>/.ssh/authorized_keys2
di server.)