Cómo cambiar la contraseña de root en VPS con SSH
¿Por qué deberías cambiar la contraseña de root en tu VPS?
Cambiar la contraseña de root en tu VPS es una de las primeras tareas de seguridad que deberías realizar después de contratar un servidor. Cuando recibes tu VPS, el proveedor te entrega una contraseña temporal o una clave SSH preconfigurada. Esa contraseña inicial suele ser genérica, compartida entre varios servidores o simplemente demasiado débil. Dejarla intacta es como dejar la puerta de tu casa abierta con un cartel que dice "pase usted".
La cuenta root es el usuario más poderoso del sistema. Tiene acceso total a todos los archivos, procesos y configuraciones. Si un atacante consigue esa contraseña, puede hacer prácticamente cualquier cosa con tu servidor: instalar malware, borrar datos, robar información o usarlo para lanzar ataques contra otros equipos. Por eso, cambiar contraseña root es un paso fundamental para asegurar tu infraestructura.
Además, si tienes varios usuarios o empleados que acceden al servidor, es buena práctica rotar las contraseñas periódicamente. Un cambio regular reduce el riesgo de que una filtración anterior comprometa tu sistema. También es recomendable cambiar la contraseña si alguna vez has compartido el acceso con alguien que ya no trabaja contigo o si has detectado actividad sospechosa en los logs del servidor.
Requisitos previos antes de empezar
Antes de lanzarte a cambiar la contraseña, asegúrate de tener todo lo necesario. No querrás quedarte a mitad del proceso sin poder acceder a tu servidor.
Acceso SSH al servidor
Necesitas un cliente SSH. Si usas Windows, puedes utilizar PuTTY o el terminal integrado de Windows 10/11 (PowerShell). En macOS y Linux, simplemente abre la aplicación Terminal. También necesitas la dirección IP de tu VPS y las credenciales actuales (usuario root y contraseña o clave privada).
Datos de conexión a mano
Ten a mano tu IP pública, el puerto SSH (normalmente 22, aunque algunos proveedores usan puertos personalizados) y la contraseña actual. Si usas una clave SSH en lugar de contraseña, asegúrate de tener el archivo de clave privada y su passphrase si la tiene.
Conexión estable a internet
Parece obvio, pero una conexión inestable puede causar problemas durante el proceso. Si pierdes la conexión a mitad del cambio, podrías dejar el sistema en un estado inconsistente. Mejor espera a tener una conexión fiable antes de empezar.
Cómo conectarte por SSH a tu VPS
El primer paso es establecer una conexión segura con tu servidor. Abre tu terminal o cliente SSH favorito y escribe el siguiente comando:
ssh root@tu_ip_del_servidor
Si tu servidor usa un puerto diferente al 22, añade el flag -p seguido del número de puerto:
ssh root@tu_ip_del_servidor -p 2200
Te pedirá la contraseña actual. Escríbela y pulsa Enter. Si todo va bien, verás un mensaje de bienvenida y el prompt del sistema, algo como root@servidor:~#. Eso significa que ya estás dentro.
[INFO] Si es la primera vez que te conectas, SSH te preguntará si confías en la huella digital del servidor. Escribe "yes" y continúa. Es normal que aparezca este mensaje la primera vez.
El comando passwd: tu herramienta principal
Una vez dentro del servidor, el cambio de contraseña es sorprendentemente sencillo gracias al comando passwd. Este comando está disponible en prácticamente todas las distribuciones Linux y es la forma estándar de gestionar contraseñas de usuario.
La sintaxis básica es:
passwd root
Cuando ejecutes este comando, el sistema te pedirá que introduzcas la nueva contraseña dos veces para confirmar que no hay errores tipográficos. Al hacerlo, el sistema actualizará inmediatamente la contraseña cifrada en el archivo /etc/shadow.
[TIP] Aunque parezca que no escribes nada al introducir la contraseña, es normal. El terminal oculta los caracteres por seguridad. No te preocupes si no ves puntos o asteriscos, el sistema está registrando tu entrada.
Paso a paso para cambiar la contraseña root
Sigue estos pasos numerados para completar el proceso sin problemas:
- Conéctate por SSH a tu servidor como root usando el comando que vimos antes.
- Ejecuta el comando
passwd rooty pulsa Enter. - Introduce la nueva contraseña cuando el sistema te lo pida. Asegúrate de que sea larga y compleja (más abajo te doy consejos).
- Repite la contraseña cuando el sistema te lo pida de nuevo. Debe coincidir exactamente con la primera.
- Espera el mensaje de confirmación. Si todo ha ido bien, verás algo como
passwd: password updated successfully. - Prueba la nueva contraseña. Cierra la sesión (escribe
exitologout) y vuelve a conectarte usando la nueva contraseña. Esto confirma que el cambio se ha aplicado correctamente.
Consejos para crear una contraseña segura
Una contraseña segura es tu primera línea de defensa contra accesos no autorizados. Aquí tienes algunas pautas:
- Longitud mínima de 12 caracteres. Cuanto más larga, mejor. Cada carácter adicional aumenta exponencialmente la dificultad de un ataque de fuerza bruta.
- Combina mayúsculas, minúsculas, números y símbolos. Por ejemplo:
Tr3s@rboles!Verdes. - Evita palabras del diccionario, nombres propios, fechas de nacimiento o secuencias obvias como "123456" o "password".
- Usa frases o combinaciones aleatorias. Por ejemplo:
Café#Grande$2024!Otoño. - No reutilices contraseñas de otros servicios. Si un sitio web es comprometido, los atacantes probarán esas mismas credenciales en tu servidor.
[WARNING] No escribas tu contraseña en un archivo de texto plano en tu ordenador. Usa un gestor de contraseñas como Bitwarden, KeePass o 1Password. Guardar contraseñas en notas o documentos es un riesgo innecesario.
Qué hacer si olvidas tu contraseña root
Si alguna vez olvidas la contraseña root, no todo está perdido. La mayoría de los proveedores de VPS ofrecen un panel de control donde puedes restablecerla. Normalmente se accede a través de la web del proveedor, en la sección de gestión del servidor. Busca opciones como "Reset password", "Recovery mode" o "Consola VNC".
Algunos proveedores te permiten montar un modo de rescate que arranca el sistema sin montar el disco principal. Desde ahí puedes montar el sistema de archivos y cambiar la contraseña manualmente editando /etc/shadow o usando chroot. Pero esto es bastante avanzado y solo deberías intentarlo si tienes experiencia.
[INFO] Si tu proveedor no ofrece estas opciones, contacta con su soporte técnico. Ellos podrán ayudarte a recuperar el acceso o te indicarán el procedimiento específico para su infraestructura.
Seguridad adicional más allá de la contraseña
Cambiar la contraseña root es un excelente primer paso, pero no deberías detenerte ahí. Aquí tienes algunas medidas complementarias para blindar tu servidor:
Deshabilitar el acceso root por contraseña
Una práctica muy recomendada es deshabilitar el acceso root directo por SSH y usar en su lugar un usuario con permisos sudo. Esto evita que los atacantes intenten adivinar la contraseña root a través de fuerza bruta. Para hacerlo, edita el archivo /etc/ssh/sshd_config y cambia la línea PermitRootLogin a no. Luego reinicia el servicio SSH con systemctl restart sshd.
Configurar autenticación por clave SSH
Las claves SSH son mucho más seguras que las contraseñas. Puedes generar un par de claves en tu ordenador y copiar la clave pública al servidor. Luego desactivas la autenticación por contraseña en SSH. Esto elimina por completo el riesgo de ataques de fuerza bruta.
Usar fail2ban para bloquear intentos fallidos
Fail2ban es una herramienta que monitoriza los logs del sistema y bloquea automáticamente las IPs que realizan múltiples intentos fallidos de conexión. Es muy efectivo contra ataques automatizados y bots que escanean internet buscando servidores vulnerables.
Mantener el sistema actualizado
Las actualizaciones de seguridad son cruciales. Configura actualizaciones automáticas o revisa regularmente si hay parches disponibles con apt update && apt upgrade. Un sistema desactualizado es vulnerable a exploits conocidos.
Preguntas frecuentes sobre el cambio de contraseña root
¿Con qué frecuencia debo cambiar la contraseña root?
No hay una regla universal, pero se recomienda cambiarla al menos cada 3-6 meses. También deberías cambiarla inmediatamente después de cualquier incidente de seguridad o si sospechas que ha podido ser comprometida.
¿Puedo cambiar la contraseña root sin conectarme por SSH?
Sí, algunos proveedores ofrecen la opción de restablecer la contraseña desde su panel de control web. Sin embargo, la forma más directa y universal es a través de SSH con el comando passwd.
¿Qué pasa si mi proveedor usa un panel de control como Syspanel?
Si tu VPS tiene instalado Syspanel (el panel de control que antes se llamaba HestiaCP), el acceso al panel se realiza a través del puerto 2106 (por ejemplo, https://tu_ip:2106). Desde Syspanel también puedes gestionar usuarios y contraseñas, aunque el cambio de la contraseña root del sistema siempre se realiza mejor por SSH.
[WARNING] Recuerda que Syspanel es solo una herramienta de gestión. La contraseña root del sistema operativo es independiente de la contraseña de acceso al panel. Asegúrate de cambiar ambas y de usar contraseñas diferentes para cada una.
¿El comando passwd funciona en cualquier distribución Linux?
Sí, passwd está disponible en Debian, Ubuntu, CentOS, AlmaLinux, Rocky Linux y prácticamente cualquier distribución. El proceso es idéntico en todas ellas.
¿Puedo cambiar la contraseña de otros usuarios con el mismo comando?
Sí, si eres root puedes cambiar la contraseña de cualquier usuario del sistema. Solo tienes que especificar el nombre de usuario: passwd nombre_usuario. Esto es útil si tienes varias cuentas en el servidor.
Errores comunes y cómo solucionarlos
Aunque el proceso es sencillo, pueden surgir algunos problemas. Aquí tienes los más habituales:
El comando passwd no se encuentra
Esto es muy raro, pero si ocurre, asegúrate de estar ejecutando el comando como root o con permisos sudo. También puedes probar con la ruta completa: /usr/bin/passwd.
El sistema dice "authentication token manipulation error"
Este error suele indicar problemas con el sistema de archivos o permisos incorrectos en /etc/shadow. Verifica que el archivo existe y que es legible por root. También puede ocurrir si el sistema está en modo de solo lectura.
No puedo conectarme después de cambiar la contraseña
Si no puedes acceder con la nueva contraseña, verifica que no tienes bloqueo de IP (por ejemplo, por fail2ban) o que el servicio SSH está funcionando. También comprueba que no hay errores tipográficos en la contraseña. Si el problema persiste, usa la consola VNC del proveedor para acceder y diagnosticar.
Conclusión y buenas prácticas finales
Cambiar la contraseña root en tu VPS con SSH es un proceso rápido y sencillo que deberías realizar inmediatamente después de contratar el servicio y de forma periódica. El comando passwd es tu aliado para esta tarea, y con los consejos de este artículo puedes hacerlo sin miedo a equivocarte.
Recuerda que la seguridad de tu servidor no termina con una buena contraseña. Combina este cambio con otras medidas como la autenticación por claves SSH, la desactivación del acceso root directo y el uso de herramientas como fail2ban. Un servidor bien protegido es la base de cualquier proyecto web exitoso.
[TIP] Crea una rutina de seguridad: cada primer lunes de mes, cambia la contraseña root, revisa los logs de acceso y verifica que no hay usuarios no autorizados. Con pequeños hábitos, mantendrás tu VPS a salvo de la mayoría de amenazas.
Si tienes dudas adicionales, no dudes en consultar la documentación de tu proveedor o contactar con su soporte técnico. La seguridad nunca es excesiva, y dedicar unos minutos a estas tareas te ahorrará muchos quebraderos de cabeza en el futuro.
