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

Cómo cambiar el puerto SSH por defecto en DirectAdmin

Actualizado el 19 de diciembre de 2025

¿Por qué cambiar el puerto SSH por defecto en DirectAdmin?

El puerto 22 es el puerto estándar para SSH (Secure Shell) en prácticamente todos los servidores Linux. Esto lo convierte en el primer objetivo de los bots y atacantes automatizados que escanean internet en busca de servidores expuestos. Cada día, millones de intentos de acceso no autorizado se dirigen al puerto 22, buscando vulnerabilidades o probando contraseñas débiles mediante ataques de fuerza bruta.

Cambiar el puerto SSH por defecto es una de las medidas de seguridad más sencillas y efectivas que puedes implementar en tu servidor. Al mover el servicio a un puerto no estándar, reduces drásticamente el ruido de escaneos automatizados, ya que la mayoría de los bots solo buscan el puerto 22. No es una solución mágica, pero añade una capa extra de protección que, combinada con otras medidas, fortalece la seguridad DirectAdmin de manera notable.

Un puerto SSH no estándar también te ayuda a evitar fuerza bruta SSH, porque los atacantes que realizan ataques masivos no buscarán tu nuevo puerto. Si además usas autenticación por llaves en lugar de contraseñas, la seguridad de tu servidor se vuelve exponencialmente más robusta.


Requisitos previos antes de empezar

Antes de modificar cualquier configuración, asegúrate de tener:

  1. Acceso root al servidor (o un usuario con privilegios sudo).
  2. Acceso a DirectAdmin como administrador principal.
  3. Una conexión de respaldo al servidor, como el panel de control de tu proveedor de hosting (VPS o dedicado), por si algo sale mal.
  4. Un cliente SSH como PuTTY (Windows) o la terminal integrada (macOS/Linux).

[WARNING] No cierres tu sesión SSH actual hasta que hayas verificado que el nuevo puerto funciona correctamente. Si cometes un error, podrías quedarte sin acceso al servidor y necesitarías usar el panel de tu proveedor para revertir los cambios.


Paso 1: Acceder al servidor por SSH

Abre tu terminal o PuTTY y conéctate a tu servidor usando la IP o dominio y el puerto actual (22):

ssh root@tu-servidor.com

Si usas una llave SSH, asegúrate de que esté cargada. Una vez dentro, tendrás acceso a la terminal del servidor.


Paso 2: Editar el archivo de configuración de SSH

El archivo de configuración principal de SSH se encuentra en /etc/ssh/sshd_config. Usaremos un editor de texto desde la terminal. Te recomiendo usar nano por su facilidad, pero si prefieres vim, también funciona.

Ejecuta:

nano /etc/ssh/sshd_config

Dentro del archivo, busca la línea que dice:

#Port 22

El símbolo # al inicio indica que la línea está comentada, es decir, que el valor por defecto (22) está activo. Debes eliminar el # y cambiar el número por el puerto que desees.

[TIP] Elige un puerto entre el 1024 y el 49151. Evita puertos que ya usan otros servicios comunes (80, 443, 21, 25, etc.). Un buen ejemplo es el 2200, 2222 o 5522. Asegúrate de que el puerto no esté siendo utilizado por otro servicio.

Quedaría así:

Port 2200

Guarda los cambios con Ctrl + O (guardar) y Ctrl + X (salir) si usas nano.


Paso 3: Actualizar las reglas del firewall

DirectAdmin suele incluir un firewall (CSF o Firewall nativo). Debes abrir el nuevo puerto en el firewall para permitir conexiones entrantes.

Si usas CSF (ConfigServer Security & Firewall):

Edita el archivo de configuración:

nano /etc/csf/csf.conf

Busca la sección TCP_IN (puertos TCP entrantes) y añade tu nuevo puerto. Por ejemplo:

TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995,2200"

Luego aplica los cambios:

csf -r

Si usas otro firewall (UFW, iptables, etc.):

Abre el puerto manualmente. Con UFW:

ufw allow 2200/tcp

[INFO] Si tu proveedor de hosting tiene un firewall externo (en la nube), también deberás abrir el puerto desde su panel de control.


Paso 4: Reiniciar el servicio SSH

Una vez guardados los cambios y actualizado el firewall, reinicia el servicio SSH para que tome la nueva configuración:

systemctl restart sshd

O si tu sistema usa el comando antiguo:

service sshd restart

[WARNING] Al reiniciar SSH, tu conexión actual no se cortará si ya estás conectado, pero no podrás reconectar hasta que uses el nuevo puerto. No cierres la sesión todavía.


Paso 5: Probar la nueva conexión SSH

Abre una nueva ventana de terminal (deja la actual abierta como respaldo) y conéctate usando el nuevo puerto:

ssh -p 2200 root@tu-servidor.com

Si la conexión es exitosa, ¡felicidades! Ya has cambiado el puerto. Si no funciona, revisa que el firewall esté permitiendo el tráfico y que hayas escrito bien el puerto.

[TIP] Si algo falla, vuelve a la terminal original y revisa el archivo de configuración. Puedes revertir los cambios y reiniciar SSH de nuevo para recuperar el acceso.


