Solusi 1:
Kunci SSH yang sama harus dapat digunakan dari banyak klien. Saya memiliki kunci SSH yang berbeda untuk jaringan yang berbeda dan sebenarnya disimpan di drive USB terenkripsi yang saya gunakan dari beberapa komputer berbeda tanpa masalah.
SSH sangat pilih-pilih tentang izin file, jadi pertama-tama saya akan memeriksa semua izin dari /home/{user}
sampai ke id_rsa
file itu sendiri.
SSH tidak terlalu peduli dengan izin menulis grup atau dunia, jadi pastikan Anda chmod go-w
direktori home Anda dan ~/.ssh
direktori untuk pemula. Saya juga akan memastikannya dimiliki oleh pengguna Anda chown ${USER}:${USER}
.
Untuk kunci SSHnya sendiri saya chmod 600
mereka...
Jika Anda mau, saya memiliki info tambahan tentang cara mengelola kunci SSH dalam jawaban saya untuk pertanyaan SSH lainnya.
Solusi 2:
Jika Anda mendapatkan izin ditolak dari akhir Github, bisa jadi Github tidak mengambil file kunci SSH yang Anda salin, melainkan default sistem. Cara mudah untuk mengatasinya adalah dengan ~/.ssh/config
file dan letakkan yang berikut di dalamnya:
Host github.com
Hostname github.com
User git
IdentityFile ~/.ssh/yourkeyfile
Ini akan memaksa klien SSH Anda untuk menggunakan kunci itu hanya untuk github.com.
Semoga ini bisa membantu.
Solusi 3:
Saya tahu ini sudah lama, tetapi saya ingin menunjukkan bahwa Anda juga perlu menyalin publik kunci ke klien kedua
(atau hitung ulang dengan ssh-keygen -y -f ~/.ssh/id_rsa_..> ~/.ssh/id_rsa...pub)
Dari [1]:
Metode Autentikasi Kunci Publik:"publickey"
Satu-satunya 'nama metode' autentikasi yang DIPERLUKAN adalah "publickey"
autentikasi. Semua implementasi HARUS mendukung metode ini;
namun, tidak semua pengguna perlu memiliki kunci publik, dan sebagian besar lokal
kebijakan tidak mungkin memerlukan otentikasi kunci publik untuk semua
pengguna dalam waktu dekat.Dengan metode ini, kepemilikan kunci privat berfungsi sebagai
autentikasi. Metode ini bekerja dengan mengirimkan tanda tangan yang dibuat
dengan kunci pribadi pengguna. Server HARUS memeriksa kuncinya
adalah autentikator yang valid untuk pengguna, dan HARUS memeriksa apakah
tanda tangan sah. Jika keduanya ditahan, permintaan autentikasi HARUS
diterima; jika tidak, itu HARUS ditolak. Perhatikan bahwa server MUNGKIN
memerlukan autentikasi tambahan setelah autentikasi berhasil.
Klien ssh Anda memulai autentikasi dengan mengirimkan kunci publik (tanda tangan yang direferensikan dalam huruf tebal di atas) ke server. Server, jika kunci publik adalah kunci yang diotorisasi, mengirimkan ID sesi acak kembali ke klien Anda. Klien Anda kemudian menyandikan ID sesi itu dengan kunci pribadi dan mengirimkannya kembali ke server. Server mendekode ID sesi tersebut menggunakan kunci publik, dan jika cocok dengan ID sesi asli, maka autentikasi klien Anda.
[1] [http://www.openssh.org/txt/rfc4252.txt][1]