Operációs Rendszerek I. Jogosultságkezelés
1
Bevezetés Többfelhasználós rendszerben nem férhet hozzá mindenki mindenhez Windows XP-ben beállítható, hogy ki mihez férhet hozzá, mivel mit csinálhat háromféleképp szabályozhatóak a felhasználók:
Egyszerűsített felület (kétfajta) Adminisztrációs felület Parancssor 2
Bevezetés
Parancssor net user parancs különböző variánsai pl: van egy szerverünk, ahova létre kell hozni 150 felhasználó hozzáférését és saját könyvtárát. Grafikus felületen ez néhány óra, parancssorban 1 for. Szintaxisa: net user <username> /add net localgroup
/add 3
Jogosultságkezelés Minden erőforráshoz tartozik egy ACL (Access Control List) ACL tartalma:
◦ Felhasználó vagy csoport azonosító(SID) ◦ Művelet leírása (írás, olvasás stb.) ◦ Adott művelet engedélyezése, tiltása
Előhozás: állomány tulajdonságai/Biztonság/Speciális 4
SID felépítése Példa: S-1-5-21-36238110153361044348-30300820-1013 S – a string egy SID-et reprezentál 1 – SID specifikáció verziója 5 – NT authority 21-3623811015-3361044348-30300820 – domain vagy local computer azonosító 1013 – relatív ID (RID) - nem alapértelmezett csoportok vagy felhasználók esetében 1000 vagy annál nagyobb
5
Példa SIDekre S-1-1-0 – Everyone S-1-5-32-544 – Administrators S-1-5-XXX-500 – Administrator S-1-5-XXX-501 – Vendég S-1-5-XXX-512 – Domain admin (XXX - domain) S-1-5-545 – Users whoami /user - aktuális felhasználó SIDjének megjelenítése
6
összetett jogosultságok: egymásra épülnek: pl. az Olvasás és végrehajtás szint tartalmazza ugyanazokat a beállításokat, amelyeket az Olvasás, valamint hozzáad még néhány sajátot..
Elemi jogok
7
Minden összetett jog megfelel egy vagy több elemi jognak. A megfeleltetés:
Pl. az Írás összetett jogba tartozik a fájlok létrehozása, attribútumok írása stb. Nem szükséges az adott összetett jog minden elemét kiválasztani. 8
Jogosultságkezelés
Egy felhasználó kétféleképpen szerezhet jogokat ◦ kap valamilyen jogosultságot, ◦ vagy a csoportja.
A saját és az örökölt jogok egyenértékűek. Ha egy felhasználó több csoportnak is a tagja, akkor minden csoportjától megörökli az összes jogot (és a tiltásokat is).
9
Jogosultságkezelés
Jogosultságok/Permissions ◦ Erőforráshoz hozzáférés állítható
Naplózás/Auditing ◦ Műveletek naplózása
Tulajdonos/Owner Tényleges Jogosultságok /Eff.Perm
◦ Ki-mit tehet meg az adott erőforrással
10
Jogosultságkezelés
11
Jogosultságok (1)
Windows opt-in jellegel kezeli a jogosultságot ◦ Csak az férhet hozzá erőforráshoz, akinek engedik
A felhasználó több címen is kaphat jogot (pl. saját név és csoport) ◦ A tagadás mindig erősebb
12
Jogosultságok (2) Jogosultság változtatásához kattintsunk az add gombra, majd írjunk be felhasználó vagy csoport nevet A megfelelő jogosultságokat a pipákkal állíthatjuk
13
Jogosultságok (3)
Jogokat mindig csoportnak adjunk ◦ Könnyíti a személycserét ◦ Kevesebb bejegyzés az ACL-en ◦ Gyorsabb kiértékelés
14
Naplózás (1) Minden felhasználóra beállítható Sikeres és sikertelen hozzáféréseket naplózhatjuk Be kell kapcsolni a helyi gépen a naplózást
◦ Vez/Felügyeleti Eszk./Helyi Bizt. Házirend/Naplórend/Obj.Hozzáférés naplózása/sikeres,sikertelen 15
Feladat Vegyük saját tulajdonba a Kék hegyek mintaképet Hozzuk létre Kiss Béla felhasználót (korlátozott) Állítsunk be naplózást (törlésre, saját tuladonba vételre) Lépjünk be vele Póbáljuk meg törölni, illetve saját tulajdonba venni a Kék hegyek mintaképet. Lépjünk vissza a Hallgatóval és nézzük meg a naplóbejegyzéseket 16
Naplózás bekapcsolása
17
Naplózás (2) A naplóbejegyzések az eseménynaplóban fognak megjelenni (vezérlőpult/eseménynapló) Körültekintően alkalmazzuk, mivel erőforrásigényes
18
19
Tulajdonos
Minden erőforrásnak van tulajdonosa ◦ kezdetben a létrehozó ◦ majd aki saját tulajdonba vette
Tulajdont átadni nem lehet, de engedélyezhető az átvétele
20
Tényleges jogok
Itt tekinthető meg, hogy egy felhasználó milyen jogosultsággal rendelkezik ◦ Nevet be kell írni, ahol pipa van, az mehet
21
UAC - User Access Control Windows Vista új alapokra helyezte a hozzáférés vezérlést Miért?
◦ Windows XP-ben a jogosultságok szerteágazóan beállíthatóak Ki mikor mit csinálhasson a rendszerben
◦ De
Az elsőként létrehozott felhasználó rendszergazda volt. Nem volt mód magasabb jogokat kapni run as vagy átjelentkezés nélkül --> rendszergazdaként használták inkább a rendszert Igazán hatékonyan a rendszert csak rendszergazdaként lehetett használni (programok telepítése, idő beállítás stb)
22
UAC - User Access Control
UAC mindezt lehetővé teszi ◦ Az administrator user alapból tiltva van ◦ Rendszergazdaként fellépni a rendszergazdák csoport tagjai tudnak ◦ Ilyen felhasználók is egyszerű userként vannak bejelentkezve Ha nincs elég jog, akkor a rendszer rákérdez, hogy "kérünk-e" A kérdés biztonsági konzolon jön elő - csak a windows folyamatok érhetik el
◦ Értesítést küld róla - biztonságosabb, mert a háttérben nem történik meg 23
UAC - User Access Control
Forrás: http://technet.microsoft.com/en-us/library/cc709628(WS.10).aspx 24
UAC - User Access Control
A funkciók egy részét minden felhasználó elérheti ◦ Időzóna váltás ◦ Naptár megtekintése
Órát beállítani csak a rendszergazda tudja 25
Windows Integrity Mechanism Vistában megjelent biztonsági featúra A folyamatok és erőforrások biztonsági szintet kapnak A folyamatok nem férhetnek hozzá a náluk nagyobb biztonsági szinthez (integrity level) Felülírja az NTFS jogokat
http://msdn.microsoft.com/en-us/library/bb625957.aspx http://www.symantec.com/connect/articles/introduction-windows-integrity-control http://msdn.microsoft.com/en-us/library/bb625963.aspx 26
Integrity levels Untrusted – anoním folyamatok Low – Minden, ami az internettel kapcsolatos - IE összes eleme pl.
◦ Bizonyos könyvtárak: Temporary Internet Folder is low
Medium – Az alapértelmezett szint. Minden amit nem állítanak alacsonyra vagy magasra, az ezt a közepes értéket kapja. High – Rendszergazdák szintje, így hozzáférhetnek minden medium, low és high szintű erőforráshoz. System – A rendszerhez rendelt szint. A Windows kernel elemei és alapvető szolgáltatások futnak így még a rendszergazdák sem férhetnek hozzá alapértelmezés szerint Installer – Telepítő: speciális szint, a legmagasabb. Telepíteni és eltávolítani is tudnak elemeket.
27
Jogosultságkezelés parancssorból
cacls: ◦ Minden windows XP része, korlátozott használhatósággal
xcacls: ◦ Resource kitben található
icacls: ◦ Vista / Windows 2003 SP2 óta elérhető
get-acl, set-acl 28
cacls használata
cacls filename [/t] [/e] [/c] [/g user|group:perm] [/r user|group [...]] [/p user|group:perm [...]] [/d user|group [...]]
Opciók ◦ /t: könyvtárban és alkönyvráraiban is dolgozik
◦ /e: szerkeszti az ACL-t, nem kicseréli ◦ /c: hibáknál nem áll le ◦ /g user|csoport: engedélyezés: r: olvasás, c: írás, f: teljes elérés ◦ /r user: jog megvonása ◦ /p user|group: felhasználó jogainak lecserélése: n: minden megvonása, r: olvasás, c: írás, f. teljes hozzáférés ◦ /d user|group: hozzáférés tiltása
29
cacls eredmény
30
cacls kimenet értelmezés ◦ Írjuk be: Cacls c:\ ◦ Eredmény (kb) BUILTIN\Rendszergazdák:(OI)(CI)(IO)F
Rendszergazdák csoportra vonatkozik ez a sor OI: Object Inherit : ezen könyvtár fájljai örökölni fogják ezt a jogot. CI: Container Inherit: az alkönyvtárak örökölni fogják ezt a jogot. IO: Inherit Only: Ez a jog csak öröklődik, erre az objektumra nem vonatkozik. NP: Non-Propagate: gyermekobjektumok nem fogják örökölni ezt a jogot. F: Full control C: Change W: Write
31
cacls példa
c mappa minden fájljához és könyvtárához teljes hozzáférés a rendszergazdának cacls c:\ /t /e /g Administrators:f ◦ ◦ ◦ ◦ ◦
C:\ -- itt dolgozzon /t -- öröklődjenek a jogok /e -- szerkeszteni szeretnénk /g Adm. -- administrators csoportnak jog :f -- teljes hozzáférés
32
cacls feladat Adjunk olvasási jogosultságot a hallgató felhasználónak a c:\... fájlhoz. Ellenőrizzük a GUI-n.
cacls file.txt /e /g hallgato:r
33
xcacls
Felépítésében hasonló a cacls-hez, azonban részletesebb jogosultság kezelést tesz lehetővé: /G user:permision[;FolderSpec] Grant specified user access rights, permision can be:
r Read
c Change (write)
f Full control
p Change Permissions (Special access)
o Take Ownership (Special access)
x EXecute (Special access)
e REad (Special access)
w Write (Special access)
d Delete (Special access)
t Used only by FolderSpec. see below 34
xcacls
35
xcacls Barátságosabb kimenet A mezők nagyjából lefedik a GUIban láthatóakat
36
icacls http://technet.microsoft.com/enus/library/cc753525(WS.10).aspx To grant the user User1 Delete and Write DAC permissions to a file named "Test1", type:
◦ icacls test1 /grant User1:(d,wdac) ◦ icacls test2 /grant *S-1-1-0:(d,wdac)
37
icacls icacls egyikfile.txt /grant User:F icacls masik.txt /grant User2:(GR)
Integrity level állítása ◦ icacls masik.txt /setintegritylevel F
38
icacls gyakorlat Hozzunk létre egy minta nevű könyvtárat és benne egy .txt és egy .bat fájlt. Adjunk teljes hozzáférést a hallgato nevű felhasználónak. Vonjuk meg a hallgato usertől a törlés jogát.
39
Feladatok jogosultsághoz Hozzon létre egy zh és egy puska nevű könyvtárat a c meghajtón A zh könyvtár az oktatók otthona, itt tárolhatják a soron következő dolgozataikat. Mivel a hallgatók is hozzáférhetnek ehhez a géphez, ezért gondot okozhat, ha elolvashatják ezeket az állományokat. Állítsa be, hogy a hallgatók a könyvtárba ne léphessenek be, az ottani fájlokat ne olvashassák.
40
Feladatok jogosultsághoz
A puska könyvtárba a hallgatók helyezhetik el segédleteiket. Sajnos a legtöbb ilyen segédlet tartalmaz hibákat. Vannak rendes oktatók, akik nem sajnálják az időt, hogy az ilyen segédletet kijavítsák, ezért célszerű, ha láthatják a könyvtár tartalmát, és tudnak módosítani a fájlokon. Állítsa ezt be. Sajnos vannak olyan oktatók is, akik le akarják törölni ezeket a fájlokat, vagy direkt használhatatlan puskákat másolnának be, megzavarva ezzel a tanulni vágyó ifjúságot. Akadályozza meg ezeket!
41
Feladatok jogosultsághoz A zh könyvtáron belül hozzon létre user3 és user4 könyvtárakat, amelyek tulajdonosa legyen user3 és user4. A saját könyvtárába csak a könyvtár tulajdonosa írhasson (explicit megadással), de az ott található dolgokat más is olvashassa.
42
Feladatok jogosultsághoz - PS Script segítségével hozzon létre 200 könyvtárat, mindegyikben 3 alkönyvtárral (A nevek lehetnek számok 1-200 között) Írjon olyan scriptet, ami az összes könyvtáron ad a hallgato usernek teljes hozzáférést.
43