Algaja Linuxi kasutajana saate teada faili ja kataloogidega seotud õigustest ja omandiõigusest. Linuxi/Unixi sarnased operatsioonisüsteemid võimaldavad määrata üheksabitise õiguste kombinatsiooni, et takistada teistel kasutajatel mittevajalikele failidele/kataloogidele juurdepääsu. Sarnaselt nendele on käivitatavate failide eriload, mida nimetatakse set UID, set GID ja kleepuvate bittidena.
Erilubade mõistmine võib ambitsioonikatele Linuxi administraatoritele olla pisut üle jõu käiv. Siit saate veidi taustateavet tavaliste failiõiguste kohta ja selgitab, kuidas need erinevad erilubadest. Samuti demonstreerime SetID, GetID ja kleepuvate bittide funktsionaalsust näidetega igakülgseks mõistmiseks.
Tavalised Linuxi failiload
Linux kasutab chmod käsk määrama/muutma lugemist (r = 4), kirjuta (w = 2) ja käivitage (x=1) failide ja kaustade õigused. See tähendab, et ülalmainitud üheksa bitti kehtivad kolme põhikategooria lubade rühma kohta. Esimesed kolm on mõeldud kasutajale, kellele fail kuulub, teine komplekt on failile/kataloogile määratud rühma jaoks ja viimased kolm esindavad kõiki teisi kasutajaid.
Näiteks kuvatakse tavalise faili igat tüüpi õigused kõigi kasutajakategooriate jaoks kujul -rwxrwxrwx. Kuigi - tähtede asemel tähistab selle loa puudumist. Nüüd chmod käsk kasutab õiguste muutmiseks numbreid ja tähti järgmiselt:
sudo chmod 755 fail # jaoks rwxr-xr-x
sudo chmod 644 fail # jaoks rw-r--r--
sudo chmod a-w fail # jaoks r-xr-xr-x
sudo chmod a+x fail # --x--x--x jaoks
Spetsiaalsed Linuxi failiload
The setuid bit tähistab luba käivitatavale failile, mida saavad omaniku loal käitada teised kasutajad. Näiteks kui kasutaja max käivitab kasutajana käsu vi John, on teil lugemis-/kirjutusload John.
Setuidiga failide tuvastamiseks kasutage nuppu ls käskida ja otsida s bitt käivitatava biti asemel x, järgnevalt.
Määrake UID-bitt
The setuid bit tähistab luba käivitatavale failile, mida saavad omaniku loal käitada teised kasutajad. Näiteks kui kasutaja max käivitab käsu vi kui juur, tal on lugemis-/kirjutusload juur. Setuidiga failide tuvastamiseks kasutage nuppu ls käskida ja otsida s bit täitmisbiti asemel x, järgnevalt:
ls -la /etc/passwd
-rwsr-xr-x 1 juurjuur 88464 14. detsember 12:46 passwd
Mõned muud näited on järgmised:
ls -la /bin/gpasswd
-rwsr-xr-x 1 juurjuur 88464 14. juuli 15:08 gpasswd
ls -la /bin/su
-rwsr-xr-x 1 juurjuur 67816 21. juuli 2020 su
ls -la /newgrp
-rwsr-xr-x 1 juurjuur 44784 14. juuli 15:08 newgrp
ls -la /bin/sudo
-rwsr-xr-x 1 juurjuur 166056 19. jaanuar 2021 sudo
Täitmisfailide biti setuid määramiseks kasutage käsku chmod järgmiselt:
chmod u+s /etc/passwd
Failide käitamise loa eemaldamiseks mitte-juurkasutajatelt või -omanikelt toimige järgmiselt.
chmod u-s /etc/passwd
Määrake GID-bitt
Nagu arutletud, juhib set uid bitt teistele kasutajatele juurdepääsu failidele, bitt setgid (GID) aga loob koostöökatalooge. See tähendab, et kõik selles kataloogis loodud failid on kataloogirühmale juurdepääsetavad. Seega võimaldab see kõigil rühmaliikmetel käivitada käivitatavaid faile ilma omaniku õigusteta ja kaitseb neid teiste kasutajate eest.
Järgige neid samme, et luua oma Linuxi süsteemis koostöökataloog.
Looge rühm kasutades grupi lisamine käsk rühma ID-ga 415 koostööks:
groupadd -g 415 administraatorid
Lisamiseks kasutage käsku usermod Johngruppi failidele juurdepääsuks/käitamiseks.
usermod -aG administraatorid john
Kasuta mkdir käsk kataloogi loomiseks:
mkdir /tmp/collaborative_dir
Kasuta chgrp käsk kataloogi määramiseks administraatorid Grupp:
chgrp admins /tmp/collaborative_dir
Kasuta chmod käsk kataloogi loa muutmiseks väärtuseks 2775. 2 biti lülitab sisse seatud gid, 7, et määrata kasutajale ja rühmale täielik rwx, samas kui 5 (r-w) teistele.
chmod 2775 /tmp/collaborative_dir
Lõpuks muutke oma kasutajakontoks John ja luua fail koostöökataloogis, et kontrollida failiõigusi.
su - john
puudutage /tmp/collaborative_dir/file.txt
Käsk su võib anda teile autentimisvea. Sel juhul tippige sudo su käsk juure lülitumiseks ja uuesti käivitamiseks su - john kasutajakonto muutmiseks
Nüüd loetlege õigused kataloogi ja vastloodud faili GID-bittide kontrollimiseks.
ls -ld /tmp/collaborative_dir /tmp/collaborative_dir/file.txt
Tüüpilise stsenaariumi korral on johni loodud failile määratud grupi john. Kuna loote faili määratud GID-bitikataloogis, määrab see õigused administraatorid grupp, nii et kasutaja meeldib kõigile, kes gruppi kuuluvad Chris, saavad sellele juurdepääsu.Seotud: Kuidas luua uusi faile Linuxis, kasutades puutetundlikku
Kleepuvad bitid
Erinevalt SID- ja GID-bittidest erinevad kleepuvad bitid funktsionaalsuse poolest, kuna need kaitsevad faile ja katalooge teiste kasutajate poolt ümbernimetamise ja kustutamise eest. Tavaline faililuba võimaldab igal kirjutamisõigusega kasutajal faili kustutada või ümber nimetada. Kui kleepuva biti puhul pole see võimalik, kui te pole faili juurkasutaja või omanik.
Ideaalne stsenaarium kleepuvate bittide kasutamiseks on kataloog, mis on failide loomiseks juurdepääsetav kõigile kasutajatele. Näiteks kasutage ls -ld käsk kontrollimiseks \tmp kataloogi õigused järgmiselt:
Võite märgata, et kleepuv natuke t asendab täitmisbiti x. Piiratud kustutamise kataloogi loomiseks järgige antud juhiseid:
Nüüd looge failis teine kataloog /tmp kaust:
mkdir /tmp/new_dir
Muutke failiõigused väärtuseks 1777 kleepuva osa seadistamiseks (t) ja täielik juurdepääs kataloogile:
chmod 1777 /tmp/uus_kataloog
Nüüd kopeerige failist mis tahes fail /etc kausta /tmp/new_dir ja muutke selle õigusi 666:
cp /etc/ /tmp/new_dir
chmod 666 /tmp/new_dir/services
Lubade vaatamiseks loetlege kataloog ja kogu selle sisu:
ls -ld /tmp/uus_kataloog /tmp/uus_kataloog/teenused
Täitmisbiti asemel võite märgata kleepuvat bitti, mis tähendab, et faili saab kustutada ainult juur või kasutaja john, kuna fail asub kleepuva biti kataloogis.
Linuxi faili erilubade mõistmine
Artiklis näidatakse, kuidas neid bitte seadistada, et parandada ühiskasutatavate failide ja kataloogide koostööd ning kaitsta neid volitamata juurdepääsu, täitmise ja kustutamise eest. Isegi kui te nende bittide abil faile/katalooge ei loo, on faili eriõiguste mõistmine paljudes olukordades abiks, eriti tõrkeotsingul või süsteemiadministraatorina. Nende bittide ebamõistlik kasutamine võib aga põhjustada erinevaid turvaauke.
Kas soovite failide õigusi Linuxis failide kopeerimise ajal säilitada? Siin on, kuidas seda teha cp ja rsynci abil.
Loe edasi
- Linux
- Failihaldus
- Linux

Rumaisa on MUO vabakutseline kirjanik. Ta on läbinud pika tee matemaatikust infoturbe entusiastini ja töötab SOC analüütikuna. Tema huvid hõlmavad uute tehnoloogiate, Linuxi distributsioonide ja kõige muu infoturbega seotud lugemist ja kirjutamist.
Liituge meie uudiskirjaga
Liituge meie uudiskirjaga tehniliste näpunäidete, arvustuste, tasuta e-raamatute ja eksklusiivsete pakkumiste saamiseks!
Tellimiseks klõpsake siin