Saya baru saja memutakhirkan Sistem Ubuntu saya dari 15.10 ke 16.04 dengan sepenuhnya menghapus partisi Ubuntu 15 dari sistem saya.
Setelah menginstal Ubuntu 16.04 saya membuat kembali kunci ssh saya karena saya lupa untuk mencadangkannya, tetapi setiap kali saya mencoba untuk menggunakan ssh saya mendapatkan sign_and_send_pubkey: signing failed: agent refused operation
ini sedikit mengganggu karena memungkinkan saya melalui ke server ssh saya, tetapi git menolak untuk mendorong kode menggunakan ssh.
Saya sudah mendorong tombol ke server dengan menggunakan ssh-copy-id
.
Server yang saya hubungkan adalah Server Ubuntu 16.04 yang ditingkatkan melalui do-release-upgrade
perintah. Bantuan apa pun akan sangat dihargai.
l
.L
dari font "Liberation Mono" :-(ssh-add
selain untuk menggunakanssh-add -l
karena Anda dapat berakhir dengan terlalu banyak entri dissh-agent
. Tidak perlu menambahkan secara manual.Dash > Startup Applications
menunjukkan bahwassh-agent
sudah berjalan dan secara otomatis akan mendeteksi file seperti~/.ssh/id_rsa
dan~/.ssh/id_rsa.pub
. Untuk membuktikan ini, Anda dapat menggunakanssh-add -l
sebelum dan sesudah menggunakanssh-keygen
. Anda akan melihat bahwa ia memonitor file sehingga Anda tidak perlu menambahkannya secara manual.ssh-add -d
danssh-add -D
untuk melakukan penghapusan manual. Hanya menghapus file kunci~/.ssh/id_rsa
dan~/.ssh/id_rsa.pub
danssh-agent
kemauan pemberitahuan. Untuk membuktikan bahwa Anda dapat melakukanssh-add -l
sebelum dan sesudah menghapus file-file utama.Solusi Sederhana
Saya memiliki masalah yang sama di Ubuntu 18.04. Itu semua tentang izin kunci pribadi sisi klien .
Izin file terlalu terbuka (0644).
Perintah berikut menyelesaikannya:
sumber
Saya memiliki masalah yang sama (gejala yang sama)
... tetapi solusinya berbeda.
Masalahnya berasal dari penggunaan GNOME-KEYRING. Posting yang merujuk pada solusi dapat dibaca di sini .
Pendeknya:
Halaman ini memberikan perincian lain jika ada masalah serupa dengan solusi yang berbeda.
sumber
Permissions 0775 for '.ssh/id_rsa' are too open
. Solusi sederhana di sini adalahchmod 600 .ssh/id_rsa
.SSH_AUTH_SOCK=0
sebelumnyagit pull
dan mendapat peringatan izin seperti Matt.Saya mendapatkan
sign_and_send_pubkey: signing failed: agent refused operation
ketika masuk ke beberapa server, membaca jawaban VonC pada Stack Overflow untuk informasi lebih lanjut tentang bug terkait, solusi bagi saya adalah menghapus gnome-keyring, menghapus identitas dari ssh-agent dan reboot.Kemudian semua kunci saya mulai bekerja dengan sempurna.
MEMPERBARUI:
Solusi sementara tanpa menghapus instalan keyring
Jika Anda ingin menjaga gnome-keyring dan Anda memiliki
agent refused operation
kesalahan, gunakan:atau gunakan
SSH_AUTH_SOCK=0 ssh your-server
Solusi permanen tanpa menghapus instalan keyring
Jika Anda bisa, gnome-keyring kompatibel dengan kunci RSA 4096 bit, jadi buat kunci baru dengan:
Unggah kunci publik ke server
Tambahkan kunci ssh ke agen
Ini seharusnya berfungsi tanpa peretasan tambahan dan gnome-keyring dapat tetap diinstal.
(-C [nama pengguna] adalah opsional, tetapi diperlukan oleh penyedia seperti Google Cloud)
sumber
ssh-agent
. Anda masih dapat memulai ssh-agent dan memasukkan kata sandi kunci pribadi di konsol / shell.Setelah memutakhirkan ke Ubuntu 18.04 saya mendapat kesalahan yang sama
sign_and_send_pubkey: signing failed: agent refused operation
. Ternyata itu disebabkan oleh izin kunci ssh yang terlalu terbuka. Perintah berikut memperbaiki masalah untuk sayachmod 600 .ssh/id_rsa
sumber
Di sistem saya (juga Ubuntu 16.04, mencoba terhubung ke github), saya punya file id_ed25519 di folder .ssh saya yang membuat
ssh-add
gagal:Setelah menghapus file
~/.ssh/id_ed25519*
(tidak membutuhkannya lagi, itu dari tes sebelumnya) semuanya berjalan baik lagi.sumber
Could not add identity "~/.ssh/id_ed25519": communication with agent failed
:, agen berjalan dan dikonfigurasi sejauh yang saya tahu.ssh-agent
soket polos . Agen ssh polos mampu menangani kunci ED25519 sedangkan agen otentikasi gnome tidak (selain masalah lain yang disebabkannya). Lihat jawaban sam askubuntu.com/a/835114/167846 atau Mike askubuntu.com/a/762968/167846Terjadi pada saya karena kunci pribadi saya memiliki kata sandi. Harus menjalankan
ssh-add
dan kemudian meminta kata sandi dan ditambahkan dengan benar. Namun, sekarang tidak meminta kata sandi saya ketika ssh'ing ke mesin.sumber
Saya baru saja menginstal Ubuntu16.04 dan saya mengalami masalah serupa. Ketika saya mencoba mengkloning repositori saya dari Github setelah saya menyalin kunci publik saya ke github (sesuai petunjuk di github.com ) dan setelah melakukan pemeriksaan berikut ( direkomendasikan di github.com ):
Saya disambut oleh yang berikut ini:
Untuk memperbaikinya dengan cepat, tanpa menghapus apa pun atau mengubah konfigurasi startup saya, saya hanya mengetik yang berikut ini di terminal:
Kemudian klon bekerja. Saya kemudian memulai lagi daemon yang berhenti dengan mengetik:
Kemudian, untuk mengubah keadaan secara lebih permanen, saya mengikuti saran di sini
sumber
Setelah memutakhirkan Fedora 26 hingga 28, saya menghadapi masalah yang sama. Dan tidak ada file log
pesan kesalahan tidak menunjukkan masalah yang sebenarnya. Masalah diselesaikan oleh
sumber
Menambahkan komentar karena saya memiliki masalah yang sama dengan kunci ed25519. Masalahnya memang gnome-keyring. Untuk memperbaiki ini saya lakukan hal berikut:
ssh-agent -s
)sumber
Ini akhir tahun 2018, dan bug ini, atau variasi dari itu, masih mengganggu Xubuntu 16.04, dan lebih dari kemungkinan rasa Xenial lainnya. Saya tidak akan terkejut jika ada di 18,04 juga! Sudah ada dalam beberapa bentuk sejak 2009, dan Karmic Koala. Telah memengaruhi Redhat, Debian, dan Ubuntu. Jangan mengambil kata saya untuk itu, lihat bugtrackers publik:
https://bugs.launchpad.net/ubuntu/+source/gnome-keyring/+bug/470456
Dan pada bug itu, Anda juga menemukan daftar 3 lainnya:
Referensi:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=523322
https://bugzilla.redhat.com/show_bug.cgi?id=508286
https://bugzilla.gnome.org/show_bug.cgi?id=576700
Dalam kasus saya, gejala yang paling jelas adalah ketidakmampuan untuk menggunakan kunci ssh dengan frasa sandi. Ini mungkin mempengaruhi yang tanpa, karena kerusakan mencegah kunci ssh dari memuat sama sekali! Dan saya tidak punya masalah izin, itu semua gnome-keyring. Kunci saya (ya ditolak beberapa, untuk server SSH yang berbeda!) Semuanya 600 (untuk pemilik, tidak ada untuk grup atau lainnya) sebagaimana dinyatakan dalam banyak jawaban tentang itu. Jadi tidak ada yang bisa saya ubah di sana.
Di Xubuntu, ada cara untuk menonaktifkan item startup. Biasanya juga dimungkinkan di Unity / Gnome / KDE, tapi saya belum menginstalnya, jadi tidak bisa memberikan langkah-langkah spesifik. Tidak yakin dengan desktop lain. Daripada menonaktifkan agen SSH, agen GPG, dan item lain dari Gnome yang menyebabkan ini, dan bug terkait lainnya, saya mematikan semua item startup Gnome. Mungkin berlebihan atau bukan pilihan bagi sebagian orang, tetapi SSH kembali bekerja dengan sempurna pada reboot berikutnya!
Cuplikan layar GUI yang dijelaskan di atas:
Jadi, karena saya memberikan perbaikan saya di atas, saya berharap seseorang akan memperbaikinya.
Ubuntu terbukti gagal memencetnya untuk selamanya, karena ada banyak tiket untuk beberapa rilis yang mengklaim sudah diperbaiki, dan banyak lagi yang mengatakan "regresi", sudah kembali.
Debian mungkin ingin menyepak (mencuci tangan mereka) karena itu bukan mereka, hulu adalah Gnome.
Redhat mungkin hanya memiliki perbaikan yang tersedia untuk pelanggan yang membayar. Karena, secara historis, Redhat adalah perusahaan tunggal terbesar dari pengembang Gnome berbayar, yang pada awalnya terlihat murah hati. Sampai Anda menyadari itu berarti mereka memiliki insentif keuangan untuk tidak pernah melakukan perbaikan seperti ini ke dalam versi gratis, untuk tetap menjual langganan Redhat.
Gnome mungkin adalah orang-orang yang dapat memperbaikinya dengan upstream termudah, dan yang lain dapat menguji dan mengemasnya, tanpa menulis satu baris kode pun. Tetapi tiket yang saya baca mengatakan paket itu telah merana selama bertahun-tahun tanpa pengelola resmi! Dan dua orang yang secara sukarela melakukannya sekarang (terima kasih) hampir sama sibuknya merancang pengganti. Mengapa tidak memperbaiki ban kempes bahkan jika itu membutuhkan waktu satu tahun (sudah satu dekade!) Daripada menciptakan kembali roda terlebih dahulu ?!
sumber
bekerja untukku. Tapi pastikan
sedang berlari.
sumber
Dalam kasus saya, masalah ini disebabkan oleh GNOME Keyring. Untuk menonaktifkan kemampuan SSH gnome-keyring tanpa langsung menghapusnya (yang merusak banyak hal), ikuti petunjuk ini :
dan mulai kembali sesi. Sekarang Anda dapat menjalankan ssh-agent tanpa campur tangan gnome-keyring.
sumber
Saya mencoba beberapa hal, antara lain ssh-add, mengatur ulang SSH (menghapus .ssh / di server, dan semacamnya, tetapi tidak berhasil. Jadi ternyata saya hanya harus tidur selama satu malam. Itu membantu! Mengapa! "Saya kira ssh-agent yang berjalan di server memiliki sesuatu dalam cache-nya yang disegarkan malam itu dengan nilai-nilai sekarang yang tepat. Bagaimanapun, sekarang berfungsi seperti pesona. Untuk menyelesaikannya, ia melakukan ini (Ubuntu 16.04 di localhost, 14,04 di server).
sumber
Saya akhirnya menjatuhkan file host saya yang dikenal dan berhasil. Harus memasukkan kata sandi lagi, tetapi akhirnya menerima kata sandi yang tepat. Itu setelah instalasi baru.
sumber
Jika menambahkan SSH_AUTH_SOCK = 0 sebelum perintah ssh membantu, maka itu adalah kesalahan keyring gnome. Kecuali solusi dan masalah yang diberikan, masalah mungkin terkait dengan frasa sandi. Jika Anda memiliki frasa sandi untuk kunci, maka gnome keyring menanyakannya saat Anda masuk pertama kali dan jika Anda memasukkan kosong karena kesalahan atau menutup jendela secara tidak terduga, gnome menganggapnya sebagai frasa sandi kosong dan mengingatnya selamanya. Tidak ada yang membantu untuk diminta lagi frasa sandi. Untuk menyelesaikan aplikasi keyring ssh terbuka dan masuk ke bagian Login di bawah kategori Kata Sandi. Temukan catatan yang sesuai untuk kunci bermasalah dan masukkan ke Properties dan masukkan frasa sandi yang benar.
sumber
Ada penyebab lain dari ini yang belum ada jawaban: format PEM untuk file kunci berhenti menjadi default untuk
ssh-keygen
sebelum Ubuntu pindah kegnome-keyring-daemon
yang mendukung format RFC4716 baru.Jika Anda membuat kunci baru, atau menambah / menghapus frasa sandi dari kunci Anda, itu mungkin rusak. Kuncinya adalah menggunakan
ssh-keygen -m PEM
sebelum operasi lain apa pun yang perlu Anda jalankan. Misalnya, Anda dapat mengonversi kembali ke format lama dengan menggunakanssh-keygen -m PEM -p
dan memasukkan frasa sandi lama sebagai frasa sandi baru (yang akan kosong tanpa frasa sandi).sumber