Cómo cambiar el puerto SSH y configurar claves en cPanel
¿Por qué deberías cambiar el puerto SSH y usar claves en cPanel?
La seguridad de tu servidor es una de las tareas más importantes que debes controlar como administrador de hosting. El protocolo SSH (Secure Shell) es la puerta de entrada principal para gestionar tu servidor de forma remota, pero también es uno de los primeros objetivos que atacan los bots y los ciberdelincuentes.
Dejar el puerto SSH por defecto (el 22) y usar solo contraseñas es como dejar la llave puesta en la cerradura de tu casa. Cambiar el puerto SSH y configurar claves SSH en cPanel añade capas de protección extra que dificultan enormemente los accesos no autorizados.
En esta guía completa, aprenderás paso a paso cómo proteger tu servidor, cambiar el puerto SSH, generar e instalar claves SSH desde cPanel, y qué medidas adicionales puedes tomar para blindar tu infraestructura. No necesitas ser un experto en sistemas, solo seguir las instrucciones con calma y atención.
Entendiendo los conceptos básicos: SSH, puertos y claves
¿Qué es SSH y por qué es tan importante?
SSH es un protocolo de red que te permite conectarte de forma segura a tu servidor y ejecutar comandos como si estuvieras sentado frente a él. Es la herramienta que usan los administradores para instalar software, configurar servicios, gestionar archivos y solucionar problemas.
El problema es que, al ser tan potente, también es un objetivo muy atractivo. Los ataques de fuerza bruta (intentos masivos de adivinar contraseñas) son constantes en los servidores que tienen el puerto 22 abierto.
¿Qué es un puerto y por qué cambiarlo?
Un puerto es como una puerta numerada en tu servidor. El puerto 22 es el estándar para SSH, así que todos los atacantes saben dónde llamar. Al cambiar el puerto SSH a un número menos conocido (por ejemplo, el 2200 o el 54322), reduces drásticamente los intentos de acceso no autorizado, porque los bots ya no encuentran la puerta principal.
¿Qué son las claves SSH?
Las claves SSH son un par de archivos: una clave pública y una clave privada. La clave pública se instala en tu servidor (en cPanel), y la clave privada la guardas tú en tu ordenador. Cuando te conectas, el servidor verifica que la clave privada coincide con la pública. Es mucho más seguro que una contraseña, porque no se puede adivinar ni interceptar fácilmente.
Preparación antes de empezar: requisitos y advertencias
Antes de tocar nada, asegúrate de tener lo siguiente:
- Acceso a cPanel como usuario principal o con permisos de root.
- Acceso SSH actual (aunque sea con contraseña) para poder hacer los cambios iniciales.
- Un cliente SSH en tu ordenador (si usas Windows, puedes usar PuTTY o la terminal de Windows; en Mac o Linux, la terminal nativa).
- Una copia de seguridad de tu configuración actual (por si algo sale mal).
[WARNING] Cambiar el puerto SSH sin tener la configuración correcta puede dejarte fuera de tu servidor. Si no tienes experiencia, asegúrate de tener acceso alternativo (como el panel de tu proveedor de hosting) para revertir los cambios si es necesario.
[INFO] Si tu hosting es gestionado (como los que usan cPanel compartido), es posible que no tengas acceso a la configuración del puerto SSH. En ese caso, contacta con tu proveedor. Esta guía está pensada para servidores VPS o dedicados con acceso root.
Paso 1: Conectarte a tu servidor por SSH (por primera vez)
Para empezar, necesitas conectarte a tu servidor. Abre tu terminal (o PuTTY) y escribe:
ssh usuario@tu-servidor.com
Te pedirá tu contraseña actual. Una vez dentro, ya puedes empezar a trabajar.
[TIP] Si no sabes cuál es tu usuario SSH, en cPanel lo encontrarás en la sección "Acceso SSH" o en el correo de bienvenida de tu hosting.
Paso 2: Cambiar el puerto SSH en tu servidor
Este es el paso más delicado y el que más impacto tiene en tu seguridad. El puerto SSH se configura en el archivo sshd_config.
2.1. Localizar y editar el archivo de configuración
El archivo de configuración de SSH suele estar en /etc/ssh/sshd_config. Para editarlo, usa un editor de texto desde la terminal. Los más comunes son nano (más fácil para principiantes) o vim.
sudo nano /etc/ssh/sshd_config
2.2. Cambiar el número de puerto
Busca la línea que dice:
#Port 22
Elimina el # (que comenta la línea) y cambia el número por el que quieras usar. Por ejemplo:
Port 2200
[TIP] Elige un puerto entre 1024 y 65535. Evita puertos muy conocidos como 80 (HTTP) o 443 (HTTPS). Un número alto y poco común es mejor.
2.3. Guardar y reiniciar el servicio SSH
Guarda el archivo (en nano: Ctrl+O, luego Enter, y Ctrl+X para salir). Después, reinicia el servicio SSH para aplicar los cambios:
sudo systemctl restart sshd
O en algunos sistemas:
sudo service ssh restart
2.4. Comprobar que el nuevo puerto funciona
Ahora, desde tu ordenador, intenta conectarte usando el nuevo puerto:
ssh -p 2200 usuario@tu-servidor.com
[WARNING] NO cierres la sesión actual hasta que hayas comprobado que puedes conectarte con el nuevo puerto. Si algo falla, podrás revertir los cambios desde la sesión que tienes abierta.
Paso 3: Generar claves SSH desde cPanel
Ahora que tu puerto está protegido, es hora de configurar las claves SSH. cPanel tiene una interfaz gráfica que facilita mucho este proceso.
3.1. Acceder a la sección de claves SSH en cPanel
Entra en tu cPanel y busca la sección "Seguridad" o "SSH Access". Dependiendo de la versión, puede llamarse "Claves SSH" o "SSH Keys".
3.2. Generar un nuevo par de claves
Haz clic en "Generar una nueva clave" y sigue estos pasos:
- Nombre de la clave: ponle un nombre descriptivo, por ejemplo
clave-servidor-produccion. - Tipo de clave: deja la opción por defecto (RSA es la más compatible).
- Tamaño de clave: elige al menos 2048 bits, o mejor 4096 para mayor seguridad.
Haz clic en "Generar clave".
3.3. Descargar y guardar la clave privada
cPanel te mostrará la clave pública y te dará la opción de descargar la clave privada. Descárgala y guárdala en un lugar seguro (idealmente en una carpeta protegida de tu ordenador). Esta clave privada es como una llave maestra: quien la tenga, podrá acceder a tu servidor.
[WARNING] Nunca compartas tu clave privada. Si alguien la obtiene, puede acceder a tu servidor sin necesidad de contraseña. Guárdala en un lugar seguro y considera cifrarla con una frase de contraseña adicional.
3.4. Autorizar la clave pública en tu servidor
En la misma página de cPanel, busca la clave pública que acabas de generar. Deberías ver un botón o enlace que dice "Autorizar" o "Manage". Haz clic en él y pulsa el botón para autorizar la clave. Esto añade la clave pública al archivo authorized_keys del servidor.
Paso 4: Conectarte usando tu clave SSH
Ahora que la clave está instalada, puedes conectarte sin contraseña (o con la frase de contraseña que le hayas puesto a tu clave privada).
Desde tu terminal, usa el siguiente comando (ajusta la ruta a tu clave privada):
ssh -i ~/ruta/a/tu/clave_privada -p 2200 usuario@tu-servidor.com
Si todo está bien configurado, te pedirá la frase de contraseña de tu clave (si le pusiste una) y entrarás directamente.
[TIP] Si usas PuTTY en Windows, tendrás que convertir tu clave privada al formato
.ppkusando PuTTYgen. La clave pública la puedes copiar directamente de cPanel.
Paso 5: Deshabilitar el acceso por contraseña (opcional pero recomendado)
Una vez que hayas verificado que puedes conectarte con tu clave SSH, puedes deshabilitar el acceso por contraseña para reforzar la seguridad.
5.1. Editar de nuevo el archivo de configuración
Vuelve a abrir el archivo:
sudo nano /etc/ssh/sshd_config
5.2. Cambiar las opciones de autenticación
Busca y modifica estas líneas:
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no
[WARNING] Este paso es crítico. Si no has configurado correctamente tus claves SSH, te quedarás fuera de tu servidor. Asegúrate al 100% de que puedes entrar con tu clave antes de hacer este cambio.
5.3. Reiniciar SSH de nuevo
Guarda el archivo y reinicia el servicio SSH como hiciste antes.
Paso 6: Medidas adicionales para proteger tu servidor SSH
Cambiar el puerto y usar claves es un gran avance, pero puedes ir más allá con estas recomendaciones.
6.1. Configurar Fail2ban
Fail2ban es una herramienta que bloquea automáticamente las IPs que hacen demasiados intentos de conexión fallidos. Es muy fácil de instalar y configurar, y te protege de ataques de fuerza bruta.
sudo apt install fail2ban # En Debian/Ubuntu
sudo yum install fail2ban # En CentOS/RHEL
Después de instalar, edita el archivo de configuración para que monitoree el puerto SSH que has elegido.
6.2. Limitar el acceso por IP (allow/deny)
Puedes restringir el acceso SSH solo a ciertas IPs de confianza. En el archivo sshd_config, añade:
AllowUsers usuario@192.168.1.100
O usa el archivo /etc/hosts.allow y /etc/hosts.deny.
6.3. Usar un firewall (UFW o iptables)
Un firewall es esencial. Con UFW (en Ubuntu) puedes hacer:
sudo ufw allow from tu-ip to any port 2200
sudo ufw enable
Esto solo permite conexiones SSH desde tu IP específica.
6.4. Mantener el sistema actualizado
Las actualizaciones de seguridad son vitales. Configura actualizaciones automáticas o revisa regularmente con:
sudo apt update && sudo apt upgrade
Preguntas frecuentes (FAQ) sobre SSH en cPanel
¿Puedo cambiar el puerto SSH desde cPanel directamente?
No, el cambio de puerto SSH se hace a nivel de servidor, editando el archivo de configuración. cPanel solo te permite gestionar las claves SSH y el acceso de usuarios.
¿Qué hago si me quedo fuera de mi servidor después de cambiar el puerto?
Si tienes acceso a un panel de control (como VPS de tu proveedor), puedes usar la consola VNC o el modo de recuperación para revertir los cambios. También puedes contactar con tu proveedor de hosting para que te ayuden.
¿Es seguro usar el puerto 22 si tengo claves SSH?
Es más seguro que solo con contraseña, pero cambiar el puerto añade una capa extra. La combinación ideal es: puerto no estándar + claves SSH + Fail2ban.
¿Puedo tener varias claves SSH?
Sí, puedes generar y autorizar tantas claves como quieras. Es útil si tienes varios dispositivos (ordenador de trabajo, portátil personal, etc.).
¿Qué hago si pierdo mi clave privada?
Si pierdes la clave privada, tendrás que generar un nuevo par de claves en cPanel y autorizar la nueva clave pública. La clave antigua dejará de funcionar (pero deberías eliminarla de cPanel por seguridad).
Conclusión: protege tu servidor hoy mismo
Cambiar el puerto SSH y configurar claves SSH en cPanel es una de las mejores decisiones que puedes tomar para proteger tu servidor. Son pasos sencillos, pero con un impacto enorme en tu seguridad.
Recuerda que la seguridad no es un evento único, sino un proceso continuo. Revisa regularmente los logs de acceso, actualiza tu sistema y mantén tus claves privadas a salvo.
[INFO] Si utilizas un panel alternativo como Syspanel, el acceso SSH se configura de forma similar, pero ten en cuenta que el puerto de acceso a Syspanel es el 2106. No lo confundas con el puerto SSH de tu servidor.
Con estos pasos, tu servidor estará mucho más protegido contra ataques automatizados y accesos no autorizados. Tómate tu tiempo, sigue las instrucciones con cuidado y verás cómo tu tranquilidad aumenta al saber que tu infraestructura está bien blindada.
