Felhasználók és hozzáférési jogosultságokFelhasználók és hozzáférési jogosultságok

A kilencvenes évek elején történt bemutatkozása óta a Linuxot többfelhasználós rendszerként fejlesztették. Egyidejűleg bármennyi felhasználó használhatja. A felhasználóknak a munkafolyamat indítása előtt be kell jelentkezniük a rendszerbe. Minden felhasználónak van egy bejelentkezési neve és egy hozzá tartozó jelszava. A felhasználók ezen megkülönböztetése garantálja, hogy jogosulatlan személyek nem láthatnak olyan fájlokat, amelyre nincs engedélyük. A rendszer nagyobb módosításai (például új programok telepítése) gyakran szintén lehetetlenek vagy korlátozott mértékben hajthatók végre a normál felhasználók számára. Csak a root, vagy super user rendelkezik korlátlan lehetőségekkel a rendszer módosítására, és csak neki van minden fájlhoz hozzáférése. Azok, akik bölcsen használják ezt az alapelvet, csak akkor jelentkeznek be teljes root jogosultsággal, ha szükséges, ezzel csökkentve a véletlen adatvesztés kockázatát. Mivel normál körülmények között csak a rendszergazda törölhet rendszerfájlokat a merevlemezről, a trójai faló effektus vagy a véletlenül beírt romboló parancsok veszélye jelentősen csökkenthető.

Fájlrendszer-jogosultságokFájlrendszer-jogosultságok

A Linux-fájlrendszerben alapvetően minden fájl egy felhasználóhoz és egy csoporthoz tartozik. A tulajdonosok és mások írási, olvasási vagy végrehajtási jogosultsággal rendelkezhetnek a fájlokra vonatkozóan.

Egy csoport ebben az esetben a kapcsolatban álló felhasználók halmazaként definiálható, akik rendelkeznek bizonyos közös jogokkal. Adjuk például egy adott projekten dolgozó csoportnak a project3 nevet. Minden Linux-rendszeren dolgozó felhasználó tagja legalább egy tulajdonosi csoportnak, amely általában a users. A rendszeren annyi csoport létezhet, amennyire csak szükség van, de csak a root vehet fel csoportokat. A groups paranccsal minden felhasználó megtudhatja, hogy melyik csoportnak tagja.

Fájlhozzáférés

A fájlrendszer jogosultságainak szerveződése eltér a fájlok és a könyvtárak esetében. A fájljogosultságokkal kapcsolatos adatok az ls -l paranccsal jeleníthetők meg. A kimenet valahogy így fog kinézni: 15.1. példa - Minta kimenet a fájljogosultságok bemutatására.

15.1. példa - Minta kimenet a fájljogosultságok bemutatására

-rw-r----- 1 tux project3 14197 Jun 21  15:03 Roadmap

Amint az a harmadik oszlopban látható, ez a fájl a tux nevű felhasználóhoz tartozik, és a project3 csoporthoz van hozzárendelve. A Roadmap felhasználói jogoultságainak megállapításához az első oszlopot közelebbről is meg kell vizsgálni.

-

rw-

r--

---

Típus

A felhasználó jogosultságai

A csoport jogosultságai

Egyéb felhasználók jogosultságai

Az oszlop egy bevezető karakterrel kezdődik, amelyet háromszor három karakter követ. A tíz karakter közül az első a fájlrendszer-komponens típusát jelöli. A kötőjel () azt mutatja, hogy ez egy fájl. Lehet még könyvtár (d), lánc (l), blokkeszköz (b) vagy karakteres eszköz.

A következő három blokk egy szabványos mintát követ. Az első karakterek jelzik, hogy a fájl olvasható-e (r) vagy sem (). A középső w azt jelzi, hogy a vonatkozó objektum szerkeszthető, a kötőjel () pedig azt, hogy nem módosítható. A harmadik pozicióban található x azt mutatja, hogy az objektum végrehajtható. Mivel a példában szereplő fájl egy szöveges állomány, és nem olyan, amit végre lehetne hajtani, ennek az adott fájlnak a végrehajtási jogosultsága felesleges.

A példában a tux felhasználónak a Roadmap fájl tulajdonosaként olvasási (r) és írási (w) jogosultsága van hozzá, de nem hajthatja végre (x). A project3 csoport tagjai olvashatják a fájlt, de nem módosíthatják és nem hajthatják végre. A többi felhasználó semmilyen jogosultsággal nem rendelkezik a fájlhoz. Más jogosultságok az ACL-ek (hozzáférés-vezérlési listák) segítségével rendelhetők hozzá.

