Inicio·Mensajes de error

ssh · Git

El mensaje

git@github.com: Permission denied (publickey).

Qué significa

ssh llegó al servidor pero no ofreció ninguna clave que el servidor esté dispuesto a aceptar: es un problema de autenticación, no de red. Pasa cuando no has generado ninguna clave, cuando la tienes pero nunca la añadiste a ssh-agent, o cuando la clave pública no está registrada en tu cuenta de ese servicio. ssh-add ~/.ssh/id_ed25519 carga la clave en el agente durante esta sesión, y ssh -T git@github.com informa de qué clave se probó y como quién te reconoce. Ambas órdenes solo leen; no hay nada que perder.

El arreglo

ssh-add ~/.ssh/id_ed25519
Lo imprime
ssh
Git
29

Casi todos los errores de git son una negativa que significa "hacer eso desde este estado perdería algo"; fatal: indica que git se detuvo sin cambiar nada, y las líneas hint: bajo la primera suelen traer el remedio real.

Cómo leer un mensaje de error

  • Lee desde la primera línea. Cuanto más abajo, más son las tripas de la herramienta; la causa suele estar arriba.
  • Si hay un archivo y un número de línea, empieza ahí: no el marco superior de la pila, sino la línea más alta que nombre un archivo tuyo.
  • Busca el mensaje literal, pero quita antes tus rutas y nombres de variables: eso es lo que impide que la búsqueda coincida.
  • La misma condición se redacta distinto según la versión. Si los resultados no cuadran, añade el número de versión.
  • Antes de pegar un arreglo, comprueba qué descarta. Algunos no se pueden deshacer.

Preguntas frecuentes

Q. ¿Qué significa «git@github.com: Permission denied (publickey).»?

ssh llegó al servidor pero no ofreció ninguna clave que el servidor esté dispuesto a aceptar: es un problema de autenticación, no de red. Pasa cuando no has generado ninguna clave, cuando la tienes pero nunca la añadiste a ssh-agent, o cuando la clave pública no está registrada en tu cuenta de ese servicio. ssh-add ~/.ssh/id_ed25519 carga la clave en el agente durante esta sesión, y ssh -T git@github.com informa de qué clave se probó y como quién te reconoce. Ambas órdenes solo leen; no hay nada que perder.

Q. ¿Cómo se arregla?

ssh-add ~/.ssh/id_ed25519 — antes de ejecutarlo, mira arriba qué descarta este comando.

Q. ¿Qué herramienta lo imprime?

ssh. Está en Git y el mensaje tiene 4 palabras.

Errores cercanos