Leí que para evitar que un usuario cambie su propia contraseña, se debe escribir:
contraseña -n 10000 $usuario
Pero, ¿cómo evito que el usuario root cambie también la contraseña de $user?
Antecedentes: estoy intentando configurar el acceso exclusivo a algunos directorios y pensé que un nuevo usuario sería apropiado. ¿Lo es? Elijo no comprimir + proteger con contraseña esos directorios, ya que la mayoría de ellos tienen más de 1 TB. ¿Alguna pista?
EDITAR: La razón para evitar dicha acción desde el root es que incluso los usuarios con acceso root no deberían poder tener acceso a algunos directorios exclusivos que estoy tratando de proteger.
Respuesta1
El razonamiento de esta pregunta es cuestionable...
Para criticar la solución deseada de crear un nuevo usuario, incluso si otros usuarios root no pueden cambiar la contraseña del nuevo usuario, no lo necesitan, ya que el root puede leer cualquier archivo o cambiar los permisos del archivo, no lo hacen. Nunca necesitarás "ser" ese usuario".
Si tiene terabytes de datos a los que desea impedir el acceso de otros usuarios, no coloque esos datos en las mismas máquinas a las que tienen acceso esos usuarios.
Si tiene terabytes de datos en una máquina con múltiples usuarios, ¿por qué no elegiría a esos usuarios para acceder a los datos?
Y ni siquiera hemos llegado al punto de hablar de por qué tener varios usuarios root en los que no confías. Conceder múltiples usuarios root es algo bueno, sin embargo, parece que tienes acceso root para todos los usuarios: los amigos son geniales y los dejan entrar, pero no necesitan root.
Incluso usando una ACL, no puede evitar que otro usuario root acceda a los datos: usted (como root) creó la ACL, ellos (como root) la modificarán.
La única solución verdaderamente viable es la que las distintas agencias fantasma inventaron hace mucho tiempo. Máquinas con espacios de aire.
Coloque sus datos "ultrasecretos" en una unidad y no los conecte a la máquina con sus amigos. O instale la unidad en una máquina diferente sin un zoológico de usuarios raíz y que no tenga acceso a la red. Probablemente puedas salirte con la tuya permitiendo que esta máquina (servidor de archivos) tenga acceso a la red, ya que es probable que tus amigos no tengan herramientas de hackers Spook Grade para obtener acceso a esta máquina. Solo dé acceso a usted mismo y listo, datos aislados. Este tipo de máquina es muy barata de crear. CPU, NIC y listo.
Si "quiere" confiar en ellos, y/o, y solo acceder a estos datos desde esta máquina (abarrotada de usuarios raíz), solo conecte físicamente la unidad cuando esté en modo de usuario único, fuera de línea y esté en la consola. .
Quizás existan otras soluciones creativas; sin embargo, si se trata de software, no es posible aislar a un usuario root de otro usuario root.
PD: cuando me refiero a root, estoy usando ese término para implicar un verdadero usuario root, no un usuario con sudo, etc.
Respuesta2
En última instancia, si le das a alguien acceso root a tu sistema, le das todo lo que hay en el sistema, por eso es importante que confíes en las personas a las que les das root.
Respuesta3
Supongo que podrías establecer un atributo de sistema de archivos extendido inmutable en /etc/shadow. Eso evitará todos los cambios en las contraseñas, hasta queraízEl usuario deshace el bit inmutable. El comando es "chattr +i /etc/shadow"
Si está proporcionando acceso raíz a un administrador de sistemas profesional, se supone que debe asumir que no cambiará la contraseña si le pide que no la cambie. Por último, siempre puedes cambiar a Kerberos 5 o algo administrado de forma centralizada.