Špeciálne oprávnenia v Linuxe sú rozšírené oprávnenia, ktoré možno nastaviť na súbory alebo adresáre a ktoré poskytujú ďalšie možnosti alebo obmedzenia.
Umožňujú spravovať oprávnenia a bezpečnosť systému presnejšie ako bežné prístupové práva (čítanie, zápis, vykonávanie). Špeciálne prístupové práva v Linuxe tiež poskytujú špeciálne možnosti alebo obmedzenia pre používateľa, skupinu alebo súbory. Patria medzi ne nasledujúce prístupové práva:
Právo vykonávať (execute
): spúšťanie spustiteľných súborov alebo používanie príkazu na vykonávanie určitých činností.čítať (Read)
: zobrazenie obsahu súboru alebo adresára.zapisovať (Write)
: upravovať obsah súboru alebo vytvárať, upravovať alebo odstraňovať súbory v adresári.V systéme Linux existujú rôzne prístupové práva k súborom a adresárom, ktoré určujú, aké akcie môžu byť povolené alebo zamietnuté pre konkrétneho používateľa alebo skupinu používateľov. Nasledujúce sú hlavné špeciálne prístupové práva pre súbory v systéme Linux:
"setuid
"(suid
): keď je na spustiteľnom súbore nastavené oprávnenie"setuid
", proces sa spustí s právami vlastníka súboru, a nie používateľa, ktorý ho spúšťa. To poskytuje dočasné obnovenie oprávnení pre určité úlohy."setgid
"(sgid
): keď je na spustiteľnom súbore nastavené oprávnenie"setgid
", proces sa spustí s oprávneniami skupiny vlastníka súboru, a nie skupiny používateľa, ktorý ho spúšťa. To umožňuje zdieľanie súborov a prostriedkov medzi členmi tej istej skupiny."sticky bit
": nastavenie"sticky bitu
" na adresári umožňuje odstrániť alebo presunúť súbory v rámci adresára len vlastníkovi súboru, aj keď ostatní používatelia majú práva na zápis do adresára. Je to užitočné pri všeobecnom používaní adresára, napríklad /tmp, aby sa zabránilo ostatným používateľom v odstraňovaní alebo úprave súborov.Zvyčajne sa tieto špeciálne oprávnenia špecifikujú spolu so štandardnými oprávneniami (rwx) a označujú sa symbolickými alebo číselnými hodnotami. Napríklad setuid
sa pre vlastníka spustiteľného súboru označuje písmenom"s"
namiesto"x"
.
Ak chcete v systéme Linux nastaviť alebo zmeniť špeciálne oprávnenia súborov, môžete použiť príkaz chmod s príslušnými argumentmi. Ak chcete napríkladnastaviť "setuid
" na spustiteľný súbor, môžete použiť príkaz"chmod u+s názov súboru
".
Špeciálne prístupové práva (SUID, SGID a Sticky bit) možno v systéme Linux nastaviť na súbory alebo adresáre pomocou príkazu chmod
.
Ak chcete nastaviť SUID:
chmod +s file_name
Ak chcete nastaviť SGID na adresári:
chmod +s directory_name
Ak chcete v adresári nainštalovať Sticky bit:
chmod +t derectory_name
Poznámka: Inštaláciu SUID na súbory sa odporúča obmedziť, pretože môže predstavovať potenciálnu bezpečnostnú hrozbu pre systém. Špeciálne prístupové práva používajte opatrne a len v situáciách, keď je to dobre odôvodnené a nevytvára to zraniteľnosti.
Na zobrazenie nastavených špeciálnych prístupových práv môžete použiť príkaz `ls-l`
. Oprávnenia vrátane špeciálnych prístupových práv sa zobrazia ako abecedné alebo číselné hodnoty za oprávneniami k súborom alebo adresárom.