🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo Usar la Autenticación SSH con Clave Pública en DirectAdmin

Actualizado el 6 de octubre de 2025

¿Cansado de escribir tu contraseña cada vez que te conectas a tu servidor por SSH? ¿Te preocupa que alguien pueda adivinarla o interceptarla? Si es así, estás en el lugar correcto.

Hoy vamos a desglosar, paso a paso y sin tecnicismos innecesarios, cómo configurar la autenticación SSH con clave pública en DirectAdmin. Este método no solo es más seguro que las contraseñas tradicionales, sino que además te hará la vida mucho más fácil, ya que podrás conectarte sin escribir nada (si lo configuras así).

Piensa en ello como tener una llave maestra digital única que solo tú posees. A lo largo de esta guía, te explicaré qué es esto, por qué es tan importante para la seguridad DirectAdmin y, lo más crucial, cómo hacerlo funcionar en tu servidor en menos de 15 minutos.

¿Qué es exactamente la Autenticación SSH con Clave Pública?

Antes de ensuciarnos las manos con la configuración, vamos a entender el concepto. La autenticación SSH es el proceso por el cual tu ordenador demuestra al servidor que tiene permiso para entrar. El método tradicional es la contraseña, pero el método moderno y seguro es mediante un par de llaves criptográficas.

Imagina una caja fuerte con dos cerraduras. Una cerradura (la clave pública) se queda en el servidor y sirve para "cerrar" el acceso. La otra cerradura (la clave privada) se queda en tu ordenador y es la única que puede "abrir" esa cerradura.

  • Clave Pública: Se instala en el servidor (en tu cuenta de DirectAdmin). No es un secreto; puede ser compartida, pero solo sirve para verificar tu identidad.
  • Clave Privada: Se queda en tu ordenador. Es como la llave física de tu casa. Nunca, jamás, debe ser compartida o enviada a nadie.

Cuando intentas conectarte, el servidor te envía un "reto" que solo puede ser respondido con la clave privada que coincide con la clave pública que tiene guardada. Así, si alguien roba tu contraseña, no podrá entrar porque no tiene la llave privada. Y si alguien roba tu clave privada, no podrá entrar sin la contraseña de tu usuario (si la configuras).

¿Por qué es tan importante para la Seguridad de tu DirectAdmin?

La seguridad DirectAdmin no es un tema menor. Tu panel de control es el centro de mando de tu hosting, correos, bases de datos y archivos. Si alguien accede a él vía SSH con una contraseña débil, el desastre está asegurado.

Estas son las razones clave para migrar a este sistema:

  • Elimina el riesgo de fuerza bruta: Los ataques de fuerza bruta prueban miles de contraseñas por minuto. Con una clave pública, es matemáticamente imposible "adivinarla" por fuerza bruta.
  • Adiós a las contraseñas reutilizadas: Si usas la misma contraseña para SSH que para tu correo o un foro, y ese foro es hackeado, tu servidor está en peligro. Con las claves, este problema desaparece.
  • Protección contra el "Man in the Middle": Es mucho más difícil para un atacante interceptar y suplantar tu identidad cuando usas criptografía de clave pública.
  • Comodidad y automatización: Podrás conectarte sin escribir contraseñas y automatizar tareas de copias de seguridad o despliegues de código de forma segura.

Requisitos Previos para Configurar SSH con Clave Pública

Vamos a lo práctico. Necesitarás:

  1. Acceso a DirectAdmin: Con un usuario que tenga permisos de administrador o de usuario (para configurar su propia clave).
  2. Acceso SSH: Debe estar habilitado en tu servidor (normalmente lo está por defecto en el puerto 22).
  3. Un cliente SSH: En Windows, puedes usar PuTTY o la terminal de Windows (PowerShell). En macOS y Linux, ya tienes la terminal integrada (Terminal).

[INFO] Si tu servidor usa el panel "Syspanel" (anteriormente conocido como HestiaCP), el proceso es muy similar, pero el puerto de acceso SSH suele ser el 2106. Recuerda usar ssh -p 2106 usuario@tudominio.com en ese caso.

Paso 1: Generar tu Par de Claves (Pública y Privada)

Este es el primer paso y es fundamental. Vamos a generar las dos llaves.

