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

Cómo configurar el acceso SSH en DirectAdmin (para usuarios avanzados)

Actualizado el 9 de noviembre de 2025

¿Qué es SSH y por qué deberías configurarlo en DirectAdmin?

SSH (Secure Shell) es un protocolo de red que te permite conectarte a tu servidor de forma segura y remota. Piénsalo como una puerta trasera con llave maestra: en lugar de usar el panel gráfico de DirectAdmin para hacer clic en botones, accedes a la terminal del sistema y ejecutas comandos directamente. Esto es ideal para tareas avanzadas como instalar software personalizado, modificar configuraciones del servidor, gestionar backups o automatizar procesos.

Para usuarios avanzados, activar SSH en DirectAdmin es casi obligatorio. Sin embargo, con grandes poderes vienen grandes responsabilidades: si no configuras bien la seguridad, podrías dejar tu servidor expuesto a ataques. Por eso, en esta guía te explicaré paso a paso cómo activar SSH, generar claves SSH en DirectAdmin, conectar por SSH y asegurar tu servidor como un profesional.


Requisitos previos antes de activar SSH en DirectAdmin

Antes de lanzarte a configurar el acceso SSH, asegúrate de cumplir con estos requisitos:

  • Tener acceso de administrador (root) al panel de DirectAdmin. Sin permisos de administrador, no podrás activar el servicio SSH.
  • Tener una dirección IP fija o un dominio apuntando a tu servidor.
  • Conocer el sistema operativo de tu servidor (normalmente CentOS, AlmaLinux, Ubuntu o Debian). Esto es útil para instalar paquetes adicionales si los necesitas.
  • Contar con un cliente SSH en tu ordenador. En Windows puedes usar PuTTY o la terminal integrada de Windows 10/11. En macOS y Linux, la terminal nativa es suficiente.

[INFO] Si tu proveedor de hosting te ha dado acceso a un panel alternativo llamado "Syspanel" (antes conocido como HestiaCP), ten en cuenta que el puerto de acceso por defecto para SSH es el 2106, no el 22 estándar. Ajusta tu cliente SSH en consecuencia.


Paso 1: Activar SSH en DirectAdmin

El primer paso es habilitar el servicio SSH desde el propio panel. DirectAdmin no activa SSH por defecto en todos los planes, así que tendrás que hacerlo manualmente.

  1. Inicia sesión en DirectAdmin con tu cuenta de administrador.
  2. En el menú principal, busca la sección "Administración del servidor" o "Admin Tools".
  3. Dentro de esa sección, haz clic en "SSH Access" o "Acceso SSH". Dependiendo de la versión de DirectAdmin, puede aparecer como "SSH Shell Access" o "SSH Management".
  4. Verás un panel con opciones como "Habilitar SSH", "Permitir acceso root" o "Configurar puerto SSH". Activa la casilla que dice "Enable SSH Access".
  5. En el campo del puerto, te recomiendo cambiar el puerto por defecto (22) por uno personalizado, por ejemplo, el 2222 o el 2106 (si usas Syspanel). Esto reduce enormemente los ataques automatizados que escanean el puerto 22.
  6. Guarda los cambios y reinicia el servicio SSH si el panel te lo pide. Normalmente, DirectAdmin lo hace automáticamente.

[WARNING] Nunca dejes el puerto SSH por defecto (22) si tu servidor es público. Los bots de fuerza bruta lo escanean constantemente. Cambiarlo a un puerto no estándar es una de las medidas de seguridad más efectivas y sencillas.


Paso 2: Generar claves SSH en DirectAdmin

Las claves SSH son mucho más seguras que las contraseñas tradicionales. Consisten en un par de archivos: una clave pública (que se queda en el servidor) y una clave privada (que guardas en tu ordenador). Nadie puede conectarse sin la clave privada, así que es como una llave física irrompible.

Para generar tus claves SSH en DirectAdmin, sigue estos pasos:

  1. En el panel de DirectAdmin, entra en tu cuenta de usuario (si no estás como admin).
  2. Busca la sección "Gestión de Cuentas" o "Account Manager" y luego haz clic en "SSH Keys" o "Claves SSH".
  3. Haz clic en "Generar nueva clave". El panel te pedirá un nombre para la clave (por ejemplo, "mi-servidor-principal") y una frase de contraseña opcional (passphrase). Te recomiendo usarla, aunque parezca un engorro, porque añade una capa extra de seguridad.
  4. Elige el tipo de cifrado. Para máxima compatibilidad, selecciona RSA con una longitud de 2048 o 4096 bits. Si tu sistema soporta Ed25519, también es una excelente opción, más rápida y segura.
  5. Haz clic en "Generate Key" y espera unos segundos. DirectAdmin te mostrará la clave pública generada.
  6. Copia la clave pública y pégala en el archivo ~/.ssh/authorized_keys de tu servidor. Si no sabes cómo hacerlo, sigue el paso siguiente.