Könyvtár-jogosultságok

A könyvtárak hozzáférési jogosultságának a típusa d. Könyvtárak esetében az egyedi jogosultságoknak egy kicsit eltérő a jelentése.

15.2. példa - Minta kimenet a könyvtár-jogosultságok bemutatására

drwxrwxr-x 1 tux project3 35 Jun 21 15:15  ProjectData

A példában könnyű felismerni a ProjectData 15.2. példa - Minta kimenet a könyvtár-jogosultságok bemutatására könyvtár tulajdonosát (tux) és tulajdonos csoportját (project3). A fájlhozzáférési jogosultságoktól (Fájlhozzáférés ) eltérően a beállított olvasási jogosultság (r) azt jelenti, hogy a könyvtár tartalma megjeleníthető. Az írási (w) jogosultság azt jeleni, hogy új fájlokat lehet létrehozni. A végrehajtható jogosultság (x) azt jelenti, hogy a felhasználó beléphet a könyvtárba. A fenti példában ez azt jelenti, hogy a tux felhasználó, valamint a project3 csoport tagjai egyaránt beléphetnek a ProjectData könyvtárba (x), láthatják a tartalmát (r) és fájlokat adhatnak hozzá vagy törölhetnek (w) onnan. A többi felhasználónak azonban kevesebb jogot biztosít. Beléphetnek a könyvtárba (x) böngészhetnek benne (r), de nem hozhatnak létre új fájlokat (w).

A fájljogosultságok módosításaA fájljogosultságok módosítása

Hozzáférési jogosultságok módosítása

Fájl vagy könyvtár hozzáférési jogosultságait a tulajdonos, valamint a root módosíthatja a chmod parancssal, jogosultságokat módosító paraméterekkel, valamint egy vagy több fájlnévvel. A paraméterek különféle kategóriákba sorolhatók:

  1. felhasználókra vonatkozók

    • u (user) – a fájl tulajdonosa

    • g (group) – a fájlt birtokló csoport

    • o (others) – a további felhasználók (ha nincs megadva paraméter, a változások az összes kategóriára vonatkozni fognak)

  2. egy karakter a törléshez (), a beállításhoz (=) vagy a beszúráshoz (+)

  3. a rövidítések

    • rread (olvasás)

    • wwrite (írás)

    • xexecute (végrehajtás)

  4. fájlnév vagy fájlnevek szóközökkel elválasztva

Ha például a tux felhasználó (15.2. példa - Minta kimenet a könyvtár-jogosultságok bemutatására) írási (w) jogosultságot is szeretne adni a többi felhasználónak a ProjectData könyvtárhoz, akkor ezt a chmod o+w ProjectData parancs segítségével teheti meg.

Ha viszont (a sajátján kívül) minden más felhasználó írási jogosultságát le szeretné tiltani, akkor a következő parancsot kell megadnia: chmod go-w ProjectData. Ha minden felhasználó számára meg szeretné tiltani, hogy új fájlt adjanak hozzá a ProjectData mappához, akkor adja ki a chmod -w ProjectData parancsot. Mostantól senki más (még a tulajdonos sem) írhatja a fájlokat, amíg az írási jogosultság visszaállításra nem kerül.

A tulajdonosi jogosultságok módosítása

A fájlrendszer-összetevők tulajdonjogának és jogosultságainak vezérlésére szolgáló egyéb fontos parancsok a chown (change owner, tulajdonos módosítása) és a chgrp (change group, csoport módosítása). A chown a tulajdonjog egy másik felhasználónak történő átadására szolgál. Ilyen változtatást azonban csak a root jogosult elvégezni.

Tegyük fel, hogy a Roadmap fájlnak (15.2. példa - Minta kimenet a könyvtár-jogosultságok bemutatására) már nem a tux felhasználóhoz, hanem a geeko felhasználóhoz kell tartoznia. A root felhasználónak a következőt kell beírnia: chown geeko Roadmap.

A chgrp a fájlt birtokló csoportot módosítja. A fájl tulajdonosának azonban szerepelnie kell az új csoportban. Ezen a módon a tux (15.1. példa - Minta kimenet a fájljogosultságok bemutatására) felhasználó átállíthatja a ProjectData fájlt birtokló csoportot a project4 fájlt birtokló csoportot a chgrp project4 ProjectData parancs használatával, feltéve, hogy ő is tagja az új csoportnak.