Cómo cambiar el puerto SSH en cPanel y por qué deberías hacerlo
¿Sabías que el puerto 22, la puerta de entrada por defecto para SSH, es uno de los objetivos favoritos de los atacantes informáticos? Cada día, miles de bots escanean internet buscando servidores con este puerto abierto para intentar acceder a ellos mediante fuerza bruta. Si tienes un servidor con cPanel, configurar un puerto SSH personalizado es una de las medidas de seguridad más efectivas y sencillas que puedes implementar para proteger tu inversión y tus datos.
En esta guía completa, no solo te explicaré cómo cambiar el puerto SSH en cPanel paso a paso, sino también las razones de peso por las que deberías hacerlo hoy mismo. Hablaremos de seguridad SSH cPanel, de cómo elegir un número de puerto adecuado y de los errores comunes que debes evitar. Prepárate para blindar tu servidor de una forma práctica y sin necesidad de ser un experto en redes.
¿Por qué deberías cambiar el puerto SSH por defecto?
Imagina que tu servidor es una casa. La puerta principal (el puerto 22) tiene una cerradura estándar que todos los ladrones conocen. Cambiar el puerto SSH es como mover esa puerta a un lugar secreto del jardín; los ladrones seguirán llamando a la puerta vieja, pero ya no lleva a ninguna parte.
Esta es la razón principal: la seguridad por oscuridad. Aunque no es una solución infalible, configurar SSH en un puerto no estándar reduce drásticamente el ruido de fondo de ataques automatizados.
Los riesgos de mantener el puerto 22 abierto
- Ataques de fuerza bruta: Los bots prueban miles de combinaciones de usuario y contraseña por minuto.
- Explotación de vulnerabilidades: Los atacantes buscan versiones antiguas de OpenSSH con fallos conocidos.
- Consumo de recursos: Cada intento de conexión fallido consume CPU y ancho de banda, lo que puede ralentizar tu sitio web.
- Registros (logs) saturados: Tu archivo de logs se llenará de intentos fallidos, dificultando la detección de amenazas reales.
Al usar un puerto SSH personalizado, como el 2200 o el 5522, los escaneos masivos ya no te encontrarán fácilmente. Es una capa extra de protección que, combinada con claves SSH y autenticación de dos factores, hace que tu servidor sea un objetivo mucho menos atractivo.
Requisitos previos antes de tocar la configuración
Antes de lanzarnos a modificar archivos, es crucial que tengas a mano dos cosas: acceso de root (administrador total) y una forma de recuperar el acceso si algo sale mal. Te recomiendo encarecidamente tener abierta una segunda sesión SSH mientras haces los cambios.
Acceso de administrador (Root)
Para proteger servidor cPanel modificando la configuración de SSH, necesitarás permisos de superusuario. Si tu plan de hosting es VPS o dedicado, tendrás acceso root. Si solo tienes cPanel compartido, esta opción no estará disponible, pero este artículo te servirá para entender el proceso.
Conexión de respaldo (¡Crítico!)
Este es el paso más importante. Si te equivocas al cambiar el puerto y cierras la sesión antes de aplicar los cambios correctamente, podrías quedarte fuera de tu servidor para siempre.
[WARNING]
ANTES DE CONTINUAR: Abre una segunda ventana de terminal y conéctate a tu servidor por SSH. Déjala abierta y funcionando mientras realizas los pasos siguientes. Si algo sale mal, podrás usar esa sesión para revertir los cambios. Nunca trabajes con una sola conexión.
Cómo cambiar el puerto SSH en cPanel: Guía paso a paso
El proceso se realiza principalmente a través de la terminal, aunque cPanel ofrece una interfaz para gestionar el acceso SSH. Vamos a ver el método más directo y fiable: editar el archivo de configuración de SSH.
Paso 1: Conéctate a tu servidor por SSH
Abre tu terminal (PuTTY en Windows, Terminal en Mac/Linux) y conéctate a tu servidor como usuario root:
ssh root@tu-dominio.com
Te pedirá tu contraseña. Una vez dentro, ya estás listo para trabajar.
Paso 2: Localiza y edita el archivo de configuración
El archivo que controla el puerto de SSH es sshd_config. Vamos a hacer una copia de seguridad antes de tocarlo, por si acaso.
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
Ahora, abre el archivo con un editor de texto. Usaremos nano por su simplicidad:
nano /etc/ssh/sshd_config
Paso 3: Modifica la directiva del puerto
Dentro del archivo, busca la línea que dice #Port 22. Es posible que esté comentada (con una # al principio). Debes descomentarla (quitar la #) y cambiar el número.
- Antes:
#Port 22 - Después:
Port 2200(o el número que hayas elegido)
[TIP]
¿Qué puerto elegir? Elige un número entre 1024 y 65535 que no esté en uso. Evita puertos comunes como 21 (FTP), 80 (HTTP) o 443 (HTTPS). Algunos populares son el 2222, 2200 o 5522. Asegúrate de que el número no esté en la lista de puertos bloqueados por tu proveedor de hosting.
Paso 4: Guarda los cambios y reinicia el servicio
Guarda el archivo en nano presionando Ctrl + O (guardar) y luego Ctrl + X (salir).
Ahora, es el momento de aplicar los cambios. Reinicia el servicio SSH:
systemctl restart sshd
O en algunos sistemas más antiguos:
service sshd restart
[INFO]
IMPORTANTE: No cierres tu sesión actual todavía. Primero, abre una nueva ventana de terminal y prueba a conectarte con el nuevo puerto:
ssh -p 2200 root@tu-dominio.com
Si la conexión es exitosa, entonces sí puedes cerrar la sesión antigua. Si falla, revisa los pasos anteriores y utiliza la sesión de respaldo para corregirlo.
Configurar el firewall de cPanel (CSF) para tu nuevo puerto
cPanel suele venir con un firewall llamado ConfigServer Security & Firewall (CSF). Debes permitir el tráfico en tu nuevo puerto, o no podrás conectarte.
Abrir el puerto en CSF
Accede a tu panel de control de cPanel o WHM y busca la sección de ConfigServer Security & Firewall o conéctate por terminal y edita el archivo de configuración:
nano /etc/csf/csf.conf
Busca la línea TCP_IN y añade tu nuevo puerto a la lista. Debe verse algo así:
TCP_IN = "20,21,25,53,80,110,143,443,465,587,993,995,2200"
Guarda el archivo y reinicia el firewall para aplicar los cambios:
csf -r
También necesitarás abrir el puerto en el firewall del sistema operativo (si usas iptables o firewalld), aunque CSF normalmente gestiona esto automáticamente.
[WARNING]
NO OLVIDES EL FIREWALL: Si solo cambias el puerto ensshd_configpero no abres el puerto en el firewall, te quedarás bloqueado. Este es el error más común y la razón por la que muchos usuarios se quedan fuera de su servidor.
Configurar el acceso SSH desde cPanel (WHM)
cPanel/WHM tiene una interfaz gráfica que te permite gestionar el acceso SSH. Aunque no cambia el puerto directamente, es esencial para asegurar que solo los usuarios autorizados puedan usar SSH.
Acceder a la configuración de SSH en WHM
Inicia sesión en tu WHM (normalmente en https://tu-dominio.com:2087) y busca la sección "Security" o "Seguridad". Allí encontrarás la opción "SSH Password Authorization" o "Manage root's SSH keys".
- Deshabilita la autenticación por contraseña: Es mucho más seguro usar claves SSH. En el archivo
sshd_config, asegúrate de que la líneaPasswordAuthentication noesté activa después de configurar tus claves. - Usa claves SSH: Genera un par de claves (pública y privada) y añade la clave pública a tu archivo
~/.ssh/authorized_keys. Esto es como tener una llave maestra irrompible.
Errores comunes y cómo solucionarlos
Aunque el proceso es sencillo, es fácil cometer errores. Aquí tienes los más habituales y sus soluciones:
Error: "Connection refused" al usar el nuevo puerto
- Causa: El firewall no tiene abierto el nuevo puerto.
- Solución: Revisa
csf.confy asegúrate de que el puerto está enTCP_IN. Reinicia CSF concsf -r.
Error: "Permission denied" al conectarse
- Causa: La autenticación está fallando. Puede ser que hayas deshabilitado las contraseñas pero no hayas configurado las claves.
- Solución: Usa tu sesión de respaldo para revisar
sshd_configy asegúrate de quePasswordAuthentication yes(temporalmente) o que tus claves SSH estén correctamente instaladas.
Olvidé el nuevo puerto
- Solución: Accede a tu servidor a través del panel de control de tu proveedor (VNC o consola web) y revisa el archivo
/etc/ssh/sshd_config.
Preguntas frecuentes (FAQ) sobre la seguridad SSH en cPanel
Aquí respondemos las dudas más comunes que nos llegan al soporte técnico.
¿Es realmente necesario cambiar el puerto SSH si uso claves SSH?
Sí, es muy recomendable. Aunque las claves SSH son mucho más seguras que las contraseñas, los ataques de fuerza bruta pueden intentar adivinar el nombre de usuario y, si tu clave privada se ve comprometida, un puerto no estándar añade una barrera adicional. Es una defensa en profundidad.
¿Puedo usar cualquier número de puerto para SSH?
Técnicamente sí, desde el 1 hasta el 65535. Sin embargo, debes evitar los puertos por debajo de 1024 (puertos privilegiados) a menos que sepas lo que haces, y verificar que el puerto no esté en uso por otro servicio.
¿Cómo afecta esto a mis aplicaciones que usan SSH (como SFTP)?
Si usas SFTP para subir archivos, ahora deberás especificar el nuevo puerto en tu cliente FTP (por ejemplo, FileZilla). En la configuración de la conexión, deberás poner el puerto personalizado en el campo "Puerto".
¿Qué pasa si mi proveedor de hosting bloquea el puerto que elegí?
Muchos proveedores de hosting tienen una lista de puertos bloqueados por políticas de seguridad. Antes de elegir uno, consulta su documentación o abre un ticket de soporte. Es mejor elegir un puerto alto y poco común.
¿Cada cuánto tiempo debo cambiar el puerto SSH?
No es necesario cambiarlo con frecuencia. Una vez que lo configuras y lo documentas, puedes mantenerlo durante mucho tiempo. Lo importante es que no uses el puerto 22 por defecto. Si sospechas que alguien lo ha descubierto, puedes cambiarlo de nuevo siguiendo esta misma guía.
Conclusión: Da el salto y protege tu servidor hoy
Cambiar el puerto SSH en cPanel es una tarea de mantenimiento básico que tiene un impacto enorme en tu postura de seguridad. No es una solución mágica, pero es un paso fundamental para proteger servidor cPanel de ataques automatizados y curiosos malintencionados.
Hemos visto que el proceso es sencillo: editar sshd_config, reiniciar el servicio y ajustar el firewall. Con la copia de seguridad y la sesión de respaldo, el riesgo es mínimo. La tranquilidad de saber que tu servidor no es un blanco fácil no tiene precio.
Te animo a que no lo dejes para mañana. Convierte esta guía en tu checklist personal y aplica el cambio ahora mismo. Tu yo del futuro (y tu servidor) te lo agradecerá.
Y recuerda, si en algún momento te sientes perdido o necesitas ayuda con la configuración SSH o cualquier otro aspecto de tu hosting, nuestro equipo de soporte está aquí para ayudarte. ¡No dudes en contactarnos!
