Tengo una instalación de servidor mínima en una máquina remota con una contraseña de root establecida en un valor temporal, pero elegido.
He añadido un usuario administrador por separado. Este usuario tiene una clave autorizada para SSH, sin acceso de contraseña y sudo sin contraseña.
Me gustaría eliminar cualquier rastro de la contraseña de root y bloquear al usuario root.
Esto se puede hacer con passwd -d root && passwd -l root
. Sin embargo, esto deja una ventana entre las dos operaciones por mal comportamiento. ¿Cómo puedes tomar ambas acciones en un solo paso?
Esto es más una cuestión académica que práctica. Mi solución es sed -e -i -e 's/^root:\([^:]*\)\(.*\)$/root:!!/' /etc/shadow
, pero parece que debería haber una operación idempotente menos propensa a errores.