[TIP] Puedes generar las claves desde tu ordenador con herramientas como ssh-keygen (Linux/macOS) o PuTTYgen (Windows) y luego subir la clave pública a DirectAdmin. Esto te da más control sobre dónde se guarda la clave privada.


Paso 3: Configurar claves SSH en DirectAdmin para tu cuenta

Una vez generadas las claves, hay que vincularlas a tu cuenta de usuario en el servidor. Así, cuando te conectes por SSH, el servidor sabrá que tu clave privada es válida.

  1. En la misma sección de "SSH Keys" de DirectAdmin, verás una lista de claves generadas.
  2. Al lado de la clave que quieras usar, haz clic en "Authorize" o "Autorizar". Esto copia automáticamente la clave pública al archivo authorized_keys de tu usuario.
  3. Si prefieres hacerlo manualmente, conecta por FTP o mediante el administrador de archivos de DirectAdmin y edita el archivo .ssh/authorized_keys. Pega la clave pública en una nueva línea y guarda.
  4. Asegúrate de que los permisos del archivo sean correctos: chmod 700 ~/.ssh y chmod 600 ~/.ssh/authorized_keys. Si los permisos son demasiado abiertos, SSH rechazará la conexión por seguridad.

[INFO] Si estás usando "Syspanel" (antiguo HestiaCP), el proceso de autorización de claves es muy similar, pero recuerda que el puerto de conexión será el 2106. Además, puede que tengas que editar el archivo de configuración de SSH manualmente si el panel no lo hace por ti.


Paso 4: Conectar por SSH a tu servidor DirectAdmin

Ahora que ya tienes SSH activado y las claves configuradas, es hora de probar la conexión. Dependiendo de tu sistema operativo, el método cambia un poco.

En Linux o macOS

  1. Abre tu terminal.
  2. Escribe el siguiente comando, reemplazando usuario con tu nombre de usuario de DirectAdmin y tu-servidor.com con tu dominio o IP:
    ssh -p 2222 usuario@tu-servidor.com
    
    (Ajusta el -p al puerto que configuraste antes).
  3. Si configuraste una frase de contraseña (passphrase) para tu clave privada, te la pedirá. Escríbela y pulsa Enter.
  4. Si es la primera vez que te conectas, SSH te preguntará si confías en el servidor. Escribe yes y continúa.
  5. ¡Listo! Ya estás dentro de la terminal de tu servidor.

En Windows con PuTTY

  1. Descarga e instala PuTTY desde su sitio oficial.
  2. En el campo "Host Name", escribe usuario@tu-servidor.com y en "Port", el puerto que configuraste (por ejemplo, 2222).
  3. En "Connection" > "SSH" > "Auth", carga tu clave privada (archivo .ppk). Si usas PuTTYgen, importa tu clave y guárdala en formato .ppk.
  4. Haz clic en "Open" y acepta la huella del servidor si te lo pide.
  5. Introduce tu passphrase si la tienes y ya estarás conectado.

[TIP] Si usas la terminal nativa de Windows 10/11, puedes usar el comando ssh igual que en Linux. Solo necesitas asegurarte de que tu clave privada esté en la carpeta correcta (C:\Users\TuUsuario\.ssh\id_rsa).


Paso 5: Asegurar tu acceso SSH (seguridad avanzada)

Activar SSH es solo el principio. Si no tomas medidas de seguridad, tu servidor es un blanco fácil. Aquí tienes una lista de buenas prácticas imprescindibles:

  1. Deshabilita el acceso root por SSH. Edita el archivo /etc/ssh/sshd_config y cambia PermitRootLogin yes a PermitRootLogin no. Usa un usuario normal y luego haz su - para escalar privilegios.
  2. Usa autenticación por clave pública únicamente. En el mismo archivo, cambia PasswordAuthentication yes a PasswordAuthentication no. Así, solo las claves autorizadas pueden entrar.
  3. Configura un firewall (como CSF o UFW) y solo permite conexiones SSH desde direcciones IP conocidas. Si no sabes qué IP tienes, puedes usar tu IP doméstica o una VPN.
  4. Instala Fail2Ban. Este servicio vigila los intentos fallidos de conexión y bloquea automáticamente las IP sospechosas tras unos pocos intentos.
  5. Cambia el puerto SSH a uno no estándar (ya lo hicimos en el paso 1). Aunque no es infalible, reduce el ruido de escaneos automáticos.
  6. Mantén el sistema actualizado. Ejecuta yum update (en CentOS/AlmaLinux) o apt update && apt upgrade (en Ubuntu/Debian) regularmente.

