Cómo Solucionar el Error de Permiso Denegado en la Conexión SSH en Linux Paso a Paso

Cómo Solucionar el Error de Permiso Denegado en la Conexión SSH en Linux Paso a Paso
Anuncio relacionado

Introducción

Uno de los dolores de cabeza más comunes para administradores de sistemas y desarrolladores que utilizan sistemas operativos basados en Linux es encontrarse con el temido mensaje Permission denied (publickey) al intentar establecer una conexión remota mediante SSH. Este fallo impide el acceso al servidor, bloqueando despliegues y tareas de mantenimiento esenciales.

Causas principales del error SSH Permission Denegado

El protocolo SSH es extremadamente estricto con la seguridad. Las razones más habituales por las que se genera este error incluyen:

  • Permisos incorrectos en el directorio .ssh o en los archivos de llaves dentro del equipo local o remoto.
  • La clave pública no ha sido copiada correctamente en el archivo authorized_keys del servidor de destino.
  • El servicio SSH en el servidor remoto tiene deshabilitada la autenticación por llaves públicas en el archivo sshd_config.
  • Estás intentando autenticarte con un usuario incorrecto o la llave privada no está siendo cargada por el agente SSH.

Método 1: Corregir los permisos de archivos y carpetas SSH

Los servidores Linux rechazan automáticamente las conexiones SSH si los permisos de las llaves son demasiado abiertos. Debes asegurarte de que solo tu usuario tenga privilegios de lectura y escritura.

  1. Abre tu terminal en el equipo cliente y ejecuta el siguiente comando para corregir los permisos de la carpeta .ssh: chmod 700 ~/.ssh
  2. Asegúrate de que la clave privada tenga permisos estrictos de lectura únicamente para el propietario: chmod 600 ~/.ssh/id_rsa

    Si el problema persiste en el servidor remoto, conéctate por otro medio (como la consola del proveedor) y verifica que el archivo authorized_keys tenga permisos de 600: chmod 600 ~/.ssh/authorized_keys

    Método 2: Verificar y copiar correctamente la clave pública al servidor

    A veces, la clave no se registra adecuadamente en el servidor de destino, o el demonio SSH no la reconoce.

    1. Genera una nueva llave si es necesario usando: ssh-keygen -t rsa -b 4096
    2. Utiliza la utilidad estándar ssh-copy-id para transferir tu clave pública de forma segura al servidor remoto: ssh-copy-id usuario@tu_servidor_ip

      Introduce la contraseña de tu usuario cuando se te solicite. Esto añadirá automáticamente la clave al archivo correcto con los permisos adecuados.

    Método 3: Revisar la configuración del servicio SSH en el servidor

    Si los permisos y las llaves son correctos, es muy probable que el archivo de configuración del servidor SSH esté bloqueando el acceso por claves.

    1. Accede al servidor remoto y abre el archivo de configuración con un editor de texto con privilegios de superusuario: sudo nano /etc/ssh/sshd_config
    2. Busca las siguientes líneas y asegúrate de que estén descomentadas (sin el símbolo # al inicio) y configuradas de esta manera:

      PubkeyAuthentication yes

      AuthorizedKeysFile .ssh/authorized_keys

      Guarda los cambios y reinicia el servicio SSH para aplicar la nueva configuración ejecutando: sudo systemctl restart ssh o sudo systemctl restart sshd

Anuncio
Seguir Leyendo

Guías y Soluciones Relacionadas

Windows Apps Juegos
Magento

Cómo Solucionar el Error de Compilación en Magento 2 de Forma Definitiva

Descubre por qué falla la compilación en Magento 2 y aplica nuestros métodos probados para solucionarlo rápidamente. Restaura tu tienda online sin perder datos.

Leer guía completa →
Hardware

Cómo Solucionar el Error GPU Fan Not Detected en la Placa Base Definitivamente

Aprende a resolver el fallo de ventilador de tarjeta gráfica no detectado en el inicio de tu PC. Soluciones efectivas y seguras.

Leer guía completa →
Windows

Cómo Solucionar el Error 0xc000007b en Windows de Forma Definitiva

El error 0xc000007b impide la ejecución correcta de aplicaciones y juegos en Windows. Descubre cómo solucionarlo de forma definitiva con este tutorial.

Leer guía completa →