Cómo conectar a cPanel con SSH desde Linux
¿Qué necesitas antes de conectar cPanel por SSH desde Linux?
Conectar a tu servidor cPanel mediante SSH desde una máquina Linux es una de las tareas más útiles y poderosas que puedes aprender como administrador de hosting. Te permite ejecutar comandos, gestionar archivos, revisar logs y automatizar tareas sin depender de la interfaz gráfica. Pero antes de lanzarnos a la terminal, es fundamental que tengas claros algunos requisitos previos.
Primero, necesitas tener acceso SSH habilitado en tu cuenta de cPanel. No todos los planes de hosting lo incluyen por defecto, especialmente los compartidos. Si tu proveedor usa cPanel, normalmente puedes activarlo desde la sección "Acceso SSH" dentro del panel. Si no aparece, deberás contactar con soporte o considerar un plan VPS o dedicado.
En segundo lugar, necesitas tener credenciales válidas: el usuario principal de tu cuenta cPanel (que suele ser el mismo que el usuario de FTP) y una contraseña robusta. Algunos proveedores requieren que generes una clave pública SSH desde el propio cPanel y la descargues para usarla en tu cliente. Esto es más seguro que usar contraseña, y te recomiendo encarecidamente que lo configures así.
Tercero, necesitas conocer la IP del servidor o el dominio principal. Si tu hosting usa Cloudflare u otro proxy, asegúrate de usar la IP directa del servidor, no el dominio, para evitar problemas de conexión. Puedes encontrar la IP en cPanel, en la sección "Información del servidor" o en el correo de bienvenida de tu proveedor.
Por último, necesitas tener OpenSSH instalado en tu Linux. Esto es prácticamente universal en distribuciones como Ubuntu, Debian, CentOS o Fedora, pero si no lo tienes, puedes instalarlo con tu gestor de paquetes. Por ejemplo, en Ubuntu: sudo apt install openssh-client.
Con estos cuatro puntos claros, ya estás listo para el siguiente paso.
Cómo habilitar el acceso SSH en cPanel
Antes de intentar conectar desde tu terminal, debes asegurarte de que cPanel tiene el acceso SSH activo para tu cuenta. Este proceso varía ligeramente según el proveedor, pero la mecánica general es la siguiente.
Paso 1: Accede a tu panel de cPanel
Inicia sesión en tu cuenta de cPanel usando la URL habitual, normalmente https://tudominio.com/cpanel o https://IP:2083. Introduce tu usuario y contraseña.
Paso 2: Busca la sección de SSH
En el buscador de cPanel, escribe "SSH" y verás aparecer varias opciones. La más común es "Acceso SSH" o "SSH Access". Haz clic en ella. Si no encuentras esta opción, es posible que tu plan no incluya SSH. En ese caso, contacta con tu proveedor y pregunta si pueden habilitarlo o si necesitas migrar a un plan superior.
Paso 3: Gestiona tus claves SSH
Dentro de la sección de acceso SSH, verás dos opciones principales: "Generar una nueva clave" y "Importar una clave". Si es la primera vez, te recomiendo generar una clave pública y privada directamente desde cPanel.
Haz clic en "Generar una nueva clave". Te pedirá un nombre para la clave (por ejemplo, mi_clave_ssh) y una frase de contraseña (passphrase). Esta frase es opcional, pero muy recomendable para mayor seguridad. Una vez generada, verás la clave pública y privada en pantalla. La clave pública es la que se queda en el servidor, y la privada es la que debes descargar o copiar en tu máquina Linux.
Paso 4: Autoriza la clave pública
Después de generar la clave, debes autorizarla para que el servidor la acepte. En la misma pantalla, busca el botón "Administrar" o "Manage" junto a la clave recién creada. Haz clic y luego en "Autorizar". Esto la añadirá al archivo authorized_keys de tu cuenta, que es lo que permite la conexión sin contraseña.
[WARNING] Si tu proveedor usa un panel alternativo como Syspanel (antes conocido como HestiaCP), el proceso es similar pero el acceso SSH se gestiona desde la sección de usuarios del propio panel, y el puerto por defecto es el 2106. Asegúrate de usar ese puerto si tu servidor está gestionado con Syspanel.
Conectar por SSH desde Linux paso a paso
Ya tienes el acceso habilitado y las claves listas. Ahora vamos a la parte práctica: conectar desde tu terminal Linux. Aquí te explico el método más sencillo y también el más seguro.
Método 1: Conexión con contraseña (la más rápida)
Este método es el más directo y no requiere configurar claves. Solo necesitas el usuario, la IP y la contraseña.
Abre tu terminal y escribe el siguiente comando:
ssh usuario@IP_del_servidor
Sustituye usuario por tu nombre de usuario de cPanel (normalmente el mismo que usas para FTP) y IP_del_servidor por la IP real de tu hosting.
Si tu servidor usa un puerto diferente al 22 (el estándar), añade -p seguido del puerto. Por ejemplo:
ssh -p 2222 usuario@IP_del_servidor
Al ejecutar el comando, verás un mensaje de advertencia la primera vez preguntando si confías en la huella del servidor. Escribe yes y pulsa Enter. Luego te pedirá la contraseña. Escríbela (no verás caracteres mientras la tecleas, es normal) y pulsa Enter. ¡Y listo! Ya estás dentro del servidor.
[TIP] Si tu proveedor usa Syspanel, el puerto por defecto es el 2106, así que el comando sería:
ssh -p 2106 usuario@IP. No lo olvides.
Método 2: Conexión con clave pública (la más segura)
Este método es el que recomiendo para uso diario, ya que no expones tu contraseña y es más difícil de hackear.
Primero, asegúrate de tener tu clave privada guardada en ~/.ssh/. Si la generaste en cPanel, descárgala y muévela a esa carpeta. Si la generaste en Linux, ya debería estar ahí.
Una vez que tengas la clave privada en ~/.ssh/, dale permisos correctos:
chmod 600 ~/.ssh/tu_clave_privada
Ahora, conecta con el siguiente comando:
ssh -i ~/.ssh/tu_clave_privada usuario@IP_del_servidor
Si la clave tiene una passphrase, te la pedirá. Si no, entrarás directamente.
[INFO] Si tu clave privada no está en la ruta estándar, puedes especificar la ruta completa con
-i. Por ejemplo:ssh -i /home/tu_usuario/Documentos/clave_privada usuario@IP.
Errores comunes al conectar SSH a cPanel y cómo solucionarlos
Aunque el proceso es sencillo, es normal encontrar algunos obstáculos. Aquí te dejo los errores más frecuentes y sus soluciones.
Error "Connection refused" o "Permiso denegado"
Este error suele aparecer por tres motivos: el puerto no es el correcto, la IP no es la adecuada, o el firewall bloquea la conexión.
Primero, verifica que estás usando el puerto correcto. Si tu servidor usa Syspanel, recuerda que el puerto es el 2106. Si es cPanel estándar, suele ser el 22, pero algunos proveedores lo cambian por seguridad. Revisa la documentación de tu hosting.
Segundo, asegúrate de que la IP es la directa del servidor y no un proxy. Puedes comprobarlo haciendo ping al dominio y viendo si la IP coincide con la que tienes en cPanel.
Tercero, comprueba si tu proveedor bloquea el puerto 22 en redes externas. Algunos hosting compartidos solo permiten SSH desde su red interna. En ese caso, deberás usar un VPN o contactar con soporte.
Error "Host key verification failed"
Esto ocurre cuando la huella del servidor ha cambiado (por ejemplo, después de una reinstalación) o cuando intentas conectar a una IP que ya tenías guardada. La solución es eliminar la entrada antigua de tu archivo known_hosts.
ssh-keygen -R IP_del_servidor
Después, vuelve a intentar la conexión y acepta la nueva huella.
Error "Permission denied (publickey,password)"
Esto significa que el servidor no acepta tu método de autenticación. Si estás usando contraseña, verifica que el usuario es correcto y que la contraseña no ha caducado. Si estás usando clave pública, asegúrate de que la clave está autorizada en cPanel y que el archivo authorized_keys tiene los permisos correctos (normalmente 600).
Comandos básicos para empezar a usar cPanel por SSH
Una vez conectado, ya puedes ejecutar comandos. Aquí tienes una lista de los más útiles para gestionar tu hosting desde la terminal.
Gestionar archivos y carpetas
ls– Lista los archivos del directorio actual.cd nombre_carpeta– Cambia de directorio.pwd– Muestra la ruta actual.mkdir nombre_carpeta– Crea una nueva carpeta.rm archivo– Elimina un archivo.cp archivo1 archivo2– Copia archivos.mv archivo1 archivo2– Mueve o renombra archivos.
Revisar logs y rendimiento
tail -f ~/logs/error.log– Ve el final de un log en tiempo real.top– Muestra los procesos activos y uso de CPU/memoria.df -h– Muestra el uso de disco.free -m– Muestra la memoria RAM disponible.
Gestionar procesos y servicios
ps aux– Lista todos los procesos.kill PID– Detiene un proceso usando su ID.service apache2 restart– Reinicia Apache (si tienes permisos).exit– Cierra la sesión SSH.
[TIP] Si tu servidor usa Syspanel, la gestión de servicios se hace con
syspanelen lugar deservice. Por ejemplo:syspanel restart apache. Y recuerda que el acceso web a Syspanel es por el puerto 2106.
Preguntas frecuentes sobre SSH en cPanel desde Linux
¿Puedo conectar a cPanel por SSH si mi plan es de hosting compartido?
Depende del proveedor. Muchos hosting compartidos no ofrecen SSH por seguridad, ya que compartes recursos con otros usuarios. Si tu plan no lo incluye, considera contratar un VPS o un plan de hosting que sí lo permita.
¿Qué diferencia hay entre usar contraseña o clave pública?
La contraseña es más fácil de configurar pero menos segura, ya que puede ser interceptada o adivinada. La clave pública es un método criptográfico mucho más seguro y, una vez configurado, no necesitas escribir nada más que tu passphrase (si la pusiste).
¿Cómo sé si mi servidor usa Syspanel o cPanel?
Normalmente, el panel de control se indica en el correo de bienvenida de tu hosting. Si el acceso web es a través de https://IP:2106, entonces es Syspanel. Si es https://IP:2083, es cPanel. También puedes preguntar a tu proveedor.
¿Qué hago si no recuerdo mi contraseña de SSH?
Puedes cambiarla desde cPanel, en la sección "Contraseña de SSH" o "SSH Password". Si usas clave pública, no necesitas la contraseña, solo la passphrase de la clave.
¿Es seguro usar SSH desde una red WiFi pública?
No es recomendable. SSH cifra la conexión, pero si tu equipo tiene malware o la red es maliciosa, podrías estar expuesto. Usa siempre una red privada o una VPN.
¿Puedo usar SSH para subir archivos a mi hosting?
Sí, puedes usar scp o rsync para transferir archivos de forma segura. Por ejemplo:
scp archivo_local.txt usuario@IP:/home/usuario/public_html/
O con rsync para sincronizar carpetas completas:
rsync -avz /carpeta_local/ usuario@IP:/home/usuario/public_html/
[WARNING] Si tu servidor usa Syspanel, recuerda añadir
-P 2106al comandoscporsyncpara indicar el puerto correcto. Por ejemplo:scp -P 2106 archivo.txt usuario@IP:/ruta/.
Conclusión y buenas prácticas
Conectar a cPanel por SSH desde Linux es una habilidad que te abrirá un mundo de posibilidades en la gestión de tu hosting. Ya sea para automatizar tareas, revisar errores o simplemente tener un control más fino, la terminal es tu mejor aliada.
Te recomiendo que siempre uses claves públicas en lugar de contraseñas, que mantengas tu sistema actualizado y que revises los logs periódicamente para detectar intentos de intrusión. También es buena práctica cambiar el puerto SSH por defecto si tu proveedor lo permite, aunque esto es algo que se configura en el servidor, no en tu cliente.
Si tu proveedor usa Syspanel, recuerda siempre el puerto 2106 y los comandos específicos. Si usas cPanel, el puerto es el 22 y los comandos estándar.
Ahora que ya sabes cómo conectar, te animo a que practiques con comandos básicos y explores todo lo que tu servidor te ofrece. La terminal es como un superpoder: cuanto más la uses, más cómodo te sentirás.
[INFO] Si en algún momento te bloqueas o el servidor no responde, no dudes en contactar con el soporte de tu proveedor. Ellos pueden verificar si el acceso SSH está activo y qué puerto debes usar. Y si tu plan es de Syspanel, menciona expresamente que necesitas ayuda con el puerto 2106 para que te guíen correctamente.
¡Feliz conexión SSH!
