UNIX 5. Přístupová oprávnění v Unixu

Slides:



Advertisements
Podobné prezentace
21. okruh GNU/Linux uživatelské účty, přístupová práva GUI, architektura X Windows, správce oken.
Advertisements

Obecně o operačních systémech
PEVNÝ DISK POČÍTAČE.
Pascal - příklady.
Souborové systémy.
ZMVŠ. Bezpečnost Windows 8 Dynamic Access Control (DAC) Volně – Dynamický kontrolní přístup) rozšíření NTFS access control listů (ACL) o složitá pravidla.
Přístupová práva, maska přístupových práv Jiří Hořejší.
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost Číslo projektu: CZ.1.07/1.5.00/ Číslo materiálu: VY_32_INOVACE_PSK-4-05.
Adresářová služba Active directory
Základy práce na PC Ing. Jan Roubíček.
PHP – Základy programování
Informatika pro ekonomy II přednáška 10
Výpočetní technika a algoritmizace I
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost Číslo projektu: CZ.1.07/1.5.00/ Číslo materiálu: VY_32_INOVACE_PSK-4-20.
UNIX — doplňky Informatika pro ekonomy II přednáška 9.
7. Typ soubor Souborem dat běžně rozumíme uspořádanou množinu dat, uloženou mimo operační paměť počítače (na disku). Pascalský soubor je abstrakcí skutečného.
Sedmé cvičení Soubory Vstupně/výstupní proudy. Java cv72 Soubory Třída File Objekt popisující soubor na filesystému Nedá se z něho přímo číst a psát Představuje.
Základy syntaxe jazyka PHP PHP JE TECHNOLOGIE BĚŽÍCÍ NA SERVERU. PHP JE TECHNOLOGIE BĚŽÍCÍ NA SERVERU. Typický PHP skript obsahuje: Typický PHP skript.
Algoritmizace a programování Textové soubory - 13 Mgr. Josef Nožička IKT Algoritmizace a programování
2 Fučíková Sylvie HR/Win – moderní technologie pro osvědčené aplikace.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
SAMBA umožňuje linuxovému systému sdílení prostředků a služeb prostřednictvím sítě používá SMB (server message block) protocol - identický protokolu.
Počítačová podpora konstruování I 7. přednáška František Borůvka.
Operační systém GNU Linux
Základy operačních systémů
Systém souborů. Množina souborů různých typů – Data – Spustitelné programy – Konfigurační a pomocné informace – I/O zařízení Způsob organizace množiny.
OPERAČNÍ SYSTÉMY.
Systém souborů. Množina souborů různých typů – Data – Spustitelné programy – Konfigurační a pomocné informace – I/O zařízení Způsob organizace množiny.
PV175 SPRÁVA MS WINDOWS I Podzim 2008 Řízení přístupu Manželka pošle svého manžela informatika nakoupit se slovy: "Kup chleba a když budou mít rohlíky,
Operační systém GNU Linux Příkazy pro práci se soubory.
Úvod do UNIXu (2 nd round) David Hoksza (obrázky na slidech 9, 12, 15 převzaty od Libora Forsta –
OPERAČNÍ SYSTÉM.
Kontakty slajdy: ftp://ulita.ms.mff.cuni.cz/predn/POS.
Tento projekt je financován z Operačního programu Vzdělávání pro konkurenceschopnost prostřednictvím Evropského sociálního fondu a státního rozpočtu ČR.
Výpočetní technika a algoritmizace I Základní příkazy příkazového řádku v systému Windows a unixových systémech.
Bezpečnostní popisovače ACL. Popisovač zabezpečení  Popisovač zabezpečení – sada informací o řízení přístupu - zabezpečení, spojené se zabezpečeným objektem.
UNIX 3. Uživatelé a oprávnění © Milan Keršlágerhttp:// Obsah: ● uživatelé, /etc/passwd,
Počítačová bezpečnost 2. Bezpečnost v OS © Milan Keršlágerhttp:// Obsah: ● jádro,
Unix a Internet 9. Samba © Milan Keršlágerhttp:// Obsah: ●
UNIX Uživatelé a skupiny © Milan Keršláger
UNIX Přístupová oprávnění © Milan Keršláger
Číslo projektu školy CZ.1.07/1.5.00/ Číslo a název šablony klíčové aktivity III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Číslo materiáluVY_32_INOVACE_ICT_I_S1_05.
FTP-SSL FTP-SSL Martin Dušek Martin Fúsek Josef Vlček.
Základní škola T. G. Masaryka a Mateřská škola Poříčany, okr. Kolín VY_32_INOVACE_ICT_04 ORGANIZACE DAT V PC Zpracovala: Mgr. Květoslava Štikovcová Číslo.
BEZPEČNOSTNÍ TECHNOLOGIE I Operační program Vzdělávání pro konkurenceschopnost Projekt: Vzdělávání pro bezpečnostní systém státu (reg. č.: CZ.1.01/2.2.00/ )
UNIX 3. Uživatelé a oprávnění © Milan Keršlágerhttp:// Obsah: ● uživatelé, /etc/passwd,
UNIX Systém souborů © Milan Keršláger
UNIX 5. Přístupová oprávnění v Unixu
NÁZEV ŠKOLY:SOŠ Net Office, spol. s r.o. Orlová Lutyně
Bezpečnostní technologie I
Počítačová bezpečnost Cvičení 2: Procesy a oprávnění
UNIX 5. Přístupová oprávnění
Vlastnosti souborů Jaroslava Černá.
Operační systémy Soubory a adresáře
Operační systémy - úvod
Soubor Soubor v informatice označuje pojmenovanou sadu dat uloženou na nějakém datovém médiu, se kterou lze pracovat nástroji operačního systému jako.
UNIX 6. Soubory a adresáře
Počítačová bezpečnost 2. Bezpečnost v OS
Souborové systémy 2 Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Překladače Uživatelé a skupiny v Unixu
Operační systémy 9. Spolupráce mezi procesy
UNIX 5. Přístupová oprávnění
SOUBOR Souborový systém (anglicky file system) je v informatice označení pro způsob organizace dat ve formě souborů (a většinou i adresářů) tak, aby k.
Informatika pro ekonomy přednáška 8
Linux-příkazový řádek
Správa disků
Základní příkazy OS UNIX (1)
TELNET, FTP.
Systém souborů 1.
Souborové systémy 1 Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Transkript prezentace:

UNIX 5. Přístupová oprávnění v Unixu Obsah: tradiční unixová oprávnění, ACL speciální oprávnění (SUID, SGID, sticky bit) atributy, rozšířené atributy © Milan Keršláger http://www.pslib.cz/ke/slajdy 9.3.2011 http://creativecommons.org/licenses/by-nc-nd/3.0/

Tradiční unixová oprávnění velmi jednoduchá v době vzniku Unixu málo výkonné počítače (1969) jde o rychlost souborového systému (FS – filesystem) žádná dědičnost, vše na konkrétní adresář, soubor ke čtení ze souboru jsou nutná metadata metadata jsou v i-node, který obsahuje i oprávnění využijeme data, která stejně musíme načíst → efektivní „svatá trojice“ – jednotně pro soubory i adresáře 3 druhy: čtení, zápis, spuštění (Read, Write, eXecute) 3 cíle: vlastník, skupina, ostatní

Význam oprávnění Soubor Adresář Read (čtení) Write (zápis) eXecute (spuštění) čtení (zobrazení) obsahu souboru výpis obsahu adresáře (příkaz ls) změna obsahu adresáře (vytvoření, smazání a přejmenování položek) zápis do souboru (změna obsahu) vstup do adresáře (musí být i ve všech nadřízených) spuštění (provedení) binárka, skript

Uplatňování oprávnění řízení přístupu podle modelu DAC uživatel má definováno UID a GID (těch i více) objekty oprávnění pro vlastníka, skupinu a ostatní uplatňují se jen nejkonkrétnější oprávnění jsem-li majitel → práva pro vlastníka patřím do skupiny, ale nejsem majitel → pro skupinu nejsem ani vlastník, ani skupina → práva pro ostatní POZOR: (!!!) žádný (!!!) průnik ani sjednocení atp.

Zobrazování oprávnění pro objekty (soubor, adresář) zobrazuji: tři trojice oprávnění (Read, Write, eXecute) vlastník, skupina, ostatní rwx rwx rwx ve výpisu musí být k objektu vypsán: vlastník skupina

ls -l typ objektu počet odkazů -rw-rw-r-- 1 huzva www 801512 led 22 2009 seznam.txt tři trojice oprávnění název skupina čas poslední změny obsahu vlastník délka Typ vypsaného objektu: - → obyčejný soubor d → adresář (directory) b → blokové zařízení (block) c → znakové zařízení (char) p → roura (pipe) s → soket Počet odkazů je počet jmen (v adresářích), které odkazují na daný objekt. Souvisí s pevnými odkazy („hardlink“). U adresářů se započítává odkaz z vnitřku samotného adresáře (tj. dvě tečky „..“) a další případně obsažené podadresáře.

Příklad výstupu $ ls -ld /dev/ttyS0 /dev/sda web.tgz vyuka brw-r----- 1 root disk 8, 0 bře 19 06:28 /dev/sda crw-rw---- 1 root uucp 4, 64 bře 19 06:28 /dev/ttyS0 drwxrwxr-x 4 rene www 4096 pro 18 07:18 vyuka -rw-r--r-- 1 rene rene 550258 lis 7 2008 web.tgz $ stat ucitele.txt File: `ucitele.txt' Size: 2280 Blocks: 16   IO Block: 4096 regular file Device: fd00h/64768d Inode: 9132416 Links: 1 Access: (0644/-rw-r--r--) Uid: (500/huzva) Gid: (500/huzva) Access: 2009-10-01 09:17:19.000000000 +0200 Modify: 2008-08-29 08:31:50.000000000 +0200 Change: 2008-08-29 08:31:57.000000000 +0200

Oktalový zápis oprávnění každá trojice oprávnění se dá zapsat oktalově velmi často využíváno součet vah: rwx → 7 → všeobecně přístupný (skript, adresář) rw- → 6 → čtení a zápis (textový soubor) r-x → 5 → binárka, adresář s programy r-- → 4 → jen čtení (textový soubor) --x → 1 → binárka, nelze použít debugger 4 2 1 r w x

Nastavení oprávnění u + r g - w o = x příkazem chmod využití oktalového zápisu oprávnění chmod 775 /bin/bash rwxrwxr-x chmod 664 index.html rw-rw- r-- symbolický zápis oprávnění místo oktalového příklad: u+r, u+rw, g-x, o=r, o= u + r g - w o = x

umask slouží k implicitnímu nastavení oprávnění pro nové soubory a adresáře určuje, která oprávnění se mají ODEBRAT výsledek je tedy rozdíl 777 - umask u adresáře je oprávnění x všude nastaveno příklad: umask → výpis aktuálního umask umask 022 → soubor bude mít 644, adresář 755 umask 006 → soubor bude mít 661, adresář 771

Další oprávnění speciální oprávnění výjimky ze standardního chování systému řeší situace, které tradiční oprávnění řešit neumí standardní součást unixových systémů ACL (dle POSIXu) rozšíření standardních oprávnění trojice (rwx) pro další uživatele i skupiny MS Windows vlastní ACL (jemnější) Linux ACL vážně až dnes (v RHEL 4 od roku 2005) Samba oprávnění mapuje (redukuje), připravuje vlastní

ACL – Access List rozšíření tradičních unixových oprávnění ale i na složitější požadavky stačí tradiční + speciální využívá tradiční trojici oprávnění (rwx) pomocí ACL může mít objekt další klasická oprávnění pro další jednotlivé uživatele i skupiny definováno normou POSIX implementace v Linuxu existuje dlouho, ale problémy – vyřešeno 2005 současné distribuce mají ACL implicitně zapnuto ACL se dá selektivně aktivovat pro jednotlivé FS

getfacl slouží pro zjištění ACL (standardní výpis jen „+“) $ ls -ld /home/huzva drwx--x---+ 48 huzva huzva 4096 bře 26 07:37 /home/huzva $ getfacl /home/huzva getfacl: Removing leading '/' from absolute path names # file: home/huzva # owner: huzva # group: huzva user::rwx user:apache:--x group::--x mask::--x other::--- tradiční oprávnění (vlastník) uživatel zapsaný v ACL tradiční oprávnění (skupina) maska práv ACL tradiční oprávnění (ostatní)

setfacl slouží k nastavení ACL setfacl -m u:apache:rw názevsouboru m → změna nastavení ACL u – pro uživatele m – maska g – pro skupinu o  – ostatní x → odebrat konkrétní ACL b → odebrání všech ACL (zůstanou jen tradiční) maska je sjednocením všech oprávnění tj. uživatelé i skupiny pokud nějaké chybí, ve výsledku se neuplatní

Speciální oprávnění tradiční součást unixových systémů mění standardní chování systému (s oprávněním) SUID bit ve výpisu je místo x u práv vlastníka písmeno s SGID bit ve výpisu je místo x u práv skupiny písmeno s sticky bit ve výpisu je místo x u práv ostatních písmeno t Pozn.: Je-li písmeno velké, překryté oprávnění není přítomno.

SUID bit standardní chování: nový proces přebírá oprávnění od svého rodiče na binárce programu je nastaven SUID bit: spuštěný proces běží s právy vlastníka binárky může to být jakýkoliv uživatel, často ale root při chybě v SUID programu bezpečnostní problém!!! příklad: změna hesla soubor /etc/shadow běžný uživatel nepřečte program na změnu hesla je SUID root $ ls -l /etc/shadow /usr/bin/passwd -r--------. 1 root root 1753 26. bře 23.16 /etc/shadow -rwsr-xr-x. 1 root root 25464 28. led 17.12 /usr/bin/passwd

SGID bit podobné jako SUID, ale pro skupinu nový proces běží s právy skupiny vlastnící binárku příklad: skóre ve hře skóre hry je pro všechny uživatele v souboru hra i uživatelé mohou měnit → dá se fixlovat soubor se skóre dáme skupině games zápis bude možný pouze pro skupinu games (664) program se hrou bude SGID games spuštěná hra skóre zapíše, ale uživatel sám ne $ ls -l /usr/bin/gnomine /var/lib/games/gnomine.Small.scores -r-xr-s--x 1 root games 111784 bře 11 2009 /usr/bin/gnomine -rw-rw-r-- 1 games games 95 bře 17 11:10 /var/lib/games/gnomine.Small.scores

Procesy se SUID a SGID bitem při spuštění dojde ke specifickému nastavení RUID, RGID: na UID uživatele, který proces spustil EUID, EGID: nastaveno podle binárky tj. podle vlastníka (je-li nastaven SUID) a skupiny (SGID) za normálních okolností EUID=RUID, EGID=RGID za běhu lze volat setuid() a setgid() slouží k dočasné změně EUID původní hodnoty uloženy do SavedUID, SavedGID využívají démoni ke zvýšení bezpečnosti privil. procesů různé unixové systémy mají drobné odlišnosti Linux má navíc FSUID, FSGID pro přístup k FS

SGID bit pro adresáře SGID má speciální význam pro adresář založíme-li v adresáři nový objekt, nebude patřit primární skupině uživatele, který ho založil, ale bude patřit skupině, která je SGID v tomto adresáři používá se na společné projekty více uživatelů (uživatelé jsou ve stejné skupině) kombinujeme s umask nastaví-li si uživatel vhodný umask, nebude bránit uživatelům ve stejné skupině v modifikaci souborů, které on sám vytvoří (nebude smazáno právo w)

Sticky bit problém adresáře /tmp všichni do něj mají právo zápisu procesy do něj odkládají dočasné soubory právo zápisu však je i právem mazat, přejmenovat různí uživatelé si tak navzájem mohou škodit na adresáři je nastaven sticky bit vytváření není nijak omezeno mazání a přejmenování může provést jen majitel daného objektu (souboru, adresáře) $ ls -ld /tmp drwxrwxrwt. 88 root root 12288 27. bře 10.38 /tmp

Atributy nastavení specifických vlastností objektů FS interpretuje OS (pro jednotlivé soubory, adresáře) v různých systémech různě (Linux, OS/X, BSD, Win) společné atributy souborů unixových systémů i – immutable → nelze smazat ani změnit obsah a – append only → lze jen přidávat (logy) další atributy (Linux) synchronní operace, potlačení atime, nezálohovat, komprimováno, žurnálování dat, bezpečné mazání, ... příkazy: lsattr, chattr

Rozšířené atributy „poznámky“ k objektům FS (systému souborů) nejsou pevně dány OS nebo FS, typicky: název=hodnota → celé zapsáno jako řetězec systémové rozšířené atributy např. definice nastavení pro pro SELinux uživatelské rozšířené atributy využívají aplikace (kontrolní součet souboru, asociovaná aplikace, použité kódování, ...) typicky omezená velikost, sdruženo s metadaty v extrémním případě až do max. velikosti souboru (fork)