Deshabilite el inicio de sesión de root en CentOS 7.2.1511

Deshabilite el inicio de sesión de root en CentOS 7.2.1511

Supuestamente, si ha iniciado sesión como no root y escribe sudo passwd -d root, el inicio de sesión de root se desactivará, lo que significa que tendrá que iniciar sesión como otro usuario y utilizar supara cambiar a root (o simplemente seguir con sudo).

Sin embargo, cuando intenté hacer esto, no deshabilitó el inicio de sesión de root, sino que solo eliminó el requisito de la contraseña, lo que esencialmente permitió que cualquiera pudiera acceder a root en mi computadora (muy mal).

El libro que me dijo que usara sudo passwd -d rootfue escrito para CentOS 6.5. Mi versión es la 7.2. ¿Es este un cambio reciente o he entendido mal algo?

Respuesta1

No tiene sentido restringir el inicio de sesión de root en la PC local, porque el usuario local siempre puede cargar el sistema en modo de usuario único con privilegios de root. Si necesita bloquear el inicio de sesión de root a través de ssh, puede hacerlo en /etc/ssh/sshd_config agregando PermitRootLogin no

Respuesta2

La forma más sencilla de evitar el inicio de sesión de root es corromper la cadena cifrada que representa la contraseña de root en el archivo /etc/shadow. Las líneas normales /etc/shadowse ven así:línea de sombra

  1. Nombre de usuario: Es su nombre de inicio de sesión.
  2. Contraseña: Es su contraseña cifrada. La contraseña debe tener entre 6 y 8 caracteres como mínimo, incluidos caracteres/dígitos especiales y más.
  3. Último cambio de contraseña (último cambio): Días desde el 1 de enero de 1970 en que se cambió la contraseña por última vez
  4. Mínimo: el número mínimo de días requeridos entre cambios de contraseña, es decir, el número de días que quedan antes de que se le permita al usuario cambiar su contraseña.
  5. Máximo: el número máximo de días que la contraseña es válida (después de que el usuario se ve obligado a cambiar su contraseña)
  6. Advertencia: El número de días antes de que caduque la contraseña, se advierte al usuario que se debe cambiar su contraseña.
  7. Inactivo: la cantidad de días después de que caduque la contraseña durante la cual la cuenta está deshabilitada.
  8. Caducar: días desde el 1 de enero de 1970 en que la cuenta está deshabilitada, es decir, una fecha absoluta que especifica cuándo ya no se puede utilizar el inicio de sesión.

(Citado desde aquí) Puedes agregar un ! (signo de exclamación) que no se generará a partir de funciones hash en la sección de contraseña en la línea de root /etc/shadow, lo que impide iniciar sesión utilizando todas las contraseñas posibles. Ahora que eliminó el método de inicio de sesión con contraseña para root, nadie puede iniciar sesión de la nada como rootusando una contraseña. (Sin embargo, pueden existir otras formas de iniciar sesión)

Una forma más segura de hacerlo es a través de la usermodutilidad: sudo usermod -L root Esto evita que estropees las cosas. Para usos detallados usermod, consulte usermod(8).

Cuando quieras iniciar sesión con root, ¡elimítalo! Y todo estará bien.

Respuesta3

Si bien la respuesta anterior retomó mis comentarios sobre bloquear la raíz con usermod -Lo passwd -ly configurar efectivamente el campo de contraseña en !, no explican su situación.

He estado pensando por qué el libro dice que eliminar passwd -dimpide el acceso. Cuando establece la contraseña en blanco, con -d, evitará que todos los usuarios no root accedan a la cuenta root.remotamente, porque los usuarios que no son root no pueden pasar a otras cuentas que no tengan contraseña. Como hoy en día ssh también bloquea la raíz de forma predeterminada, la cuenta raíz se bloqueará efectivamente desde la perspectiva de los usuarios remotos y no raíz. (por ejemplo, la única forma de trabajar como root será sudo)

Sin embargo, el libro debería mencionar que cualquier usuario en la consola local puede iniciar sesión como root sin contraseña. Aunque hoy en día la mayoría de las consolas están fuera del alcance de los usuarios normales en la consola de entornos virtuales, siempre es sensato tener una forma de controlar la contraseña de root.

Una política más sensata como tal es bloquear la raíz con usermod -Lo passwd -L, pero no sin antes establecer una política de usuario sensata y probarla.

Una alternativa es establecer una contraseña de root muy segura que se cambie periódicamente y que nadie sepa (generarla aleatoriamente makepasswdy guardarla en un sobre, por ejemplo) para casos de emergencia (arranque único, por ejemplo, o cuando alguien confunde por error el sudo Entonces, de hecho, la contraseña de root puede resultar útil. De esta manera, se aplicará el trabajo privilegiado a través de sudo. De lo contrario, con el root bloqueado, la alternativa es arrancar mediante un CD o un lápiz, ya sea virtual o real.

información relacionada