$ find /usr/bin/ -group shadow | xargs ls -l
-rwxr-sr-x 1 root shadow 45384 2008-12-08 03:13 /usr/bin/chage
-rwxr-sr-x 1 root shadow 21424 2008-12-08 03:13 /usr/bin/expiry
Nemusí existovat žádní uživatelé, ale určitě existuje software, který musí být schopen číst tento soubor. Všimněte si, že passwd
sám je setuid root, a proto to nepotřebuje.
Ne, shadow
skupina by neměla mít žádné uživatele, ale tato skupina je nutná pro fungování stínových hesel.
Myslím, že myšlenkou je mít soubor přístupný pouze pro uživatele root a root. V kořenové skupině můžete mít další uživatele, proto byla vytvořena samostatná skupina uživatelů.
Na mém počítači Ubuntu existuje řada příkazů, které jsou nastaveny jako skupina-id na stín. To jim poskytuje přesně a pouze privilegium číst dva stínové soubory (které jsou seskupeny do stínů a lze je číst pouze ve skupině).
-rwxr-sr-x 1 root shadow 35584 Mar 16 11:45 /sbin/pam_extrausers_chkpwd
-rwxr-sr-x 1 root shadow 35544 Mar 16 11:45 /sbin/unix_chkpwd
-rwxr-sr-x 1 root shadow 59224 Jul 20 2015 /usr/bin/chage
-rwxr-sr-x 1 root shadow 23424 Jul 20 2015 /usr/bin/expiry
-rw-r----- 1 root shadow 1043 Apr 2 00:27 /etc/gshadow
-rw-r----- 1 root shadow 1732 Apr 2 00:27 /etc/shadow
Pokud máte službu, která pouze vyžaduje, aby bylo možné číst jeden nebo druhý ze stínových souborů, stačí nastavit set-group-id na stín. To je jakýsi opak toho, co bylo navrženo výše – nejde o to, že je v kořenové skupině skupiny mnoho dalších lidí, jde o to, že podle konvence (a oprávnění k souboru) vám tato skupina uděluje přístup pouze k těmto dvěma zdrojům.