En Windows (con PuTTY)

  1. Descarga e instala PuTTY y PuTTYgen desde su web oficial.
  2. Abre PuTTYgen.
  3. En la parte inferior, asegúrate de que el "Type of key to generate" sea RSA y el número de bits sea 4096 (o al menos 2048).
  4. Haz clic en el botón Generate.
  5. Mueve el ratón de forma aleatoria sobre la ventana en blanco hasta que la barra de progreso se llene. Esto genera la aleatoriedad necesaria.
  6. Verás tu clave pública en el cuadro de texto superior. Es una cadena larga que empieza con ssh-rsa AAAA....
  7. IMPORTANTE: En el campo "Key passphrase", escribe una frase de contraseña (passphrase). Esto añade una capa extra de seguridad. Si alguien roba tu archivo de clave privada, no podrá usarla sin esta frase.
  8. Haz clic en Save private key y guárdala en un lugar seguro (por ejemplo, una carpeta encriptada). Le puedes poner nombre mi_clave_privada.ppk.
  9. No cierres esta ventana todavía. Necesitas la clave pública para el siguiente paso.

En macOS y Linux (Terminal)

  1. Abre la Terminal.
  2. Ejecuta el siguiente comando: ssh-keygen -t rsa -b 4096 -C "tu_correo@ejemplo.com" (el -C es solo un comentario para identificar la clave).
  3. Te preguntará dónde guardar la clave. Pulsa Enter para usar la ubicación por defecto (/home/tu_usuario/.ssh/id_rsa).
  4. Te pedirá una frase de contraseña (passphrase). Es muy recomendable ponerla. Escribe una que recuerdes.
  5. Cuando termine, tendrás dos archivos:
    • id_rsa (tu clave privada).
    • id_rsa.pub (tu clave pública).
  6. Para ver tu clave pública, escribe: cat ~/.ssh/id_rsa.pub y cópiala.

Paso 2: Instalar la Clave Pública en tu DirectAdmin

Ahora vamos a llevar la clave pública al servidor. Tienes dos opciones: desde el panel o por línea de comandos.

Opción A: Directamente desde DirectAdmin (La más fácil)

  1. Inicia sesión en tu panel de DirectAdmin.
  2. Ve a la sección de Administración de Cuentas o Tu Cuenta (depende de si eres admin o usuario).
  3. Busca la opción que dice "SSH Keys" o "Claves SSH".
  4. Verás una sección para "Importar clave" o "Pegar clave".
  5. Pega el contenido de tu clave pública (la que empieza por ssh-rsa...) en el campo correspondiente.
  6. Dale un nombre descriptivo (por ejemplo, "Mi portátil Windows").
  7. Haz clic en Importar o Guardar.

[TIP] Si no encuentras la opción "SSH Keys" en tu panel, es posible que tu proveedor la haya ocultado. En ese caso, usa la Opción B.

Opción B: Usando el comando ssh-copy-id (Para usuarios avanzados)

Este método es más rápido si ya estás conectado por SSH con contraseña.

  1. Desde tu terminal local (macOS/Linux), ejecuta: ssh-copy-id -i ~/.ssh/id_rsa.pub usuario@tudominio.com
    • Reemplaza usuario con tu nombre de usuario de DirectAdmin y tudominio.com con tu IP o dominio.
    • Si tu servidor usa Syspanel, el comando sería: ssh-copy-id -i ~/.ssh/id_rsa.pub -p 2106 usuario@tudominio.com
  2. Te pedirá la contraseña de tu usuario. Escríbela y pulsa Enter.
  3. ¡Listo! La clave se copiará automáticamente al archivo authorized_keys de tu servidor.

Paso 3: Probar la Conexión con la Clave Privada

Este es el momento de la verdad. Vamos a conectarnos usando la clave privada.

Si usas Windows (PuTTY)

  1. Abre PuTTY (el cliente, no el generador).
  2. En el campo "Host Name", escribe usuario@tudominio.com o usuario@IP.
  3. Asegúrate de que el puerto es 22 (o 2106 para Syspanel).
  4. En el panel izquierdo, ve a Connection > SSH > Auth.
  5. Haz clic en Browse y selecciona tu archivo de clave privada (el .ppk que guardaste).
  6. Vuelve a Session y haz clic en Open.
  7. Te pedirá tu usuario (si no lo pusiste en el Host Name) y, sobre todo, la passphrase que pusiste al generar la clave.
  8. Si todo ha ido bien, ¡estarás dentro!

