GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cuál es la diferencia entre agregar un usuario a sudoers vs grupo raíz?

Aunque la pregunta menciona "servidor Debian Linux", actualmente está etiquetado con Debian y Ubuntu. Dado que la información sobre múltiples sistemas operativos parece ser de cierto interés, simplemente ignoraré las referencias a sistemas operativos específicos por completo y solo describiré los estándares más extendidos.

Los grupos se enumeran en /etc/group y con frecuencia hay un grupo llamado "raíz". Este archivo enumera los nombres de los grupos y sus correspondientes valores numéricos de "ID de grupo" ("GID").

Cualquier persona en un grupo llamado "raíz" tendrá la capacidad de leer, escribir o ejecutar archivos que tengan un "propietario de grupo" establecido en el mismo "ID de grupo" ("GID") que el grupo llamado raíz. Por lo tanto, si un archivo es propiedad de "bin:root" y tiene permisos de "rwxrwx---", entonces un usuario en el grupo "raíz" podrá ejecutar el archivo debido al conjunto intermedio de permisos.

Por el contrario, el estándar establecido por el software "sudo" se basa en la configuración almacenada en el archivo /etc/sudoers. En el archivo /etc/sudoers, los nombres de grupo de estilo Unix se muestran después de los signos de porcentaje, como se explica en la página del manual de sudoers (en formato HTML):sección sobre el formato de archivo "sudoers". Entonces, una referencia a %sudoers en el archivo /etc/sudoers se refiere a un grupo llamado "sudoers" que se encuentra en el archivo /etc/groups.

El archivo predeterminado /etc/sudoers no contiene una referencia a un grupo llamado "sudoers". Tenga en cuenta que me estoy refiriendo al archivo predeterminado real /etc/sudoers, que puede ver en el repositorio de sudo, haciendo clic en "examinar" en el marco izquierdo, luego en "ejemplos" y luego en "sudoers".

Sin embargo, muchos sistemas operativos tienen un archivo /etc/sudoers personalizado instalado de forma predeterminada. Por lo tanto, es muy posible que su sistema operativo tenga soporte especial para un grupo llamado sudoers. Para comprender el impacto exacto, consulte el archivo /etc/sudoers.

Presumiblemente, lo más probable es que si su sistema operativo tiene un grupo llamado sudoers, entonces una persona en ese grupo podrá elevar los permisos usando el comando sudo. (La forma recomendada de confirmar esto implicaría verificar el archivo /etc/sudoers).

Cuando una persona eleva sus privilegios, es posible que deba ingresar una autenticación aceptable (una contraseña) o que no sea necesario. Incluso si lo hacen, después de ser autenticados, pueden tener un "token" por un período de tiempo, lo que les permitirá elevarse nuevamente sin necesidad de autenticarse nuevamente (hasta que finalice ese período de tiempo). Este período de tiempo es de 5 minutos a menos que /etc/sudoers especifique algo diferente usando una opción llamada "tiempo de espera".

Por el contrario, una persona en el grupo "raíz" no necesitaría escribir una contraseña para acceder a un archivo que es propiedad del grupo "raíz".

Tenga en cuenta que el grupo "sudoers" puede ser preferencial. Al elevar, una persona puede obtener acceso completo de superusuario. (Esto es típico. El archivo /etc/sudoers puede permitir que una persona cambie a un usuario diferente o que eleve pero con restricciones sobre qué comando se ejecuta inicialmente. Por lo general, con configuraciones predeterminadas/simples, una persona que eleva simplemente se llena elevación.) Cuando se autentica como un superusuario completo, un usuario generalmente no está sujeto a los permisos que se basan en las propiedades típicas del sistema de archivos Unix (la configuración de "propietario" y "propietario del grupo"). El usuario aún puede estar sujeto a otras limitaciones basadas en permisos, como permisos impuestos por la forma en que se montó una partición (que es la razón por la cual el software no permite que un usuario escriba en un CD-ROM de solo lectura), o otras razones por las que un archivo podría no proporcionar permisos (como si un archivo está bloqueado, lo que indica que el archivo ya está en uso). Si un archivo es propiedad de:

raíz:raíz

y tiene permisos de:

rwx------

Entonces, un usuario no obtiene permisos para el archivo solo porque el usuario está en un grupo llamado "raíz". Por lo tanto, el grupo "raíz" puede ser más conveniente (no se necesitan contraseñas), aunque puede ser más limitado. (O bien, un grupo en /etc/sudoers puede ser más limitado, según cómo esté configurado /etc/sudoers).


El 'grupo raíz' como en lo que especificaría en /etc/group se trata de permisos de Unix. Cada archivo tiene permisos de usuario, grupo y 'otros'. Si un archivo está configurado para que los usuarios del grupo raíz puedan leerlo, puede otorgar a un usuario la capacidad de leer ese archivo al colocarlo en el grupo raíz. Por supuesto, ese usuario puede leer todos archivo que tiene el bit de lectura establecido para la raíz del grupo.

El archivo sudoers se trata de ejecutar comandos con la identificación efectiva de otros usuarios. Tiene un control más granular sobre qué comandos puede ejecutar cada usuario y quién. Entonces, si desea que un usuario solo pueda ejecutar un comando específico como raíz, debe configurarlo en el archivo sudoers.


Linux
  1. ¿Cuál es la diferencia entre fsync y syncfs?

  2. ¿Cómo puedo agregar un usuario normal al archivo sudoers?

  3. El usuario no está en el archivo sudoers. Este incidente será reportado

  4. ¿Cuál es la diferencia entre ls y l?

  5. ¿Cuál es la diferencia entre las opciones -g y -G en useradd?

¿Cuál es la diferencia entre Linux y Unix?

Useradd vs Adduser:¿Cuál es la diferencia?

¿Qué es un Hipervisor? ¿Cuál es la diferencia entre el tipo 1 y 2?

¿Cuál es la diferencia entre curl y Wget?

¿Cuál es la diferencia entre escribir en un archivo y una memoria mapeada?

¿Cuál es la diferencia entre strtok_r y strtok_s en C?