DirectAdmin: Cómo cambiar el puerto SSH y aumentar la seguridad
¿Por qué cambiar el puerto SSH por defecto en DirectAdmin?
El puerto SSH 22 es la puerta de entrada estándar para administrar tu servidor de forma remota. Es como la cerradura de la puerta principal de tu casa: todo el mundo sabe dónde está. Los bots y atacantes automáticos escanean Internet constantemente buscando servidores con el puerto 22 abierto para intentar accesos por fuerza bruta.
Cambiar el puerto SSH en DirectAdmin es una de las medidas de seguridad más efectivas y sencillas que puedes implementar. Al mover el servicio a un puerto no estándar, reduces drásticamente el ruido de ataques automatizados, aunque no elimina la necesidad de usar contraseñas robustas o, mejor aún, claves SSH.
En este artículo te enseñaré paso a paso cómo cambiar el puerto SSH en DirectAdmin, qué precauciones debes tomar y cómo reforzar la seguridad general de tu servidor para protegerlo de intrusiones.
Antes de empezar: preparativos y advertencias importantes
Modificar el puerto SSH requiere acceso de administrador y ciertos cuidados. Si cometes un error, podrías quedarte fuera de tu propio servidor. Sigue estas recomendaciones antes de tocar nada:
- Asegúrate de tener acceso por consola (por ejemplo, el panel VNC de tu proveedor de hosting) por si necesitas revertir cambios.
- Crea una copia de seguridad del archivo de configuración
/etc/ssh/sshd_config. - Verifica que el nuevo puerto que elijas no esté en uso por otro servicio.
- Ten a mano tus credenciales de acceso a DirectAdmin.
- Abre una segunda sesión SSH antes de aplicar cambios definitivos, para verificar que todo funciona.
[WARNING]
Si pierdes la conexión SSH durante el proceso, podrías quedarte bloqueado. Siempre mantén una sesión activa y verifica la nueva configuración antes de cerrar la anterior.
Paso 1: Acceder al servidor por SSH
Para cambiar el puerto SSH en DirectAdmin, primero necesitas conectarte al servidor. Abre tu terminal o cliente SSH favorito (PuTTY, Termius, etc.) y conéctate con el usuario root:
ssh root@tu-servidor.com
Si ya habías cambiado el puerto antes, usa el parámetro -p seguido del número:
ssh -p 2222 root@tu-servidor.com
Una vez dentro, tendrás acceso al sistema operativo y podrás editar los archivos de configuración.
Paso 2: Editar el archivo de configuración de SSH
El archivo que controla el comportamiento del servicio SSH es /etc/ssh/sshd_config. Para editarlo, usa un editor de texto como nano (más amigable) o vim (más avanzado):
nano /etc/ssh/sshd_config
Dentro del archivo, busca la línea que dice:
#Port 22
Elimina la almohadilla (#) para descomentar la línea y cambia el número por el puerto que desees. Por ejemplo, para usar el puerto 2200:
Port 2200
[TIP]
Elige un puerto entre 1024 y 65535. Evita puertos comunes como 21 (FTP), 80 (HTTP) o 443 (HTTPS) para no generar conflictos. Algunos administradores prefieren puertos altos como 49200 o 54321.
Guarda los cambios con Ctrl + O, confirma con Enter y sal del editor con Ctrl + X.
Paso 3: Reiniciar el servicio SSH
Después de guardar los cambios, debes reiniciar el demonio SSH para que la nueva configuración surta efecto:
systemctl restart sshd
En sistemas más antiguos, puede ser:
service ssh restart
El servicio se reiniciará y quedará escuchando en el nuevo puerto. Ahora, antes de cerrar tu sesión actual, abre una nueva terminal y prueba la conexión con el nuevo puerto:
ssh -p 2200 root@tu-servidor.com
Si la conexión funciona correctamente, ya puedes cerrar la sesión anterior. Si falla, revisa los pasos anteriores y comprueba que no hay errores de sintaxis en el archivo.
Paso 4: Configurar el firewall para permitir el nuevo puerto
DirectAdmin suele incluir un firewall como CSF (ConfigServer Security & Firewall) o iptables. Debes abrir el nuevo puerto para permitir conexiones entrantes.
Si usas CSF (recomendado):
csf -a tu-ip
csf -p 2200
O edita el archivo de configuración:
nano /etc/csf/csf.conf
Busca la sección TCP_IN y añade el nuevo puerto:
TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995,2200"
Guarda y aplica los cambios:
csf -r
Si usas iptables directamente:
iptables -A INPUT -p tcp --dport 2200 -j ACCEPT
service iptables save
[INFO]
Después de configurar el firewall, es recomendable cerrar el puerto 22 para evitar accesos no autorizados. Puedes hacerlo eliminando el puerto de la lista de permitidos en CSF o añadiendo una regla de denegación en iptables.
Paso 5: Actualizar DirectAdmin y los ajustes de seguridad
DirectAdmin no gestiona directamente el puerto SSH, pero sí tiene opciones de seguridad que debes revisar. Accede a tu panel de administración:
- Inicia sesión en DirectAdmin como administrador.
- Ve a Admin Tools → SSH Access.
- Verifica que la configuración sea coherente con lo que has establecido.
Además, te recomiendo activar las siguientes medidas en DirectAdmin:
- Fail2Ban: Bloquea IPs tras varios intentos fallidos de acceso.
- Autenticación por clave pública: Desactiva el acceso por contraseña si es posible.
- Cambiar el puerto del panel: DirectAdmin también tiene su propio puerto (2222 por defecto). Cambiarlo añade otra capa de seguridad.
Medidas adicionales para proteger tu servidor
Cambiar el puerto SSH 22 es solo el primer paso. Para una seguridad DirectAdmin completa, implementa estas prácticas:
1. Usa claves SSH en lugar de contraseñas
Genera un par de claves en tu máquina local:
ssh-keygen -t rsa -b 4096
Copia la clave pública al servidor:
ssh-copy-id -p 2200 root@tu-servidor.com
Luego desactiva el acceso por contraseña en /etc/ssh/sshd_config:
PasswordAuthentication no
2. Configura Fail2Ban
Fail2Ban monitorea los logs y bloquea automáticamente las IPs sospechosas. En DirectAdmin, puedes instalarlo desde el panel o manualmente:
apt install fail2ban
3. Limita el acceso por IP
En el archivo /etc/hosts.allow y /etc/hosts.deny, puedes restringir qué IPs pueden conectarse por SSH:
sshd: 192.168.1.100
4. Cambia el puerto del panel de DirectAdmin
El panel de administración usa el puerto 2222 por defecto. Puedes cambiarlo editando el archivo /usr/local/directadmin/conf/directadmin.conf:
port=2222
Cambia el valor y reinicia el servicio:
service directadmin restart
5. Mantén el sistema actualizado
Ejecuta regularmente:
apt update && apt upgrade
DirectAdmin también tiene su propio sistema de actualizaciones que puedes gestionar desde el panel.
Resolución de problemas comunes
No puedo conectarme después de cambiar el puerto
- Verifica que el servicio SSH esté ejecutándose:
systemctl status sshd - Comprueba que el puerto esté abierto en el firewall:
netstat -tulpn | grep 2200 - Revisa los logs de error:
tail -f /var/log/auth.log
El puerto aparece ocupado
Si el puerto que elegiste ya está en uso, verás un error al reiniciar SSH. Elige otro puerto o libera el existente.
Los clientes FTP u otros servicios dejan de funcionar
Algunos servicios dependen del puerto 22 para conexiones SFTP. Si los usuarios usan SFTP, deberán especificar el nuevo puerto en sus clientes.
Preguntas frecuentes (FAQ)
¿Es suficiente con cambiar el puerto SSH para estar seguro?
No, es una capa adicional, pero debes combinar contraseñas fuertes, claves SSH y firewalls.
¿Puedo usar cualquier número de puerto?
Sí, entre 1024 y 65535. Evita puertos ya asignados a otros servicios.
¿DirectAdmin se ve afectado por el cambio de puerto?
No, DirectAdmin usa su propio puerto (2222). El cambio solo afecta al servicio SSH.
¿Qué pasa si olvido el nuevo puerto?
Puedes acceder por consola (VNC) y volver a cambiar la configuración.
¿Es necesario reiniciar el servidor completo?
No, solo reiniciar el servicio SSH (systemctl restart sshd).
¿Puedo usar Syspanel como alternativa a DirectAdmin?
Syspanel (anteriormente HestiaCP) es otra opción de panel de control. Su puerto de acceso es el 2106 y también permite gestionar la seguridad del servidor.
Conclusión: una medida simple, un gran impacto
Cambiar el puerto SSH en DirectAdmin es una tarea sencilla que puede reducir significativamente los intentos de intrusión automatizados. Combinado con claves SSH, Fail2Ban y un firewall bien configurado, tu servidor estará mucho más protegido.
Recuerda siempre documentar los cambios que realizas y mantener una copia de seguridad de los archivos de configuración. La seguridad es un proceso continuo, no un destino.
Si tienes dudas o problemas, no dudes en consultar la documentación oficial de DirectAdmin o abrir un ticket de soporte con tu proveedor. La comunidad de administradores de sistemas también es un excelente recurso para resolver problemas específicos.
[TIP]
Programa una revisión mensual de la seguridad de tu servidor: cambia contraseñas, revisa logs y actualiza el sistema. La prevención es la mejor herramienta contra los ciberataques.
Este artículo ha sido redactado pensando en usuarios sin experiencia técnica avanzada. Si necesitas ayuda adicional, contacta con tu proveedor de hosting o con un administrador de sistemas profesional.
