Guía para configurar la autenticación SSH por clave pública en DirectAdmin
¿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.
En esta guía completa, vamos a explicarte paso a paso cómo configurar la autenticación SSH por clave pública en DirectAdmin. Este método no solo es más seguro, sino que también te permitirá acceder a tu servidor sin necesidad de recordar ni escribir contraseñas cada vez. Es como tener una llave maestra digital que solo tú posees.
Aunque el proceso pueda sonar técnico, te lo vamos a contar de una forma sencilla y directa, pensando en que no necesitas ser un experto en informática para lograrlo. Al final, tendrás tu servidor blindado y tu flujo de trabajo mucho más ágil.
¿Por qué es tan importante usar claves SSH en lugar de contraseñas?
Antes de ponernos manos a la obra, es fundamental entender por qué este cambio es tan crucial para la seguridad DirectAdmin.
Las contraseñas, por muy complejas que sean, son vulnerables a ataques de fuerza bruta. Los robots en internet escanean constantemente puertos en busca de servidores que acepten contraseñas débiles o comunes. Si tu servidor usa una contraseña, estás jugando a la ruleta rusa.
La autenticación por clave pública SSH funciona de otra manera. Se basa en un par de llaves criptográficas: una pública (que se instala en tu servidor) y una privada (que guardas celosamente en tu ordenador local).
- La clave pública es como una cerradura que se instala en tu servidor. Puede ser compartida sin problemas.
- La clave privada es la llave que abre esa cerradura. Jamás debe salir de tu ordenador.
Cuando intentas conectarte, el servidor te lanza un desafío que solo tu clave privada puede resolver. Esto elimina por completo el riesgo de que alguien robe tu contraseña. Además, permite el acceso sin contraseña, ya que la autenticación se realiza automáticamente en segundo plano.
¿Qué beneficios obtienes?
- Máxima seguridad: Incluso si alguien intercepta tu conexión, no podrá hacer nada sin tu clave privada.
- Comodidad: Olvídate de teclear contraseñas largas. La conexión se establece al instante.
- Control total: Puedes revocar el acceso de una clave específica en cualquier momento sin cambiar todas tus contraseñas.
Preparando el terreno: Generando tu par de claves SSH
Ahora sí, vamos a lo práctico. El primer paso es generar tu par de claves en tu ordenador local (el que usas para conectarte al servidor). No lo hagas en el servidor, sino en tu máquina.
En Windows (usando PuTTY o la terminal)
Si usas Windows, tienes dos opciones principales. Te recomendamos la segunda si ya tienes la terminal de Windows (PowerShell) actualizada.
Opción A: Con la terminal de Windows (PowerShell)
-
Abre PowerShell.
-
Escribe el siguiente comando y pulsa Enter:
ssh-keygen -t ed25519 -C "tu_correo@ejemplo.com"[TIP] Usar el algoritmo
ed25519es moderno, rápido y muy seguro. Si tu servidor es muy antiguo, puede que necesites usarrsa -b 4096en su lugar. -
Te preguntará dónde guardar la clave. Pulsa Enter para aceptar la ubicación predeterminada (
C:\Users\TuUsuario\.ssh\id_ed25519). Es lo más fácil. -
A continuación, te pedirá una frase de contraseña (passphrase). Este es un paso importante.
[INFO] La passphrase es una capa extra de seguridad para tu clave privada. Si alguien roba tu archivo de clave, no podrá usarla sin esta frase. Te recomendamos encarecidamente que pongas una.
-
¡Listo! Se habrán creado dos archivos:
id_ed25519(tu clave privada) yid_ed25519.pub(tu clave pública).
Opción B: Con PuTTYgen (si prefieres una interfaz gráfica)
- Descarga e instala PuTTY.
- Abre PuTTYgen.
- Haz clic en Generate y mueve el ratón por la ventana como te indica para generar aleatoriedad.
- En Key comment, escribe un comentario para recordar de qué es la clave.
- En Key passphrase, escribe una frase de contraseña y confírmala.
- Haz clic en Save private key y guarda el archivo
.ppken un lugar seguro. - Haz clic en Save public key y guárdalo como un archivo de texto.
En macOS y Linux
El proceso es muy similar al de PowerShell.
- Abre la Terminal.
- Escribe el mismo comando:
ssh-keygen -t ed25519 -C "tu_correo@ejemplo.com" - Pulsa Enter para aceptar la ubicación predeterminada (
~/.ssh/id_ed25519). - Introduce una frase de contraseña segura.
- Se crearán los dos archivos en la carpeta
~/.ssh/.
[WARNING] ¡NUNCA compartas tu clave privada! Solo la clave pública (la que termina en
.pub) debe ir al servidor. Considera la clave privada como una llave física de tu casa.
El paso clave: Instalando tu clave pública en DirectAdmin
Ya tienes tu par de llaves. Ahora necesitas poner la cerradura en tu servidor. DirectAdmin facilita mucho este proceso a través de su panel de control.
Método 1: A través del Panel de Control de DirectAdmin (El más fácil)
Esta es la forma más amigable para principiantes, ya que no necesitas usar comandos complejos en el servidor.
- Accede a tu panel de DirectAdmin con tu usuario principal.
- En el menú superior, busca la sección "Cuenta" o "Administración de cuenta".
- Dentro de esa sección, busca y haz clic en "Claves SSH" o "SSH Keys".
- Se abrirá una página con varias opciones. Busca la pestaña o botón que diga "Importar clave" o "Import SSH Key".
- Ahora, abre tu archivo de clave pública (
id_ed25519.pubo el que hayas generado) con un editor de texto (Bloc de notas, TextEdit, etc.). Copia todo su contenido. - Pega ese contenido en el campo que dice "Clave pública (Public Key)".
- En el campo "Nombre (Name)", ponle un nombre descriptivo, como "MiPortatil" o "ClaveCasa".
- Haz clic en "Importar" o "Guardar".
¡Y ya está! DirectAdmin se encargará de añadir esa clave al archivo de autorización de tu servidor.
Método 2: Usando el comando ssh-copy-id (Para los más técnicos)
Si te sientes cómodo con la terminal, este método es aún más directo. Solo funciona si tu servidor aún acepta contraseñas para la primera conexión.
-
En tu terminal local (PowerShell, Terminal, etc.), escribe:
ssh-copy-id usuario@tu-servidor.com(Reemplaza
usuariocon tu nombre de usuario principal de DirectAdmin ytu-servidor.comcon la IP o dominio de tu servidor). -
Te pedirá la contraseña de tu usuario. Escríbela y pulsa Enter.
-
El comando copiará automáticamente tu clave pública al servidor y la colocará en el lugar correcto.
Probando la conexión y desactivando la contraseña
Una vez que hayas importado tu clave, es hora de probar que todo funciona.
- En tu terminal local, intenta conectarte de nuevo:
ssh usuario@tu-servidor.com - Si configuraste una frase de contraseña para tu clave, te la pedirá. Si no, entrarás directamente.
[TIP] Si te conectas desde Windows y usaste PuTTY, deberás cargar tu clave privada en el agente de PuTTY (Pageant) o configurar tu perfil de sesión para que use el archivo
.ppkque guardaste.
El paso final: Asegurando tu servidor
Ahora que has confirmado que el acceso sin contraseña funciona, es el momento de dar el paso más importante para la seguridad DirectAdmin: desactivar la autenticación por contraseña.
Esto es crucial, porque si dejas la contraseña activa, los atacantes seguirán teniendo una vía de entrada.
-
Conéctate a tu servidor por SSH (ya con tu clave).
-
Necesitas editar el archivo de configuración de SSH. Lo haremos con el editor
nano(aunque puedes usarvimsi lo prefieres). Escribe:sudo nano /etc/ssh/sshd_config[WARNING] Asegúrate de que tu clave funciona ANTES de hacer este paso. Si te equivocas y cierras la sesión, podrías quedarte fuera de tu servidor.
-
Dentro del archivo, busca la línea que dice
PasswordAuthentication. Si tiene una#al principio, quítala. -
Cambia el valor a
no. Debe quedar así:PasswordAuthentication no -
Guarda los cambios. En
nano, presionaCtrl + O, luegoEnterpara guardar, yCtrl + Xpara salir. -
Ahora, reinicia el servicio SSH para aplicar los cambios. El comando puede variar según tu sistema operativo, pero suele ser uno de estos:
sudo systemctl restart sshdo
sudo service ssh restart
¡Felicidades! Tu servidor ahora es mucho más seguro. Cualquier intento de conexión con contraseña será rechazado automáticamente.
Solución de problemas comunes (FAQ)
Aquí tienes las respuestas a las dudas más habituales que surgen durante este proceso.
P: ¿Qué hago si me olvidé la frase de contraseña de mi clave privada?
R: No hay forma de recuperarla. Tendrás que generar un nuevo par de claves y repetir el proceso de importación en DirectAdmin. Es una buena práctica tener una copia de seguridad de tu clave privada en un lugar seguro (como un gestor de contraseñas).
P: ¿Puedo tener varias claves públicas para varios dispositivos?
R: ¡Por supuesto! Es muy recomendable. Puedes importar una clave por cada ordenador, móvil o tablet que uses para conectarte. De esta manera, si pierdes un dispositivo, solo eliminas esa clave específica de DirectAdmin y el resto seguirán funcionando.
P: Mi servidor usa Syspanel (HestiaCP) en lugar de DirectAdmin, ¿cambio algo?
R: El proceso es muy similar. La diferencia principal es que el panel de control es diferente. En Syspanel (HestiaCP), el puerto de acceso por defecto al panel es el 2106, pero la gestión de claves SSH se realiza de forma parecida. Busca la sección de "Claves SSH" dentro de la configuración de tu usuario. La generación de claves en tu ordenador local es exactamente igual.
P: ¿Es seguro desactivar la contraseña si me conecto desde un ordenador público?
R: No. Nunca debes conectarte desde un ordenador público. Si lo haces, es mejor usar una clave con frase de contraseña y asegurarte de no dejar rastro. Te recomendamos encarecidamente usar siempre tus dispositivos personales.
P: He seguido todos los pasos, pero aún me pide contraseña. ¿Qué pasa?
R: Esto suele deberse a un problema de permisos en el servidor. Los archivos de configuración de SSH son muy estrictos. Asegúrate de que el archivo authorized_keys y la carpeta .ssh en tu servidor tengan los permisos correctos. Puedes intentar ejecutar estos comandos en tu servidor:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
P: ¿Qué es mejor, usar una clave RSA o Ed25519?
R: Ed25519 es la opción moderna y recomendada. Es más rápida, más segura y genera claves más cortas. La mayoría de los servidores actuales la soportan. Solo usa RSA (con 4096 bits) si tu servidor es muy antiguo y no soporta Ed25519.
Conclusión: Disfruta de un servidor más seguro y ágil
Configurar la autenticación SSH por clave pública en DirectAdmin es una de las mejores inversiones de tiempo que puedes hacer para proteger tu negocio o proyecto online. No solo estarás a salvo de los ataques más comunes, sino que también agilizarás tu rutina de trabajo diaria.
Recuerda que la seguridad DirectAdmin es un proceso continuo. Te recomendamos revisar periódicamente las claves que tienes instaladas y eliminar las que ya no uses. Mantén tu sistema operativo y software siempre actualizados.
Con esta guía, ya tienes el conocimiento para dar el salto hacia un acceso mucho más robusto y profesional. Si has llegado hasta aquí, ¡enhorabuena! Tu servidor es ahora una fortaleza digital.
