Infósoknak - Linux jogosultságok
Infósoknak - Linux jogosultságok
Linux jogosultságok – tananyag
1. Jogosultságmodell alapjai
A Linux többfelhasználós operációs rendszer, ezért minden fájlhoz és könyvtárhoz jogosultsági információk tartoznak. A rendszer azt szabályozza, hogy ki férhet hozzá és milyen műveletet végezhet. Minden fájl három külön jogosultsági kategóriát tartalmaz: tulajdonos (owner), csoport (group), és mindenki más (others). Ezekhez három alapjogosultság tartozik: olvasás (r), írás (w) és futtatás (x). A jogosultságok kombinációi határozzák meg, ki mit tehet a fájllal vagy könyvtárral.
2. Jogosultságok megjelenítése és értelmezése
Paranccsal megtekinthető:
ls -l
Példa:
-rwxr-xr--
Az első karakter a fájl típusát jelzi. A következő három a tulajdonos jogosultsága, az utána következő három a csoporté, az utolsó három mindenki másé. A fájl típusa általában „-”, ha normál fájl, „d”, ha könyvtár, „l” szimbolikus link esetén. A többi jogosultság a fent említett r, w és x kombinációja.
3. A jogosultságok jelentése fájloknál és könyvtáraknál
Fájl esetén az olvasási jogosultság tartalma megtekintését jelenti, az írási jogosultság a módosítást, a futtatási jogosultság pedig azt, hogy a fájl programként elindítható. Könyvtár esetén az olvasási jog a listázást jelenti, a belépés és könyvtárváltás az x jogosultsághoz kötődik, míg az írási jogosultság fájlok és almappák létrehozását, törlését teszi lehetővé.
4. Jogosultságok módosítása: chmod
A jogosultságok módosítására a chmod parancs szolgál. Kétféle megadási formája van. A szimbolikus módban betűkkel adható meg, hogy melyik felhasználói kategórián mit változtassunk:
chmod u+x file chmod g-w file chmod o=r file
Az oktális mód egy számkód, ahol az r 4, a w 2, az x 1 értéket kap:
chmod 755 file
Ez azt jelenti, hogy a tulajdonos olvashat, írhat és futtathat, a csoport és mások csak olvashatnak és futtathatnak.
5. Tulajdonos és csoport váltása: chown és chgrp
A chown parancs változtatja a fájl vagy könyvtár tulajdonosát:
chown user file
Adott esetben csoporttal együtt is:
chown user:group file
A chgrp parancs kizárólag a csoportot módosítja:
chgrp group file
6. Speciális jogosultságok: SUID, SGID és sticky bit
Ezek speciális esetekre szolgálnak.
A SUID akkor használatos, amikor egy programnak a futtató felhasználónál magasabb jogosultsággal kell működnie. Például a „passwd” program root jogosultsággal fut, még akkor is, ha normál user indítja. Jelölése:
rwsr-xr-x
Az SGID azt eredményezi, hogy a könyvtárba újonnan létrehozott fájlok ugyanazt a csoportot öröklik, mint a könyvtár. A beállítás:
chmod g+s directory
A sticky bit megakadályozza, hogy más felhasználók törölhessék egymás fájljait olyan könyvtárakban, ahol mindenki írhat. Ilyen a /tmp könyvtár. Jelölése:
rwxrwxrwt
7. Jogosultságkezelés a root felhasználóval
A root felhasználó minden fájlra korlátlan jogosultsággal rendelkezik. A Linux rendszerben a root jogosultságot különösen körültekintően kell használni, mert rossz beállításokkal vagy hibás parancsokkal a rendszer működése is veszélybe kerülhet. Gyakran használatosak korlátozott jogosultságú parancsok, mint a sudo, amely egy adott parancsot emelt jogosultsággal futtat, anélkül, hogy teljes rendszergazdai jogosultságot kelljen adni.
8. Összefoglaló
A Linux fájl- és könyvtárszintű jogosultságkezelése három felhasználói kategóriára és három jogosultságtípusra épül. Ezek egyszerűen módosíthatók a chmod, chown és chgrp parancsokkal. A speciális jogosultságok (SUID, SGID, sticky bit) további védelmi és működési lehetőségeket biztosítanak. A rendszer biztonsága és megbízhatósága érdekében a jogosultságok helyes kezelése kulcsfontosságú.
Gyakorlati feladat: Linux jogosultságok
1. Fájl létrehozása és jogosultságok ellenőrzése
Hozz létre egy új fájlt a neveddel:
touch myfile.txt
Nézd meg a fájl jogosultságait:
ls -l myfile.txt
Jegyezd fel, ki a tulajdonos és milyen jogosultságok vannak.
2. Jogosultságok módosítása szimbolikus módban
Add a fájlhoz a futtatási jogot a tulajdonosnak:
chmod u+x myfile.txt
Vedd el a csoport írási jogát:
chmod g-w myfile.txt
Állítsd be, hogy mindenki más csak olvashassa:
chmod o=r myfile.txt
Ellenőrizd a változásokat:
ls -l myfile.txt
3. Jogosultságok módosítása oktális módban
Állítsd a fájl jogosultságát: tulajdonos mindent, csoport és mások csak olvasás/futtatás:
chmod 755 myfile.txt
Ellenőrizd a változást.
4. Tulajdonos és csoport módosítása
Hozz létre egy új felhasználót és csoportot a gyakorlathoz (root jogosultság szükséges lehet):
sudo adduser testuser
sudo groupadd testgroup
Tedd a fájl tulajdonosává a testuser-t:
sudo chown testuser myfile.txt
Állítsd be, hogy a fájl a testgroup csoporthoz tartozzon:
sudo chgrp testgroup myfile.txt
Ellenőrizd a változást:
ls -l myfile.txt
5. Speciális jogosultságok
Állítsd be a SUID jogot egy programon (például /usr/bin/passwd másolata a gyakorlathoz):
sudo chmod u+s myfile.txt
Állítsd be az SGID jogot egy könyvtáron:
mkdir testdir
sudo chmod g+s testdir
Állítsd be a sticky bitet egy könyvtáron:
sudo chmod +t testdir
Ellenőrizd a változásokat:
ls -l
