Me encontré con el comando getent group sudo
para enumerar sudoers en el grupo sudo y obtuve el resultado. sudo:x:27:lion
Ahora me pregunto cuál es el significado de :x:
dos puntos y 27
... también veo los mismos símbolos en /etc/passwd
... entonces, ¿qué significan estos símbolos?
Respuesta1
getent group
muestra entradas de la base de datos del grupo. La base de datos del grupo local es el archivo /etc/group
, cuyo formato está documentado en elgroup(5)
página de manual.
Cada línea de este archivo es una entrada de base de datos que representa un grupo. Las columnas de una línea están separadas por dos puntos. La segunda columna es el hash de la contraseña.
La base de datos de usuarios/etc/passwd
tiene un formato similar, con diferentes contenidos en las columnas. Las dos primeras columnas son el hash del nombre y la contraseña, como ocurre con el grupo.
Estos archivos tienen una columna para la contraseña solo por compatibilidad con versiones anteriores. Normalmente, el hash de la contraseña no se encuentra en la base de datos de usuarios/grupos de lectura pública, sino en otra base de datos llamadabase de datos sombra(/etc/shadow
para los usuarios,/etc/gshadow
para grupos) que contiene hashes de contraseñas y otra información de la cuenta, como fechas de vencimiento, y que solo pueden leerse mediante procesos privilegiados.
Es extremadamente raro poner una contraseña a un grupo: normalmente algunos usuarios están en el grupo y otros no. Por lo tanto, puede esperar que las gshadow
entradas tengan *
en la columna hash de contraseña (este no es un hash válido, es un marcador que indica que no hay forma de obtener acceso al usuario/grupo ingresando una contraseña).
Respuesta2
Es el mismo resultado que este:
grep ^sudo: /etc/group
sudo
es el nombre del grupox
representa un campo de contraseña27
es el GID (ID de grupo)lion
es miembro delsudo
grupo
Los grupos también pueden tener contraseñas; y sus contraseñas se almacenan en /etc/gshadow
.
man gpasswd
man gshadow