Buat kunci ssh:
$ ssh-keygen -t rsa –P ""
Memindahkan kunci ke kunci yang diotorisasi:
$ cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
bash: /home/user/.ssh/authorized_keys: No such file or directory
bash
shell
ssh
io-redirection
sknit
sumber
sumber
Jawaban:
Elemen jalan
/home/user/.ssh/
tidak ada; shell (bash
) memeriksa pengalihan (>>
) sebelum menjalankan perintah (cat
). Jika/home/user
memang ada dan Anda coba ini:Anda sekarang akan mendapatkan:
Karena file itu tidak dapat berada di tempat itu, jika
/home/user/.ssh/
tidak ada untuk memulai.Anda mengikuti beberapa instruksi yang mungkin melewatkan beberapa bit. Untuk membuat direktori:
Namun,
id_rsa.pub
tidak akan ada di sana. Ini akan berada di mana pun Anda menjalankanssh-keygen
perintah di tempat pertama.sumber
Pastikan Anda masuk sebagai pengguna yang ingin Anda buat kunci ssh untuk pertama kali (atau bersiaplah untuk memodifikasi jalur dalam perintah ke direktori home yang benar).
Maka cukup buat direktori:
Buat file menggunakan
cat
perintah yang Anda daftarkan di atas. Maka jangan lupa untuk mengatur izin dengan benar:Anda mungkin ingin memastikan bahwa direktori .ssh juga memiliki izin yang sesuai.
sumber
chmod 700 ~/.ssh
Jika memungkinkan saya selalu mendorong orang untuk menggunakan alat commandline
ssh-copy-id
.Jika Anda hanya ingin menyalin kunci publik SSH default Anda ke server jarak jauh, Anda cukup menjalankan perintah berikut:
Saya menunjukkan contoh lengkap aktual tentang bagaimana menggunakan alat ini dalam T&J ini berjudul: Tidak dapat berbagi koneksi ssh dengan rsync .
sumber
Ini juga bisa gagal jika, saat membuat kunci dengan
ssh-keygen
, Anda memberinya nama file. Saya memasukkan beberapa namamy-ssh-file-name
, dan itu menulis kunci/Users/MyUserName
bukan.ssh
folder. Jika Anda membiarkan nama file kosong, itu akan menulis.ssh
seperti yang diharapkan.sumber
-f ~/.ssh/custom-key-name