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.

instagram viewer

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.

Kuidas säilitada failide õigusi failide kopeerimisel Linuxis

Kas soovite failide õigusi Linuxis failide kopeerimise ajal säilitada? Siin on, kuidas seda teha cp ja rsynci abil.

Loe edasi

JagaSäutsMeil
Seotud teemad
  • Linux
  • Failihaldus
  • Linux
Autori kohta
Rumaisa Niazi (3 avaldatud artiklit)

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.

Veel Rumaisa Niazist

Liituge meie uudiskirjaga

Liituge meie uudiskirjaga tehniliste näpunäidete, arvustuste, tasuta e-raamatute ja eksklusiivsete pakkumiste saamiseks!

Tellimiseks klõpsake siin