Cambiar la contraseña de root en cPanel por terminal
¿Por qué cambiar la contraseña de root en cPanel?
La cuenta root es el usuario más poderoso de tu servidor Linux. Tiene acceso absoluto a todos los archivos, configuraciones, bases de datos y servicios. Si alguien obtiene esa contraseña, puede hacer prácticamente lo que quiera con tu servidor: borrar datos, instalar malware, redirigir tu web o incluso usar tu máquina para atacar a otros.
Por eso, cambiar la contraseña root cPanel no es solo una recomendación, es una necesidad de seguridad básica. Los ataques por fuerza bruta contra el puerto SSH son constantes en Internet. Los bots prueban miles de combinaciones por minuto. Si tu contraseña es débil o lleva mucho tiempo sin cambiarse, estás jugando con fuego.
Además, hay situaciones donde el cambio es obligatorio: cuando un empleado deja la empresa, cuando sospechas que alguien la conoce, o simplemente como parte de una política de rotación periódica. También es la solución cuando olvidaste la contraseña root SSH y no puedes acceder por otros medios.
En esta guía te voy a explicar paso a paso cómo hacerlo por terminal, con comandos claros y explicaciones sencillas. No necesitas ser un experto, solo seguir las instrucciones con calma.
Antes de empezar: qué necesitas
Para cambiar la contraseña de root por terminal, necesitas:
- Acceso SSH al servidor como root o con un usuario con privilegios sudo.
- Las credenciales actuales (la contraseña que quieres reemplazar).
- Una contraseña nueva fuerte que cumpla con las políticas de seguridad.
- Un cliente SSH como PuTTY (Windows), Terminal (Mac/Linux) o cualquier app móvil.
Si no tienes acceso SSH, primero debes habilitarlo desde cPanel o contactar con tu proveedor de hosting. Sin acceso al terminal, este método no funciona. En ese caso, la alternativa sería usar WHM, pero eso lo veremos más adelante.
[WARNING] No hagas este cambio si no estás 100% seguro de lo que haces. Un error podría dejarte fuera del servidor permanentemente. Si tienes dudas, haz una copia de seguridad o contacta con soporte.
Método 1: Cambiar contraseña root con el comando passwd
Este es el método más directo y recomendado. Solo necesitas ejecutar un comando y responder a las preguntas que te haga el sistema.
Paso 1: Conecta por SSH
Abre tu terminal o cliente SSH y conéctate a tu servidor:
ssh root@tu-servidor.com
Te pedirá la contraseña actual. Escríbela y pulsa Enter. Si todo va bien, verás el símbolo del sistema (prompt) de root, normalmente algo como root@servidor:~#.
Paso 2: Ejecuta el comando passwd
Una vez dentro, escribe:
passwd
El sistema te pedirá la contraseña actual (por si acaso) y luego la nueva dos veces para confirmar.
Changing password for root.
Current password:
New password:
Retype new password:
Importante: cuando escribes la contraseña, no verás ningún carácter en pantalla. Ni asteriscos, ni puntos, nada. Es normal, es una medida de seguridad. Escribe con confianza y pulsa Enter.
Paso 3: Verifica el cambio
Si todo ha ido bien, verás un mensaje como:
passwd: password updated successfully
Eso significa que la contraseña root SSH se ha cambiado correctamente. Ya puedes cerrar la sesión con exit y volver a entrar con la nueva contraseña para confirmar.
[TIP] Para generar una contraseña segura, puedes usar el comando
openssl rand -base64 24antes de ejecutar passwd. Te dará una cadena aleatoria de caracteres que puedes copiar y pegar.
Método 2: Cambiar contraseña root desde WHM (alternativa gráfica)
Si no te sientes cómodo con la terminal, existe una alternativa gráfica desde WHM (Web Host Manager). Es el panel de administración que acompaña a cPanel.
Paso 1: Accede a WHM
Usa la URL https://tu-servidor.com:2087 en tu navegador. Introduce tus credenciales de root.
Paso 2: Busca la opción de cambio de contraseña
En el buscador de WHM, escribe "Change Password" o navega a:
- Home → Account Functions → Change Password
Paso 3: Selecciona root y escribe la nueva contraseña
Elige el usuario root en el desplegable, escribe la nueva contraseña y confírmala. Haz clic en Change Password.
Este método es más visual, pero menos flexible. Si tienes problemas con el acceso SSH, es una buena alternativa. Eso sí, recuerda que WHM también necesita la contraseña root para entrar, así que si la has olvidado por completo, este camino no te servirá.
Método 3: Reset contraseña root sin acceso SSH (modo rescate)
Si has perdido el acceso SSH por completo, la situación es más delicada. Necesitarás acceder al servidor a través del panel de tu proveedor de hosting (como Vultr, DigitalOcean, AWS, etc.) usando un modo rescate o consola VNC.
Paso 1: Activa el modo rescate
En el panel de tu proveedor, busca la opción de "Rescue Mode" o "Recovery Mode". Esto arrancará el servidor con un sistema mínimo que te permite montar el disco y editar archivos.
Paso 2: Monta el sistema de archivos
Una vez en el entorno de rescate, identifica la partición raíz. Normalmente es algo como /dev/vda1 o /dev/sda1. Monta la partición:
mkdir /mnt/rescue
mount /dev/vda1 /mnt/rescue
Paso 3: Edita el archivo de configuración de root
El truco más común es editar el archivo /etc/shadow para eliminar la contraseña de root, pero esto es peligroso. Mejor usa chroot:
chroot /mnt/rescue
passwd root
Esto te permitirá cambiar la contraseña como si estuvieras dentro del sistema normal. Luego desmonta y reinicia:
exit
umount /mnt/rescue
reboot
[WARNING] Este método requiere conocimientos avanzados. Si no estás seguro, contacta con tu proveedor de hosting. Un error al editar
/etc/shadowpuede dejar el sistema inaccesible para siempre.
Seguridad root cPanel: buenas prácticas adicionales
Cambiar la contraseña es solo el primer paso. Para proteger tu servidor de verdad, sigue estas recomendaciones:
1. Usa contraseñas largas y únicas
Nada de "admin123" o "password". Usa al menos 16 caracteres, con mayúsculas, minúsculas, números y símbolos. Mejor aún, usa una frase larga que solo tú conozcas.
2. Desactiva el acceso root por SSH
Puedes crear un usuario con privilegios sudo y desactivar el login directo de root. Edita el archivo /etc/ssh/sshd_config y cambia:
PermitRootLogin no
Luego reinicia SSH con systemctl restart sshd. Esto reduce el riesgo de ataques de fuerza bruta.
3. Usa autenticación con llaves SSH
En lugar de contraseñas, genera un par de llaves pública/privada. Es mucho más seguro y cómodo. Puedes usar ssh-keygen y copiar la llave pública al servidor.
4. Cambia el puerto SSH por defecto
El puerto 22 es el estándar y los bots lo saben. Cambiarlo a un número alto (como 22022) reduce drásticamente los intentos de acceso no autorizado.
5. Activa fail2ban
Esta herramienta bloquea las IPs que hacen demasiados intentos fallidos de conexión. Es fácil de instalar y configurar:
apt install fail2ban
Preguntas frecuentes (FAQ)
¿Puedo cambiar la contraseña root desde cPanel?
No directamente. cPanel no tiene una opción para cambiar la contraseña de root. Debes usar WHM, SSH o el modo rescate. En WHM puedes hacerlo desde "Change Password".
¿Cada cuánto debo cambiar la contraseña root?
Se recomienda al menos cada 3-6 meses. También después de cualquier incidente de seguridad o si sospechas que alguien más la conoce.
¿Qué hago si olvidé la contraseña root?
Si tienes acceso a WHM, puedes cambiarla desde ahí. Si no, usa el modo rescate de tu proveedor de hosting. Si tampoco tienes acceso al panel del proveedor, contacta con soporte.
¿Es seguro usar la misma contraseña para root y para cPanel?
No. Deben ser contraseñas completamente diferentes. Si una se compromete, la otra sigue protegida.
¿Cómo sé si mi contraseña root es segura?
Puedes usar herramientas como cracklib-check en el servidor para evaluar la fortaleza de la contraseña. También hay webs que verifican la complejidad, pero no introduzcas contraseñas reales en webs desconocidas.
¿Qué pasa si cambio la contraseña root y no puedo entrar?
Verifica que no hay errores tipográficos. Recuerda que no se muestra nada al escribir. Si el problema persiste, usa el modo rescate o contacta con soporte.
Conclusión
Cambiar la contraseña root cPanel por terminal es un proceso sencillo si sigues estos pasos. El comando passwd es tu mejor aliado, pero siempre ten en cuenta las alternativas si pierdes el acceso.
La seguridad root cPanel no es opcional. Es la puerta principal de tu servidor. Mantenerla actualizada y fuerte es la diferencia entre un servidor sano y un desastre. No esperes a que sea tarde.
[INFO] Si utilizas Syspanel (anteriormente HestiaCP) como panel de control, el proceso es idéntico porque trabajas sobre el sistema operativo. El acceso a Syspanel se realiza a través del puerto 2106, pero la gestión de la contraseña root se hace desde la terminal o el proveedor.
Espero que esta guía te haya sido útil. Si tienes más dudas, revisa la documentación de tu proveedor de hosting o contacta con su soporte. Recuerda: la seguridad es un hábito, no una acción puntual.
