Zvláštní oprávnění v systému Linux jsou pokročilá oprávnění, která lze nastavit pro soubory nebo adresáře a která poskytují další možnosti nebo omezení.
Umožňují spravovat oprávnění a zabezpečení systému přesněji než běžná přístupová práva (čtení, zápis, spuštění). Speciální přístupová práva v Linuxu také poskytují zvláštní možnosti nebo omezení pro uživatele, skupinu nebo soubory. Patří mezi ně následující přístupová práva:
Právo spouštět (execute
): spouštění spustitelných souborů nebo použití příkazu k provedení určitých akcí.číst (Read)
: zobrazení obsahu souboru nebo adresáře.zápisu (Write)
: upravuje obsah souboru nebo vytváří, upravuje či odstraňuje soubory v adresáři.V systému Linux existují různá přístupová práva k souborům a adresářům, která určují, jaké akce mohou být konkrétnímu uživateli nebo skupině uživatelů povoleny nebo zakázány. Následují hlavní zvláštní přístupová práva k souborům v systému Linux:
"setuid
"(suid
): je-li u spustitelného souboru nastaveno oprávnění"setuid
", proces běží s právy vlastníka souboru, nikoli uživatele, který jej spouští. To umožňuje dočasné obnovení práv pro určité úlohy."setgid
"(sgid
): je-li u spustitelného souboru nastaveno oprávnění"setgid
", proces se spustí s právy skupiny vlastníka souboru, nikoli skupiny uživatele, který jej spouští. To umožňuje sdílení souborů a prostředků mezi členy stejné skupiny."sticky bit
": nastavení"sticky bitu
" na adresáři umožňuje mazat nebo přesouvat soubory v adresáři pouze vlastníkovi souboru, i když ostatní uživatelé mají práva zápisu do adresáře. To je užitečné pro obecné použití adresáře, jako je /tmp, aby se zabránilo ostatním uživatelům mazat nebo měnit soubory.Obvykle se tato speciální oprávnění zadávají spolu se standardními oprávněními (rwx) a označují se symbolickými nebo číselnými hodnotami. Například setuid
se pro vlastníka spustitelného souboru označuje symbolem"s
" místo"x"
.
Pokud chcete v Linuxu nastavit nebo změnit speciální oprávnění k souborům, můžete použít příkaz chmod s příslušnými argumenty. Chcete-li napříkladnastavit "setuid
" u spustitelného souboru, můžete použít příkaz"chmod u+s název souboru
".
Speciální přístupová práva (SUID, SGID a Sticky bit) lze v systému Linux nastavit na souborech nebo adresářích pomocí příkazu chmod
.
Chcete-li nastavit SUID:
chmod +s file_name
Pro nastavení SGID na adresáři: Nastavte SGID na adresáři:
chmod +s directory_name
Pro instalaci Sticky bit v adresáři:
chmod +t derectory_name
Poznámka: Instalaci SUID na soubory se doporučuje omezit, protože může představovat potenciální bezpečnostní riziko pro systém. Zvláštní přístupová práva používejte opatrně a pouze v situacích, kdy je to dobře odůvodněné a nevytváří to zranitelnosti.
Pro zobrazení nastavených zvláštních přístupových práv můžete použít příkaz `ls-l`
. Oprávnění, včetně zvláštních oprávnění, se zobrazí jako abecední nebo číselné hodnoty za oprávněním k souboru nebo adresáři.