[WARNING] Si deshabilitas la autenticación por contraseña antes de probar que tus claves funcionan, podrías quedarte fuera de tu propio servidor. Haz siempre una prueba de conexión con las claves antes de aplicar el cambio definitivo.


Resolución de problemas comunes al conectar SSH en DirectAdmin

A veces, aunque sigas todos los pasos, algo falla. Aquí tienes los problemas más frecuentes y cómo solucionarlos:

"Connection refused" o "Connection timed out"

  • Verifica que el servicio SSH esté activo: systemctl status sshd (o service sshd status).
  • Comprueba que el puerto no esté bloqueado por el firewall. Usa netstat -tulpn | grep ssh para ver en qué puerto está escuchando.
  • Asegúrate de que tu proveedor de hosting no bloquee el puerto que elegiste. Algunos solo permiten el 22 o el 2106 (en Syspanel).

"Permission denied (publickey)"

  • Tu clave pública no está en el archivo authorized_keys correcto. Revisa la ruta y los permisos.
  • La clave privada que usas no coincide con la pública. Verifica que estás cargando el archivo correcto.
  • Si usas passphrase, asegúrate de escribirla exactamente (distingue mayúsculas y minúsculas).

"No supported authentication methods available"

  • Esto ocurre cuando el servidor solo acepta claves y tú estás intentando con contraseña. Asegúrate de cargar tu clave privada en el cliente SSH.

"Server refused our key"

  • Revisa que el usuario con el que te conectas es el mismo que autorizó la clave. No puedes usar la clave de un usuario para conectarte como otro.

Preguntas frecuentes (FAQ) sobre SSH en DirectAdmin

¿Puedo activar SSH en DirectAdmin sin ser administrador?
No. Solo el administrador del servidor puede habilitar el servicio SSH. Los usuarios normales solo pueden gestionar sus propias claves SSH.

¿Es seguro activar SSH en mi hosting compartido?
Si tu plan es de hosting compartido, normalmente no tienes acceso SSH. En servidores VPS o dedicados, sí es seguro siempre que sigas las medidas de seguridad que te he dado.

¿Qué hago si olvidé mi passphrase de la clave SSH?
No hay forma de recuperarla. Tendrás que generar un nuevo par de claves y volver a autorizarlas en DirectAdmin.

¿Puedo usar la misma clave SSH para varios servidores?
Sí, puedes usar la misma clave pública en varios servidores. Solo asegúrate de guardar la clave privada en un lugar seguro y con permisos estrictos.

¿Qué es mejor: SSH con contraseña o con claves?
Las claves son infinitamente más seguras. Las contraseñas pueden ser adivinadas o interceptadas. Las claves, si las guardas bien, son prácticamente imposibles de romper.


Conclusión: domina el acceso SSH en DirectAdmin

Configurar el acceso SSH en DirectAdmin no es complicado, pero requiere atención a los detalles. Activar SSH desde el panel, generar y autorizar claves SSH, conectar correctamente y aplicar buenas prácticas de seguridad te convertirá en un administrador mucho más eficiente. Además, al usar claves en lugar de contraseñas, tu servidor estará protegido contra ataques de fuerza bruta, que son el pan de cada día en internet.

Recuerda que la seguridad es un proceso continuo. Revisa periódicamente los logs de SSH (/var/log/secure o /var/log/auth.log) para detectar intentos de acceso sospechosos. Y si algún día migras a otro panel como "Syspanel" (HestiaCP), no olvides que el puerto de acceso SSH es el 2106, un pequeño detalle que te ahorrará muchos quebraderos de cabeza.

Ahora que ya sabes cómo configurar todo, lánzate a explorar la terminal. Con SSH, las posibilidades son infinitas: desde instalar un gestor de versiones de PHP hasta automatizar backups con cron jobs. ¡Tu servidor y tu productividad te lo agradecerán!

¿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