Cómo Solucionar el Error Permission Denied (publickey) en SSH en Linux Paso a Paso

Cómo Solucionar el Error Permission Denied (publickey) en SSH en Linux Paso a Paso
Anuncio relacionado

Introducción al error Permission Denied (publickey) en SSH

Uno de los problemas más frustrantes para los administradores de sistemas y desarrolladores que trabajan en entornos Linux es encontrarse con el mensaje Permission denied (publickey) al intentar conectarse a un servidor remoto mediante SSH. Este error indica que el servidor ha rechazado las credenciales presentadas por el cliente, interrumpiendo por completo la comunicación segura.

Causas principales del error de autenticación SSH

El fallo de clave pública suele estar provocado por una mala configuración en los permisos de los archivos de usuario, la ausencia de la clave pública en el archivo authorized_keys del servidor, o porque el servicio SSH no está cargando la clave privada correcta en el cliente.

Método 1: Verificar y corregir los permisos de archivos y carpetas

Los demonios SSH (como OpenSSH) son extremadamente estrictos con la seguridad. Si los permisos de tu directorio .ssh o de los archivos en su interior son demasiado abiertos, la conexión será rechazada automáticamente.

  1. Abre tu terminal local o remota.
  2. Ejecuta el siguiente comando para corregir el permiso de la carpeta .ssh: chmod 700 ~/.ssh
  3. Asegúrate de que el archivo de claves autorizadas tenga permisos estrictos: chmod 600 ~/.ssh/authorized_keys
  4. Verifica que los permisos de tu clave privada sean correctos: chmod 600 ~/.ssh/id_rsa

Método 2: Comprobar que el agente SSH tiene cargada la clave privada

A veces, el cliente SSH no envía la clave correcta al servidor. Debes asegurarte de que tu identidad esté registrada en el agente de autenticación.

  1. Inicia el agente SSH en segundo plano ejecutando: eval "$(ssh-agent -s)"
  2. Añade tu clave privada predeterminada con: ssh-add ~/.ssh/id_rsa
  3. Verifica que la clave se haya añadido correctamente listando las identidades: ssh-add -l

Método 3: Añadir manualmente tu clave pública al servidor remoto

Si tienes acceso físico o alternativo al servidor (como una consola de rescate), puedes transferir tu clave pública manualmente para garantizar el acceso.

  1. Copia el contenido de tu clave pública local ejecutando: cat ~/.ssh/id_rsa.pub
  2. Inicia sesión en el servidor remoto por un método alternativo.
  3. Abre o crea el archivo de claves autorizadas: nano ~/.ssh/authorized_keys
  4. Pega la clave pública en una nueva línea, guarda el archivo (Ctrl+O, Enter) y sal (Ctrl+X).
Anuncio
Seguir Leyendo

Guías y Soluciones Relacionadas

Windows Apps Juegos
Magento

Cómo Solucionar el Error "Area code is not set" en Magento 2

El error "Area code is not set" en Magento 2 es un fallo común en la consola CLI y tareas cron. Descubre cómo resolverlo configurando correctamente el entorno de ejecución.

Leer guía completa →
Mac

Cómo Solucionar el Error 'La Aplicación está Dañada y no se Puede Abrir' en Mac

Descubre cómo corregir el mensaje de error de aplicación dañada en Mac al instalar software de terceros. Te mostramos cómo solucionar este bloqueo de Gatekeeper fácilmente.

Leer guía completa →
Linux

Cómo Solucionar el Error 'Could not get lock /var/lib/dpkg/lock-frontend' en Linux Paso a Paso

Te mostramos cómo liberar el gestor de paquetes APT cuando aparece el error de bloqueo en tu terminal Linux. Sigue estos pasos para solucionarlo.

Leer guía completa →