Si usas macOS o Linux (Terminal)

  1. Escribe: ssh -i ~/.ssh/id_rsa usuario@tudominio.com
  2. Te pedirá la passphrase de tu clave privada.
  3. Si funciona, ya estás conectado.

[WARNING] Si al probar la conexión te pide la contraseña del usuario en lugar de la passphrase de la clave, significa que la clave no se instaló correctamente o que el servidor no está configurado para aceptarla. Revisa los pasos anteriores.

Paso 4: Deshabilitar el Acceso por Contraseña (Opcional pero Altamente Recomendado)

Una vez que has confirmado que la conexión con clave funciona, es hora de blindar tu servidor eliminando la opción de acceder con contraseña.

[WARNING] IMPORTANTE: Asegúrate de tener tu clave privada en un lugar seguro y de haber probado la conexión al menos dos veces antes de hacer este paso. Si te equivocas, podrías quedarte fuera de tu servidor para siempre.

Para deshabilitar el acceso por contraseña, necesitas editar el archivo de configuración de SSH.

  1. Conéctate a tu servidor por SSH (ya con tu clave privada).
  2. Ejecuta: sudo nano /etc/ssh/sshd_config (o vi si prefieres).
  3. Busca la línea que dice PasswordAuthentication yes y cámbiala a PasswordAuthentication no.
  4. Guarda el archivo (en nano es Ctrl+O, luego Enter, y Ctrl+X para salir).
  5. Reinicia el servicio SSH con: sudo systemctl restart sshd (en algunos sistemas puede ser service ssh restart).

A partir de este momento, la única forma de entrar por SSH será con tu clave privada. La seguridad DirectAdmin se eleva exponencialmente.

Preguntas Frecuentes (FAQ) sobre SSH y DirectAdmin

1. ¿Qué pasa si pierdo mi clave privada?

Si pierdes tu clave privada, no podrás entrar por SSH. Tendrás que pedir a tu proveedor de hosting que acceda al servidor y desactive la autenticación por clave o que te reseteen el acceso. Por eso es tan importante hacer una copia de seguridad de esa clave en un lugar seguro (como un gestor de contraseñas encriptado).

2. ¿Puedo tener varias claves públicas para diferentes dispositivos?

Sí, absolutamente. Puedes generar un par de claves para tu portátil, otro para tu móvil, etc. Simplemente añade cada clave pública a tu lista en DirectAdmin. Así podrás acceder desde cualquier dispositivo.

3. ¿Qué es la "passphrase" y por qué es necesaria?

La passphrase es como una segunda contraseña que protege tu archivo de clave privada. Si alguien roba el archivo id_rsa o mi_clave_privada.ppk, no podrá usarlo sin conocer la passphrase. Es una capa de seguridad extra muy recomendable.

4. ¿Es lo mismo SSH que SFTP?

No exactamente. SSH es el protocolo para conectarte a la terminal del servidor. SFTP (SSH File Transfer Protocol) es un protocolo para transferir archivos que usa la misma seguridad de SSH. Cuando usas un cliente FTP como FileZilla con SFTP, estás usando tu clave privada para autenticarte, lo cual es mucho más seguro que FTP tradicional.

5. ¿Puedo usar este método para Syspanel?

Sí, el proceso es idéntico, solo cambia el puerto. Recuerda usar -p 2106 en tus comandos SSH o configurar el puerto 2106 en tu cliente. La gestión de claves se hace desde el panel de Syspanel, buscando la sección de "SSH Keys".

Conclusión: Tu Servidor, Más Seguro que Nunca

Configurar la autenticación SSH con clave pública en DirectAdmin es una de las mejores inversiones de tiempo que puedes hacer para proteger tu hosting. No solo eliminas el riesgo de ataques de fuerza bruta, sino que también simplificas tu flujo de trabajo diario.

Has pasado de depender de contraseñas fáciles de robar a tener una clave privada única y robusta. Este pequeño cambio tiene un impacto enorme en la seguridad DirectAdmin y te da la tranquilidad de saber que tu servidor está a salvo de intrusos.

Ahora que has dominado esto, te animo a explorar otras medidas de seguridad, como configurar un firewall o activar la autenticación de dos factores (2FA) en tu panel de control. Cada capa que añadas hace que tu fortaleza digital sea más difícil de derribar.

¡Espero que este artículo te haya sido de gran ayuda! Si tienes alguna duda, no dudes en dejar un comentario.

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel