Tiedosto järjestelmät käyttävät käyttöoikeudet ja ominaisuudet, säädellä vuorovaikutusta, että järjestelmän prosesseja voi olla tiedostoja ja hakemistoja.

Varoitus: tietoturvatarkoituksiin käytettynä käyttöoikeudet ja attribuutit puolustautuvat vain käynnistetystä järjestelmästä käynnistettyjä hyökkäyksiä vastaan. Tallennettujen tietojen suojaamiseksi hyökkääjiltä, joilla on fyysinen pääsy koneeseen, on myös otettava käyttöön tietojen levon salaus.,

Katselu käyttöoikeudet

Käyttää ls komento on -l mahdollisuus tarkastella käyttöoikeudet (tai file-tila) asettaa sisältö hakemisto, esimerkiksi:

$ ls-l /path/to/directory

ensimmäinen sarake on mitä meidän on keskityttävä., Taking an example value of drwxrwxrwx+, the meaning of each character is explained in the following tables:

d rwx rwx rwx +
The file type, technically not part of its permissions. See info ls -n "What information is listed" for an explanation of the possible values., oikeudet, jotka omistajalla on tiedoston päällä, selitetään alla. oikeudet, jotka ryhmällä on tiedoston päällä, selitetään alla. käyttöoikeudet, jotka kaikilla muilla käyttäjillä on tiedoston päällä, selitetään alla. yksi merkki, joka määrittää, sovelletaanko tiedostoon vaihtoehtoista käyttöoikeusmenetelmää. Kun tämä merkki on tila, ei ole vaihtoehtoista pääsymenetelmää. . merkki ilmaisee tiedoston kanssa turvallisuuden yhteydessä, mutta mikään muu vaihtoehtoinen käyttötapa., Tiedoston tahansa muu yhdistelmä vaihtoehtoinen pääsy menetelmiä on merkitty + hahmo, esimerkiksi siinä tapauksessa, Access Control list.,

Jokainen kolme lupaa triadit (rwx yllä olevassa esimerkissä) voi koostua seuraavista merkeistä:

Hahmo Vaikutus tiedostot Vaikutus hakemistot
lukuoikeus (ensimmäinen merkki) - tiedostoa ei voi lukea., hakemiston sisältöä ei voi näyttää.
r tiedosto voidaan lukea. hakemiston sisältö voidaan näyttää.
kirjoitusoikeudet (toinen merkki) - tiedostoa ei voi muuttaa. hakemiston sisältöä ei voi muuttaa.
w tiedosto voidaan muuttaa., hakemiston sisältö voidaan muokata (luoda uusia tiedostoja tai kansioita, nimetä uudelleen tai poistaa olemassa olevia tiedostoja tai kansioita); vaatii, että suoritetaan, lupa voidaan myös asettaa, muuten tätä lupaa ei ole vaikutusta.
Execute lupaa (kolmas merkki) - tiedostoa ei suoriteta. hakemistoon ei pääse cd: llä.
x tiedosto voidaan suorittaa., hakemisto voidaan käyttää cd; tämä on ainoa lupaa vähän, että käytännössä voidaan katsoa olevan ”perinnöksi” esi-hakemistoja, itse asiassa, jos minkä tahansa kansion polku ei ole x bitti on asetettu, lopullinen tiedostoa tai kansiota ei voi käyttää myöskään, riippumatta sen käyttöoikeudet; ks. path_resolution(7) lisätietoja.,
s The setuid-bitti, kun löytyy käyttäjä kolmikko; että setgid vähän, kun löytyy ryhmä, kolmikko, se ei löydy muita kolmikko; se myös merkitsee, että x on asetettu.
S Sama kuin s, mutta x ei ole asetettu; harvinainen säännöllisesti tiedostoja, ja hyödytön kansioita.,
t The sticky bit; it can only be found in the others triad; it also implies that x is set.
T Same as t, but x is not set; rare on regular files, and useless on folders.

See info Coreutils -n "Mode Structure" and chmod(1) for more details.,

Vihje: Voit tarkastella käyttöoikeuksia polkua pitkinnamei -l path.

Esimerkkejä

katsokaamme joitakin esimerkkejä selventää:

drwx------ 6 archie users 4096 Jul 5 17:37 Documents

Archie on täysi pääsy Asiakirjat hakemistoon. Hän voi luetella, luoda tiedostoja ja nimetä uudelleen, poistaa minkä tahansa tiedoston asiakirjoista riippumatta tiedostojen käyttöoikeuksista. Hänen mahdollisuutensa päästä käsiksi tiedostoon riippuu tiedoston luvasta.

dr-x------ 6 archie users 4096 Jul 5 17:37 Documents

Archiella on täysi pääsy, paitsi ettei hän voi luoda, nimetä uudelleen, poistaa mitä tahansa tiedostoa., Hän voi luetella tiedostot ja (jos tiedoston lupa valtuuttaa) voi käyttää olemassa olevaa tiedostoa asiakirjoissa.

d-wx------ 6 archie users 4096 Jul 5 17:37 Documents

Archie voi tehdä ’ls’ Asiakirjoja, mutta jos hän tietää, että nimi aiemmin luodun tiedoston sitten hän voi luetella, nimetä uudelleen, poistaa tai (jos tiedosto on lupa annetaan hänelle) käyttää sitä. Lisäksi hän pystyy luomaan uusia tiedostoja.

d--x------ 6 archie users 4096 Jul 5 17:37 Documents

Archie pystyy (jos tiedoston lupa antaa hänelle valtuudet) käyttämään näitä tiedostoja asiakirjoissa, joista hän tietää. Hän ei voi luetella jo olemassa olevia tiedostoja tai luoda, nimetä uudelleen, poistaa mitään niistä.,

kannattaa pitää mielessä, että tarkennamme hakemiston käyttöoikeuksia, eikä sillä ole mitään tekemistä yksittäisten tiedostojen käyttöoikeuksien kanssa. Kun luot uuden tiedoston, se on hakemisto, joka muuttuu. Siksi sinun täytyy kirjoittaa lupa hakemistoon.

katsotaanpa toinen esimerkki, mutta tällä kertaa tiedosto ei ole hakemisto:

-rw-r--r-- 1 archie users 5120 Jun 27 08:28 foobar

Tässä voimme nähdä, että ensimmäinen kirjain ei ole d mutta -. Tiedämme, että se on tiedosto, ei Hakemisto., Seuraavan omistajan oikeudet ovat rw- joten omistaja on kyky lukea ja kirjoittaa, mutta ei toteuttaa. Tämä saattaa tuntua oudolta, että omistaja ei ole kaikki kolme käyttöoikeudet, mutta x lupaa ei tarvita, koska se on teksti/data tiedosto voidaan lukea tekstieditorilla, kuten Gedit, EMACS, tai ohjelmistoja, kuten R, ja ei ole suoritettava omalla oikealle (jos se sisälsi jotain, kuten python-koodia, niin se hyvinkin voi olla)., Ryhmän käyttöoikeudet ovat asetettu r--, niin ryhmä on kyky lukea tiedoston, mutta ei kirjoittaa/muokata sitä millään tavalla — se on lähinnä, kuten asettamalla jotain vain lukea. Näemme, että samat oikeudet koskevat myös kaikkia muita.

Muuttuvat käyttöoikeudet

chmod komento Linux ja muut Unix-käyttöjärjestelmille, jonka avulla voit muuttaa käyttöoikeuksia (tai käyttää tilassa) tiedoston tai hakemiston.

Text menetelmällä

muuttaa käyttöoikeuksia — tai access mode — tiedoston, käytä chmod-komentoa päätteessä., Alla on komennon yleinen rakenne:

chmod who=permissions filename

Jossa who on eri kirjainta, kukin merkitsee, kuka on antanut lupaa. Ne ovat seuraavat:

  • u: käyttäjä, joka omistaa tiedoston.
  • g: käyttäjäryhmä, johon tiedosto kuuluu.
  • o: muut käyttäjät, eli kaikki muutkin.
  • a: kaikki edellä, käytä tätä sijasta kirjoittamalla ugo.,

käyttöoikeudet ovat samat kuin keskustellaan #Katselu käyttöoikeudet (r, w ja x).

Katso nyt joitakin esimerkkejä tällä komennolla., Oletetaan, että sinulla tuli hyvin suojaava Documents-hakemiston ja halusi kieltää kaikki muut paitsi itsesi, oikeudet lukea, kirjoittaa ja suorittaa (tai tässä tapauksessa haku/näyttää) se:

Ennen: drwxr-xr-x 6 archie users 4096 Jul 5 17:37 Documents

$ chmod g= Documents$ chmod o= Documents

Jälkeen: drwx------ 6 archie users 4096 Jul 6 17:32 Documents

Tässä, koska haluat kieltää käyttöoikeudet, sinun ei laittaa mitään kirjaimia jälkeen = jossa käyttöoikeudet olisi tullut. Nyt voit nähdä, että vain omistajan oikeudet ovat rwx ja kaikki muut oikeudet ovat -.,

Tämä voi olla palasi kanssa:

Ennen: drwx------ 6 archie users 4096 Jul 6 17:32 Documents

$ chmod g=rx Documents$ chmod o=rx Documents

Jälkeen: drwxr-xr-x 6 archie users 4096 Jul 6 17:32 Documents

seuraavassa esimerkki, haluat myöntää luku-ja suoritusoikeudet ryhmälle ja muille käyttäjille, joten voit laittaa kirjaimet käyttöoikeudet (r ja x) jälkeen = ilman välilyöntejä.

voit yksinkertaistaa tämän niin, että saat useamman kuin yhden who kirjaimen samaan komentoon, e.,g:

$ chmod go=rx Documents
Huom: Sillä ei ole väliä, missä järjestyksessä laitat who kirjaimia tai lupaa kirjaimet chmod komento: olisit voinut chmod go=rx file tai chmod og=xr file. Kaikki on ennallaan.,ider toinen esimerkki: oletetaan, että haluat muuttaa foobar tiedosto, niin että sinulla on luku-ja kirjoitusoikeudet, ja muille käyttäjille ryhmässä users kuka voi olla kollegansa työskentelevät foobar, voi myös lukea ja kirjoittaa sitä, mutta muut käyttäjät voivat vain lukea sitä:

Ennen: -rw-r--r-- 1 archie users 5120 Jun 27 08:28 foobar

$ chmod g=rw foobar

Jälkeen: -rw-rw-r-- 1 archie users 5120 Jun 27 08:28 foobar

Tämä on täsmälleen kuten ensimmäisessä esimerkissä, mutta tiedosto ei ole hakemisto, ja voit antaa kirjoitusoikeudet (juuri niin kuin antaa esimerkin myöntää joka lupaa).,

Teksti tapa pikakuvakkeet

chmod-komennon avulla lisätä ja vähentää käyttöoikeudet olemassa olevan asettaa käyttämällä + tai - sijaan =. Tämä on erilainen kuin edellä mainitut komennot, jotka olennaisesti uudelleen kirjoittaa käyttöoikeudet (esim. muuttaa lupaa r-- ja rw-, voit silti täytyy sisältää r sekä w jälkeen = vuonna chmod-komennolla vetoaminen., Jos et nähnyt ulos r, se veisi pois r lupaa, koska ne ovat uudelleen kirjoitettu =. Käyttäen + ja - välttää tämän lisäämällä tai ottamalla pois nykyisestä asettaa käyttöoikeudet).,>Ennen: -rw-rw-r-- 1 archie users 5120 Jun 27 08:28 foobar

$ chmod a-w foobar

Jälkeen: -r--r--r-- 1 archie users 5120 Jun 27 08:28 foobar

eri oikotie on erityinen X mode: tämä ei ole varsinainen tiedosto-tila, mutta se on usein käytetään yhdessä -R mahdollisuus asettaa suoritettavan vähän vain hakemistoja, ja jätä se ennallaan säännöllisesti tiedostot, esimerkiksi:

$ chmod -R a+rX ./data/

Kopiointi käyttöoikeudet

on mahdollista kertoa chmod kopioida yhden luokan, sanoa, omistaja, ja antaa samat oikeudet ryhmä tai jopa kaikki., Voit tehdä tämän, sen sijaan, että r, w tai x jälkeen = laita toinen joka kirjain. e.g:

Ennen: -rw-r--r-- 1 archie users 5120 Jun 27 08:28 foobar

$ chmod g=u foobar

Jälkeen: -rw-rw-r-- 1 archie users 5120 Jun 27 08:28 foobar

Tämä komento lähinnä kääntää ”muuttaa käyttöoikeudet-ryhmä (g=), olla sama kuin omistava käyttäjä (=u). Huomaa, että et voi kopioida joukko käyttöoikeuksia sekä myöntää uusia esim.,:

$ chmod g=wu foobar

siinä tapauksessa chmod heittää virheen.

numeerinen menetelmä

chmod voi myös asettaa käyttöoikeuksia numeroiden avulla.

Käyttämällä numeroita on toinen menetelmä, jonka avulla voit muokata käyttöoikeudet kaikkien kolmen omistajan, ryhmän ja muiden samaan aikaan, sekä setuid, setgid, tahmea bittiä. Tämä perusrakenne koodi on tämä:

$ chmod xxx filename

Jossa xxx on 3-numeroinen luku, missä kukin numero voi olla mitä tahansa välillä 0-7., Ensimmäinen numero koskee käyttöoikeuksia omistajalle, toinen numero koskee käyttöoikeuksia ryhmälle ja kolmas numero koskee käyttöoikeuksia kaikille muille.

tämä numero merkintä, arvot r, w ja x on oma numero arvo:

r=4w=2x=1

– keksiä 3-numeroinen luku, sinun täytyy harkita, mitä käyttöoikeuksia haluat, omistaja, ryhmä, ja kaikki muut on, ja sitten koko niiden arvot ylös., haluat ryhmässä ja kaikki muu on vain luku ja suoritus-käyttöoikeudet, voit keksiä numeerisia arvoja, kuten niin:

  • Omistaja: rwx=4+2+1=7
  • Ryhmä: r-x=4+0+1=5
  • Muita: r-x=4+0+1=5
$ chmod 755 filename

Tämä vastaa käyttäen seuraavaa:

$ chmod u=rwx filename$ chmod go=rx filename

Voit tarkastella olemassa olevia käyttöoikeuksia tiedoston tai hakemiston numeerisessa muodossa, käytä stat(1) komento:

$ stat -c %a filename

Jos %mahdollisuus määrittää tuotoksen numeerisessa muodossa.,

Suurin kansiot ja hakemistot ovat asetettu 755 mahdollistaa lukemisen, kirjoittamisen ja suorittamisen omistaja, mutta kieltää kirjallisesti kaikki muutkin, ja tiedostot ovat yleensä 644 mahdollistaa lukeminen ja kirjoittaminen omistaja, mutta vain lukemalla kaikki muutkin; katso viimeinen huomautus puute x käyttöoikeudet kuin suoritettavia tiedostoja: se on sama asia täällä.,

nähdä tämän toiminnan esimerkkejä harkita edellinen esimerkki, jota on käytetty, mutta tämä on numeerinen menetelmä, jota käytetään sen sijaan:

Ennen: -rw-r--r-- 1 archie users 5120 Jun 27 08:28 foobar

$ chmod 664 foobar

sen Jälkeen, kun: -rw-rw-r-- 1 archie users 5120 Jun 27 08:28 foobar

Jos tämä olisi suoritettava määrä olisi 774 jos haluat myöntää suoritettavan lupaa omistaja ja ryhmä. Vaihtoehtoisesti jos olisit halunnut kaikkien vain lukuoikeuden, luku olisi 444., Hoidettaessa r 4, w 2 ja x 1, on luultavasti helpoin tapa selvittää numeerisia arvoja käyttäen chmod xxx filename, mutta siellä on myös binary menetelmä, jossa jokainen lupa on binary numero, ja sitten se on puolestaan muuntaa useita. Se on hieman mutkikkaampi,mutta tässä mukana täydellisyyttä.,

Mieti tätä käyttöoikeusjoukkoa:

-rwxr-xr--

Jos laittaa 1 kunkin lupa myönnetty, ja 0 jokaista ei myönnetty, tulos olisi jotain tällaista:

-rwxrwxr-x 111111101

Voit sitten muuntaa nämä binary numerot:

000=0 100=4001=1 101=5010=2 110=6011=3 111=7

arvo edellä olisi siis 775.

Harkitse halusimme poistaa kirjoitettava lupa ryhmä:

-rwxr-xr-x 111101101

– arvon olisi siksi oltava 755 ja voit käyttää chmod 755 filename poistaa kirjoitettava lupaa., Huomaat, että saat saman kolminumeroisen numeron riippumatta siitä, mitä menetelmää käytät. Se, käytätkö tekstiä tai numeroita, riippuu henkilökohtaisesta mieltymyksestä ja kirjoitusnopeudesta. Kun haluat palauttaa hakemiston tai tiedoston oletuksena käyttöoikeudet esim. lukea ja kirjoittaa (ja suorittaa) lupaa omistaja, mutta kieltää kirjoitusoikeudet kaikki muutkin, se voi olla nopeampi käyttää chmod 755/644 filename. Kuitenkin, jos olet muuttaa käyttöoikeuksia jotain poikkeavaa, se voi olla yksinkertaisempi ja nopeampi käyttää tekstin menetelmä vastakohtana yrittää muuntaa numerot, jotka saattavat aiheuttaa virheen., Se voisi olla väitti, että ei ole mitään todellista merkittävää eroa nopeutta joko menetelmä käyttäjä, joka tarvitsee vain käyttää chmod tilaisuudessa.

Voit myös käyttää numeerista menetelmää asettaa setuid, setgid ja sticky bits käyttämällä neljä numeroa.

setuid=4setgid=2sticky=1

esimerkiksi chmod 2777 filename asettaa lukea/kirjoittaa/suoritettavan bits kaikille ja myös enable setgid bit.

Bulk chmod

Yleensä hakemistoja ja tiedostoja pitäisi olla samat oikeudet., Jos on tarpeen irtotavarana muuttaa hakemistopuuta, käytä find valikoivasti muuttaa jompaakumpaa.

chmod vain hakemistoja 755:

$ find directory -type d -exec chmod 755 {} +

chmod vain tiedostoja 644:

$ find directory -type f -exec chmod 644 {} +

vaihtumisen

chown muuttaa omistaja tiedoston tai hakemiston, joka on nopeampaa ja helpompaa kuin muuttamalla luvat joissakin tapauksissa.

harkitse seuraavaa esimerkkiä, jolloin tehdään uusi osio, jossa on GParted varmuuskopiointitietoja varten. Gparted tekee tämän kaiken juurena, joten kaikki kuuluu juureen oletuksena., Tämä on kaikki hyvin ja hyvä, mutta kun se tulee kirjoittaa tiedot asennettu osio, lupa evätään säännöllisiä käyttäjiä.

brw-rw---- 1 root disk 8, 9 Jul 6 16:02 sda9drwxr-xr-x 5 root root 4096 Jul 6 16:01 Backup

Kuten voit nähdä laitteen /dev omistaa root, kuten mount sijainti (/media/Backup)., Vaihda omistaja sijainti mount voidaan tehdä seuraavasti:

Ennen: drwxr-xr-x 5 root root 4096 Jul 6 16:01 Backup

# chown archie /media/Backup

Jälkeen: drwxr-xr-x 5 archie root 4096 Jul 6 16:01 Backup

Nyt osio voi olla tietoa kirjoitettu sen uusi omistaja, archie, muuttamatta käyttöoikeudet (omistajan kolmikko oli jo rwx käyttöoikeudet).

Huom:

  • chown aina tyhjentää setuid-ja setgid bittiä.
  • Ei-root käyttäjät eivät voi käyttää chown ”antaa pois” tiedostot, jotka he omistavat toiselle käyttäjälle.,

Access Control list

Access Control Lists tarjoaa uusia, joustavampia lupaa mekanismi tiedostojärjestelmien, jonka avulla voit asettaa käyttöoikeudet käyttäjä tai ryhmä tahansa tiedoston.

Umask

umask-apuohjelma käytetään ohjaamaan tiedoston luomisen tilassa naamio, joka määrittää alkuperäisen arvon tiedoston lupaa bittiä äskettäin luodut tiedostot.,

Tiedosto-ominaisuuksia

Lukuun ottamatta tiedosto tilassa bitit, jotka ohjaavat käyttäjän ja ryhmän luku -, kirjoitus-ja suoritusoikeudet, useita tiedostojärjestelmien tuki, tiedoston määritteitä, jotka mahdollistavat edelleen räätälöinnin sallittu tiedostojen toiminnan. Tässä osassa kuvataan joitakin näistä ominaisuuksista ja miten työskennellä niiden kanssa.

Varoitus: oletuksena, tiedoston attribuutit eivät ole säilötty cp -, rsync -, ja muut vastaavat ohjelmat.,

chattr ja lsattr

ext2 ja ext3 tiedostojärjestelmiä, että e2fsprogs paketti sisältää ohjelmat lsattr ja chattr luettelon ja muuttaa tiedoston attribuutit, vastaavasti.,/li>

  • u: undeletable
  • A: n aaika päivitykset
  • C: n kopio kirjoittaa
  • D: synkroninen hakemiston päivitykset
  • S: synkroninen päivitykset
  • T: alkuun hakemiston hierarkia
  • esimerkiksi, jos haluat asettaa muuttumaton vähän jonkin tiedoston, käytä seuraavaa komentoa:

    # chattr +i /path/to/file

    poista määrite tiedoston vain muuttaa + ja -.,

    laajennetut attribuutit

    alkaen xattr(7):”laajennetut attribuutit ovat nimi: arvoparit, jotka liittyvät pysyvästi tiedostoihin ja hakemistoihin”. Laajennettuja attribuuttiluokkia on neljä: turvallisuus, järjestelmä, luotettu ja käyttäjä.

    Varoitus: oletuksena, lisämääritteet eivät ole säilötty cp -, rsync -, ja muita vastaavia ohjelmia, katso #Säilyttämiseen laajennettu ominaisuuksia.

    laajennettuja attribuutteja käytetään myös ominaisuuksien asettamiseen.

    käyttäjän laajennettuja attribuutteja

    käyttäjän laajennettuja attribuutteja voidaan käyttää tiedoston mielivaltaisen tiedon tallentamiseen., To create one:

    $ setfattr -n user.checksum -v "3baf9ebce4c664ca8d9e5f6314fb47fb" foo.txt

    Use getfattr to display extended attributes:

    $ getfattr -d foo.txt
    # file: foo.txtuser.,3de557528">
    --preserve=mode,ownership,timestamps,xattr mv preserves by default1 tar --xattrs for creation and extraction bsdtar -p for extraction rsync --xattrs
    1. mv silently discards extended attributes when the target file system does not support them.,

    säilyttää laajennettu attribuutteja editorit sinun täytyy määrittää ne katkaista tiedostoja säästää sen sijaan käyttää nimeä(2).

    Vinkkejä

    Säilyttää root

    Käyttö --preserve-root lippu estää chmod toimimasta rekursiivisesti päälle /. Tämä voi esimerkiksi estää poistamasta suoritettavaa bittijärjestelmää ja siten rikkomasta järjestelmää. Jos haluat käyttää tätä lippua joka kerta, aseta se salanimellä. Katso myös .,

    Katso myös

    • wikipedia:Chattr
    • Linux-Lupaa Sekavuus
    • Linux-Lupaa Sekavuus osa 2
    • wikipedia:Extended file attributes#Linux
    • Laajennetut ominaisuudet: hyvä, ei niin hyvä, huono.
    • Varmuuskopioi ja palauta tiedostojen käyttöoikeudet Linuxissa
    • miksi” chmod-R 777 / ” on tuhoisa?

    Vastaa

    Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *