Acabo de actualizar mi sistema Ubuntu de 15.10 a 16.04 limpiando completamente la partición Ubuntu 15 de mi sistema.
Después de instalar Ubuntu 16.04, recreé mis claves ssh ya que olvidé hacer una copia de seguridad, pero cada vez que intento usar ssh obtengo sign_and_send_pubkey: signing failed: agent refused operation
esto es un poco molesto ya que me permite acceder a mi servidor ssh, pero git se niega a empujar el código usando ssh.
Ya he empujado las teclas al servidor usando ssh-copy-id
.
El servidor al que me estoy conectando es un servidor Ubuntu 16.04 actualizado a través del do-release-upgrade
comando. Cualquier ayuda será apreciada.
l
.L
de la fuente "Liberation Mono" :-(ssh-add
otra cosa que no sea para usarssh-add -l
porque puede terminar con demasiadas entradas en elssh-agent
. No hay necesidad de agregar manualmente.Dash > Startup Applications
muestra quessh-agent
ya se está ejecutando y detectará automáticamente los archivos como~/.ssh/id_rsa
y~/.ssh/id_rsa.pub
. Para probar esto, puede usarssh-add -l
antes y después de usarssh-keygen
. Verá que monitorea los archivos para que no tenga que agregarlos manualmente.ssh-add -d
yssh-add -D
para realizar la eliminación manual. Simplemente elimine los archivos de clave~/.ssh/id_rsa
y~/.ssh/id_rsa.pub
ya lassh-agent
notificación voluntad. Para demostrar que puede hacerlossh-add -l
antes y después de eliminar los archivos clave.Solución simple
Tuve el mismo problema en Ubuntu 18.04. Eso es todo acerca de los permisos de clave privada del lado del cliente .
Los permisos de archivo estaban demasiado abiertos (0644).
El siguiente comando lo resolvió:
fuente
Tuve el mismo problema (los mismos síntomas)
... pero la solución fue diferente.
El problema provenía del uso de GNOME-KEYRING. La publicación que hace referencia a la solución se puede leer aquí .
En breve:
La página proporciona otros detalles en caso de un problema similar con una solución diferente.
fuente
Permissions 0775 for '.ssh/id_rsa' are too open
. La solución simple aquí erachmod 600 .ssh/id_rsa
.SSH_AUTH_SOCK=0
antesgit pull
y obtuve advertencias de permisos como Matt.Obtuve el
sign_and_send_pubkey: signing failed: agent refused operation
al iniciar sesión en varios servidores, leí la respuesta de VonC en Stack Overflow para obtener más información sobre errores relacionados, la solución para mí fue eliminar el llavero de gnome, eliminar identidades de ssh-agent y reiniciar.Entonces todas mis llaves comenzaron a funcionar perfectamente.
ACTUALIZAR:
Solución temporal sin desinstalar llavero
Si desea mantener el llavero gnome y tiene el
agent refused operation
error, use:o usar
SSH_AUTH_SOCK=0 ssh your-server
La solución permanente sin desinstalar llavero
Si puede, el gnome-keyring es compatible con la clave RSA de 4096 bits, así que simplemente genere una nueva clave con:
Subir clave pública al servidor
Agregar clave ssh al agente
Esto debería funcionar sin ningún truco adicional y gnome-keyring puede permanecer instalado.
(El -C [nombre de usuario] es opcional, pero es requerido por proveedores como Google Cloud)
fuente
ssh-agent
. Todavía puede iniciar ssh-agent e ingresar contraseñas de clave privada en la consola / shell.Después de actualizar a Ubuntu 18.04, obtuve el mismo error
sign_and_send_pubkey: signing failed: agent refused operation
. Resulta que fue causado por los permisos de la clave ssh por estar demasiado abierta. El siguiente comando me solucionó el problemachmod 600 .ssh/id_rsa
fuente
En mi sistema (también Ubuntu 16.04, tratando de conectarme a github), tenía un archivo id_ed25519 en mi carpeta .ssh que
ssh-add
falló:Después de eliminar los archivos
~/.ssh/id_ed25519*
(ya no los necesitaba, era de una prueba anterior) todo volvió a funcionar bien.fuente
Could not add identity "~/.ssh/id_ed25519": communication with agent failed
agente se está ejecutando y configurado hasta donde puedo ver.ssh-agent
socket simple . El agente ssh simple puede manejar claves ED25519 mientras que el agente de autenticación gnome no lo es (además de otros problemas que causa). Vea la respuesta de sam askubuntu.com/a/835114/167846 o Mike askubuntu.com/a/762968/167846Me pasó a mí porque mi clave privada tenía una frase de contraseña. Tuve que ejecutar
ssh-add
y luego solicitó la frase de contraseña y la agregó correctamente. Sin embargo, ahora no pide mi frase de contraseña cuando ssh'ing a una máquina.fuente
Tengo una nueva instalación de Ubuntu16.04 y experimenté problemas similares. Cuando intenté clonar mi repositorio de Github después de haber copiado mi clave pública en github (según las instrucciones en github.com ) y después de realizar la siguiente verificación ( recomendada en github.com ):
Fui recibido por lo siguiente:
Para solucionarlo rápidamente, sin quitar nada ni cambiar mi configuración de inicio, simplemente escribí lo siguiente en el terminal:
Entonces el clon funcionó. Luego comencé el demonio detenido nuevamente escribiendo:
Más tarde, para cambiar las cosas de una manera más permanente, seguí el consejo aquí.
fuente
Después de actualizar Fedora 26 a 28, enfrenté el mismo problema. Y no hay archivos de registro
El mensaje de error no señala el problema real. Problema resuelto por
fuente
Agregando comentarios ya que tuve el mismo problema con las claves ed25519. El problema es, de hecho, el llavero de gnomo. Para solucionar esto hice lo siguiente:
ssh-agent -s
)fuente
Es a finales de 2018, y este error, o variaciones de él, todavía afecta a Xubuntu 16.04, y es muy probable que tenga otros sabores de Xenial. ¡No me sorprendería si también existiera en 18.04! Ha existido de alguna forma desde 2009, y Karmic Koala. Ha afectado a Redhat, Debian y Ubuntu. No tome mi palabra, vea los rastreadores de errores públicos:
https://bugs.launchpad.net/ubuntu/+source/gnome-keyring/+bug/470456
Y en ese error, también encontrará listados para los otros 3:
Referencias
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
En mi caso, el síntoma más obvio fue la incapacidad de usar claves ssh con frases de contraseña. También puede afectar a los que no lo tienen, ya que el mal funcionamiento evita que se carguen las teclas ssh. Y no tuve problemas de permisos, todo era un llavero de gnomo. Los permisos de mis claves (sí, rechazó varios, ¡para diferentes servidores SSH!) Fueron 600 (rw para el propietario, nada para el grupo u otro) como se indica en muchas respuestas al respecto. Así que nada podría cambiar allí.
En Xubuntu, hay una manera de deshabilitar los elementos de inicio. Por lo general, también es posible en Unity / Gnome / KDE, pero no los tengo instalados, por lo que no puedo dar pasos específicos. No estoy seguro de otros escritorios. En lugar de desactivar el agente SSH, el agente GPG y otros elementos de Gnome que causan este y otros errores relacionados, apagué todos los elementos de inicio de Gnome. Puede ser excesivo o no una opción para algunos, pero SSH ha vuelto a funcionar sin problemas en el próximo reinicio.
Captura de pantalla de la GUI descrita anteriormente:
Entonces, dado que di mi solución anterior, espero que alguien la arregle.
Probablemente, Ubuntu no ha podido aplastarlo para siempre, ya que hay muchos tickets para varios lanzamientos que afirman que está solucionado, y más que dicen "regresión", está de vuelta.
Debian probablemente quiera despejar (lavarse las manos) porque no son ellos, aguas arriba está Gnome.
Redhat probablemente tiene una solución solo disponible para clientes que pagan. Porque, históricamente, Redhat es el mayor empleador de desarrolladores de Gnome pagos, lo cual es generoso a primera vista. Hasta que se dé cuenta de que eso significa que tienen un incentivo financiero para nunca poner soluciones como esta en las versiones gratuitas, para seguir vendiendo suscripciones de Redhat.
Gnome es probablemente el que puede solucionarlo más fácilmente, y luego los demás pueden probar y empaquetar, sin escribir una línea de código. ¡Pero las entradas que leí dicen que el paquete ha languidecido durante años sin un responsable oficial! Y las dos personas que lo hacen voluntariamente ahora (gracias) están casi tan ocupadas diseñando un reemplazo. ¿Por qué no reparar una rueda pinchada incluso si lleva un año (ha pasado una década!) En lugar de reinventar la rueda primero!
fuente
funciona para mi. Pero asegúrate
Esta corriendo.
fuente
En mi caso, el problema fue causado por GNOME Keyring. Para deshabilitar las capacidades SSH de gnome-keyring sin eliminarlo por completo (lo que rompe muchas cosas), siga estas instrucciones :
y reinicie la sesión. Ahora puede ejecutar ssh-agent sin interferir el gnome-keyring.
fuente
Intenté un par de cosas, entre otras, ssh-add, restableciendo SSH (eliminando .ssh / en el servidor, y demás, pero no tuve suerte. Así que resultó que solo tuve que dormir una noche. ¡Ayudó! "Supongo que el agente ssh que se ejecuta en el servidor tenía algo en su caché que se actualizó más tarde esa noche con los valores ahora correctos. De todos modos, ahora funciona de maravilla. Para concluir, hizo esto (Ubuntu 16.04 en localhost, 14.04 en el servidor).
fuente
Terminé soltando mi archivo de hosts conocidos y funcionó. Tuve que ingresar una contraseña nuevamente, pero finalmente aceptó la contraseña correcta. Fue después de una nueva instalación.
fuente
Si agregar SSH_AUTH_SOCK = 0 antes de que el comando ssh ayude, entonces es un error de llavero gnome. Excepto las soluciones y problemas proporcionados, el problema puede estar relacionado con la frase de contraseña. Si tiene una frase de contraseña para la clave, el llavero de gnome le pregunta cuándo inicia sesión por primera vez y si ingresa vacío por error o cierra la ventana inesperadamente, gnome lo asume como frase de contraseña vacía y lo recuerda para siempre. Nada ayuda a que se le solicite nuevamente la frase de contraseña. Para resolver, abra la aplicación ssh keyring y vaya a la sección Iniciar sesión en la categoría Contraseñas. Encuentre el registro correspondiente a la clave problemática e ingrese a Propiedades e ingrese la frase de contraseña correcta.
fuente
Hay otra causa de esto que todavía no se encuentra en ninguna respuesta: el formato PEM para el archivo de clave dejó de ser el predeterminado
ssh-keygen
antes de que Ubuntu se moviera a ungnome-keyring-daemon
formato compatible con el nuevo formato RFC4716.Si genera una nueva clave, o agrega / elimina una frase de contraseña de su clave, puede romperse. La clave se usa
ssh-keygen -m PEM
antes que cualquier otra operación que necesite ejecutar. Por ejemplo, puede volver a convertir al formato anterior utilizandossh-keygen -m PEM -p
e ingresando la frase de contraseña anterior como la nueva frase de contraseña (que estaría vacía sin frase de contraseña).fuente