Paso 6: Actualizar DirectAdmin y los clientes SSH

DirectAdmin gestiona la configuración del servidor y puede tener registros del puerto SSH. Aunque no es estrictamente necesario, es recomendable actualizar la configuración en el panel para que las herramientas internas funcionen correctamente.

Para actualizar la configuración en DirectAdmin:

  1. Accede a DirectAdmin como administrador.
  2. Ve a Administrador de servidoresConfiguración de SSH.
  3. Cambia el puerto al nuevo valor y guarda.

También deberás actualizar cualquier cliente SSH que uses (PuTTY, FileZilla SFTP, tu IDE, etc.) para que apunte al nuevo puerto.


Paso 7: Medidas adicionales para un SSH seguro

Cambiar el puerto es solo el primer paso. Para una seguridad DirectAdmin realmente sólida, implementa estas prácticas:

Desactivar el acceso root por contraseña

Edita de nuevo /etc/ssh/sshd_config y busca:

PermitRootLogin yes

Cámbialo a:

PermitRootLogin prohibit-password

Esto permite el acceso root solo con llaves SSH.

Usar autenticación por llaves

Genera un par de llaves en tu máquina local:

ssh-keygen -t rsa -b 4096

Luego copia la llave pública al servidor:

ssh-copy-id -p 2200 root@tu-servidor.com

Limitar usuarios SSH

Si solo necesitas acceso para ciertos usuarios, añade al final del archivo:

AllowUsers admin usuario1 usuario2

Configurar Fail2Ban

Fail2Ban es una herramienta que bloquea IPs tras varios intentos fallidos. Instálalo si no lo tienes:

apt install fail2ban

Configúralo para monitorear SSH y evitar fuerza bruta SSH.


Preguntas frecuentes (FAQ)

¿Es suficiente con cambiar el puerto SSH?

No. Es una capa de seguridad adicional, pero no debes confiar solo en esto. Combínalo con llaves SSH, Fail2Ban y un firewall configurado correctamente.

¿Qué pasa si olvido el nuevo puerto?

Puedes revisar el archivo de configuración en /etc/ssh/sshd_config o consultar el historial de comandos con history | grep ssh.

¿Puedo usar el puerto 22 para otro servicio?

Técnicamente sí, pero no es recomendable. El puerto 22 está reservado para SSH y muchos sistemas lo asumen como tal. Mantén el servicio SSH en un puerto distinto y deja el 22 libre.

¿DirectAdmin se ve afectado por el cambio?

DirectAdmin usa su propio panel en los puertos 2222 (HTTP) y 8443 (HTTPS) por defecto. No se verá afectado por el cambio de puerto SSH. Pero recuerda que si usas Syspanel (anteriormente HestiaCP), el acceso a su panel es por el puerto 2106, así que no lo confundas con el puerto SSH.

¿Qué hago si mi proveedor bloquea puertos no estándar?

Algunos proveedores de hosting limitan los puertos permitidos. Consulta con tu proveedor antes de cambiar el puerto SSH. Si no es posible, usa medidas alternativas como Fail2Ban y llaves SSH.

¿Puedo tener varios puertos SSH activos?

Sí. Puedes añadir múltiples líneas Port en el archivo de configuración. Pero ten en cuenta que cada puerto abierto aumenta la superficie de ataque.


Solución de problemas comunes

No puedo conectarme después de cambiar el puerto

  1. Verifica que el firewall esté permitiendo el nuevo puerto.
  2. Comprueba que el servicio SSH esté activo: systemctl status sshd.
  3. Revisa los logs de SSH: tail -f /var/log/auth.log.
  4. Si todo falla, usa el panel de tu proveedor para acceder al servidor en modo de emergencia y revierte los cambios.

El puerto aparece abierto pero no responde

Puede ser que otro servicio esté usando el mismo puerto. Comprueba con:

netstat -tulpn | grep 2200

¿Cómo saber si el cambio fue exitoso?

Intenta conectarte desde fuera de la red local (por ejemplo, con tu móvil en datos móviles). Si la conexión funciona, el cambio está activo.


Conclusión: Tu servidor es más seguro ahora

Cambiar el puerto SSH por defecto en DirectAdmin es una práctica sencilla pero poderosa para proteger tu servidor. Al hacerlo, reduces significativamente los intentos de acceso no autorizado y dificultas la tarea a los atacantes automatizados.

Recuerda que la seguridad DirectAdmin no se limita a un solo cambio. Implementa capas de protección: puertos no estándar, autenticación por llaves, Fail2Ban, firewall configurado y actualizaciones periódicas. Cada capa añade fricción a los atacantes y protege tus datos y los de tus usuarios.

Si tienes dudas, consulta la documentación oficial de DirectAdmin o contacta con tu proveedor de hosting. Un servidor bien configurado es un servidor feliz.

[INFO] Resumen final: Cambia el puerto SSH a uno no estándar, actualiza el firewall, prueba la nueva conexión y complementa con llaves SSH y Fail2Ban. Así, tu servidor estará mucho más protegido contra ataques de fuerza bruta. Y recuerda, si usas Syspanel, su puerto de acceso es el 2106, no lo confundas con el puerto SSH.

¿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