Por qué evitar root a diario
La cuenta root tiene todos los permisos sobre el sistema, sin restricción. Un error en un comando (una ruta equivocada en un rm, una redirección mal escrita) tiene un impacto mucho mayor con root que con un usuario limitado. La práctica recomendada es crear un usuario dedicado con privilegios de administrador concedidos caso por caso mediante sudo, y reservar root para las situaciones que realmente lo exigen.
Crear el nuevo usuario
adduser miusuario
El comando pide una contraseña y algunos datos opcionales (nombre completo, etc., que pueden dejarse en blanco).
Darle privilegios sudo
En Debian/Ubuntu, añade el usuario al grupo sudo:
usermod -aG sudo miusuario
A partir de ahora puede ejecutar comandos administrativos anteponiéndoles sudo, tras confirmar su propia contraseña.
Configurar su clave SSH
Copia tu clave SSH pública al nuevo usuario para poder conectarte directamente sin contraseña:
rsync --archive --chown=miusuario:miusuario ~/.ssh /home/miusuario
O bien, si ya estás conectado como ese nuevo usuario:
ssh-copy-id miusuario@direccion-ip-del-vps
Probar antes de cortar el acceso root
Desactivar la conexión SSH directa como root
Una vez validado, edita la configuración SSH:
sudo nano /etc/ssh/sshd_config
PermitRootLogin no
Después reinicia el servicio SSH:
sudo systemctl restart sshd
root sigue siendo accesible mediante sudo desde el nuevo usuario, pero ya no por conexión SSH directa: una capa de protección adicional frente a los intentos de intrusión automatizados, que casi siempre apuntan primero a esa cuenta.