Identita uživatele. predn_04.odt 28.03.2007 15:47:03 1



Podobné dokumenty
Identita uživatele (procesu)

Přednáška 5. Identita uživatelů, procesů a souborů. Přístupová práva a jejich nastavení. Úvod do Operačních Systémů Přednáška 5

Identita uživatelů, přístupová práva. Linux

Administrace OS Unix. Úvodní informace Principy administrace Uživatelé

Otázka 28 Zadání Identita uživatelů, procesů a souborů v OS Unix, přístupová práva a jejich nastavení

Základní příkazy pro práci se soubory

Přednáška 2. Systémy souborů OS UNIX. Nástroje pro práci se souborovým systémem. Úvod do Operačních Systémů Přednáška 2

Linux-příkazový řádek

Univerzita Pardubice Fakulta elektrotechniky a informatiky ISOSY Matěj Trakal

LINUX SOUBORY. Zadejme příkaz ls l! V této lekci se odrazíme od dlouhého výpisu příkazu ls a uvidíme, kam nás to zanese. SPŠ Teplice - 3.

LINUX uživatelské účty (1)

Úvod do Operačních Systémů

Systém souborů (File System)

UŽIVATEL, SKUPINA, PROCES

Příkaz find, práce s procesy a úlohami, plánování úloh

Systém souborů (file system, FS)

Přednáška 8. Proměnné. Psaní a ladění skriptů. Parametry skriptu. Vstup a výstup. Konfigurační soubory shellu. Úvod do Operačních Systémů Přednáška 8

Základy operačního systému LINUX část I

Architektura systému GNU/Linux. Bohdan Milar

Zprovoznění nových userů pro pure-ftpd server (s privátními adresáři)

Úvod do Operačních Systémů

Proměnné a parametry. predn_08.odt :00:38 1

Práva a jejich použití, screenujeme, pracujeme v GNU/Linuxu

A7B38UOS Úvod do operačních systémů. 6. Cvičení. Příkazy sed a awk

C2115 Praktický úvod do superpočítání

LINUX ADRESÁŘOVÁ STRUKTURA. Co to, hrome, je? V této lekci se budeme brouzdat adresáři. SPŠ Teplice - 3.V

Základní příkazy UNIXu (Linuxu)

Operační systém GNU/Linux

Úvod do Unixu. man: příkaz pro zobrazení nápovědy k danému příkazu, programu (pokud je k dispozici), např. man cp. pwd: vypíše cestu k aktuální pozici

Úvod. unx-predn_01-uvod.odt :13:43 1

Unix je víceuživatelský a víceúlohový OS

PSK3-3. Základní příkazy. Zápis cesty

Přednáška 7. Celočíselná aritmetika. Návratový kód. Příkazy pro větvení výpočtu. Cykly. Předčasné ukončení cyklu.

2.2 Typy súborov v OS Unix

Úvod, jednoduché příkazy

PSK3-4. Přístupová práva. setfacl z balíčku acl.)

Nastavení zabezpečení

KAPITOLA 3. Práva a co s nimi. Práva přístupu k souborům, adresářům

Lekce 25 IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

Poslední aktualizace: 14. května 2013

Charakteristika operačního systému GNU/Linux

Pár odpovědí jsem nenašla nikde, a tak jsem je logicky odvodila, a nebo jsem ponechala odpověď z pefky, proto je možné, že někde bude chyba.

PV157 Autentizace a řízení přístupu. Řízení přístupu

Pro všechny příkazy jsou k dispozici podrobné manuálové stránky, proto zde. find adresář -name "maska_souboru" [-print] [-exec proces {} \;]

Úvod do Linuxu SŠSI Tábor 1

Střední odborná škola a Střední odborné učiliště, Hořovice

more Program se zastaví vždy po vypsání jedné stránky textu. Ukončení Ctrl+C less Umožňuje pohybovat se v souboru dopředu i dozadu.

Nastavení složek systému Atollon Server Platform

Přednáška 6. Procesy a vlákna (vznik, stavy, atributy). Signály. Nástroje pro práci s procesy a vlákny. Úvod do Operačních Systémů Přednáška 6

Manuál. k aplikaci WD FileAgent

PŘÍKAZY PRÁCE SE SOUBORY

PŘÍKAZY OVLÁDÁNÍ SHELLU

Úvod do Operačních Systémů

1 Tabulky Příklad 3 Access 2010

Úvod do Operačních Systémů

Základní příkazy OS UNIX

Cvičení 3. Plán. Procesy. procesy, jobs Find Wildcards Příklad uživatelé. ZOS 2005, L. Pešička. eryx4> ps x

Úvod do UNIXu. Okruh č. 1 - přihlášení, historie, práce se soubory. Jakub Galgonek. verze r1. inspirováno materiály Davida Hokszy

Téma 2: Práce s commands. Téma 2: Práce s Commands

Příkazová řádka. predn_02.odt :55:55 1

Pro označení disku se používají písmena velké abecedy, za nimiž následuje dvojtečka.

Skripty - úvod. Linux - skripty 2

Cvičení 2. Přesměrování vstupu a výstupu. Posloupnost příkazů. Příkazy pro informaci o uživatelích

Střední odborná škola a Střední odborné učiliště, Hořovice

konec šedesátých let vyvinut ze systému Multics původní účel systém pro zpracování textů autoři: Ken Thompson a Denis Ritchie systém pojmnoval Brian

ZOS CV1 Základy operačních systémů

Úvod do Operačních Systémů

Měřící systém se vzdáleným přístupem. Databáze

Úvod do Operačních Systémů

ZOS OPAKOVÁNÍ. L. Pešička

Operační systémy. Cvičení 1: Seznámení s prostředím

Bezpečn č os o t t dat

Nastroje na zpracovani textu:

Se SELinuxem bezpečně

Nainstaloval jsem a jak dál? Michal Turek

Průvodce aplikací FS Karta

Úloha 3 editor a skripty. připojte se vzdáleně na dray6.feld.cvut.cz heslo získáte na adrese

WNC::WebNucleatCreator

Dokumentace k produktu IceWarp Notifikační nástroj

PROGRAMOVÁNÍ V SHELLU

2. přednáška pro začátečníky

Př ihlaš ova ní do IS etešty př eš JIP

Administrace Unixu a sítí

Architektura systému. Tomáš Borland Valenta

Jak spustit PC Fand na 64bit Windows - VdosPlus instalace

UŽIVATELSKÁ PŘÍRUČKA UČITEL

APS Web Panel. Rozšiřující webový modul pro APS Administrator. Webové rozhraní pro vybrané funkce programového balíku APS Administrator

1. Podmínky chodu aplikace

Úvod do UNIXu. Jirka Boháč Gymnázium Jaroslava Seiferta 2003/2004

Rozšíření ksh vůči sh při práci s proměnnými

Regulární výrazy a grep

VISUAL BASIC. Práce se soubory

1 Administrace systému Moduly Skupiny atributů Atributy Hodnoty atributů... 4

Paralelní výpočty na clusteru KMD

Tomáš Borland Valenta

DŮLEŽITÉ INFORMACE, PROSÍM ČTĚTE!

Bezpečnostní kontejnery a přístupová práva v HelenOS

Úvod do UNIXu. Libor Forst

Informační manuál PŘIHLÁŠENÍ DO SÍTĚ NOVELL (ZAMĚSTNANEC, DOKTORAND)

TAOS321. Administrace. příručka správce systému. informační terminál systému JSVV

Transkript:

Identita uživatele predn_04.odt 28.03.2007 15:47:03 1

Identita uživatele (procesu) Vnější identita - identita uživatele Je tvořena přihlašovacím jménem a ověřována např. heslem Slouží k: přihlášení do systému pojmenování domovského adresáře jako jméno pro mail... Pravidla pro tvorbu jmen: 8 znaků obvykle malá písmena predn_04.odt 28.03.2007 15:47:03 2

Vnitřní identita - identita procesu, souboru Číselná identifikace uživatele a skupiny (uid, gid) sloužící k autorizaci procesu uvnitř systému (ověření práv k provádění operací se soubory a práv ke spouštění jiných procesů). Každý proces má: uid (real, efective, saved) primární gid (real, efective, saved) Proces může mít přidělena další tzv. sekundární gid Každý soubor má: uid gid predn_04.odt 28.03.2007 15:47:03 3

Změna identity procesu: exec: RealUID SavedUID EfectiveUID proveditelný soub. s S(et)UID UID RealUID SavedUID EfectiveUID EUID=0: RUID, EUID na cokoliv EUID<>0: EUID na RUID nebo SavedUID predn_04.odt 28.03.2007 15:47:03 4

Vztah mezi identitami je definován: soubory v /etc: passwd: shadow, group jmennými službami - umožňují centralizaci správy (nejen) uživatelů: nis (příkazy yp...) nis+ (příkazy nis...) ldap predn_04.odt 28.03.2007 15:47:03 5

Soubor /etc/passwd: Slouží k překladu uid na jméno a naopak a k uložení informací nutných pro přihlášení uživatele. Pro každého uživatele jedna řádka rozdělená znaky : (dvojtečka)na sedm položek: přihl.jméno:krypt.heslo:uid:gid:úplné_jméno:dom.adresář:shell Příklad: $ cat /etc/passwd root:x:0:1:super-user:/root:/sbin/sh daemon:x:1:1::/: bin:x:2:2::/usr/bin: sys:x:3:3::/: listen:x:37:4:network Admin:/usr/net/nls: nobody:x:60001:60001:nobody:/: noaccess:x:60002:60002:no Access User:/: nobody4:x:65534:65534:sunos 4.x Nobody:/: honza:x:1001:10:honza:/home/honza:/bin/ksh predn_04.odt 28.03.2007 15:47:03 6

uživatelské_jméno Max. 8 znaků, definuje ho administrátor, uživatel ho nemá právo měnít. Nesmí být tvořeno pouze velkými písmeny Nemá smysl přiřadit stejné jméno dvěma uživatelům (druhý se nikdy nepřihlásí) Po přihlášení lze zobrazit: jako hodnotu proměnné LOGNAME příkazem whoami příkazem who am i Příklad: $ echo $LOGNAME honza $ who am i honza pts/3 Oct 21 11:52 (localhost) $ whoami honza $ predn_04.odt 28.03.2007 15:47:03 7

uživatelské_heslo Max. 8 znaků (většinou). Mění se příkazem passwd uživatel musí znát původní heslo, root ne uživatel musí dodržovat pravidla (délka, znaky), root ne. Uloženo v kryptovaném tvaru v /etc/passwd resp. /etc/shadow Kryptování je jednocestné: vstupní heslo (max. 8 znak ů) sůl (2 znaky) crypt výstupní heslo (2+11 znak ů) predn_04.odt 28.03.2007 15:47:03 8

uid - identifikační číslo uživatele Přidělováno administrátorem. Celé číslo (dříve max. 65535, nyní i více ale nedoporučuje se). uid=0 definuje tzv privilegovaného uživatele (obvykle se jménem root) Pod tímto uid bude po přihlášení uživatele spuštěn jeho shell (7.položka) Různí uživatelé by měli mít různá uid. gid - identifikační číslo primární skupiny Přidělováno administrátorem. Celé číslo, dříve max. 65535, nyní i více ale nedoporučuje se Pod tímto gid bude po přihlášení uživatele spuštěn jeho shell. predn_04.odt 28.03.2007 15:47:03 9

úplné_jméno Podrobnější popis uživatele Posílán jako úplné jméno v mailu domovský_adresář Adresář ze kterého je odstartován přihlašovacíshell. Je na něj nastavena proměnná HOME shell Absolutní cesta k příkazu, který je spuštěn po řádkovém přihlášení uživatele. Obvykle shell, ale může být i jiný program. predn_04.odt 28.03.2007 15:47:03 10

Soubor /etc/group Slouží k překladu gid na jméno skupiny a naopak a k definici tzv. sekundárních skupin. Pro každou skupinu jedna řádka rozdělena znaky : (dvojtečka) na čtyři pole: jméno_skupiny:heslo_skupiny:gid:seznam_uživatelů $ cat /etc/group root::0:root other::1: bin::2:root,bin,daemon... nuucp::9:root,nuucp staff::10: daemon::12:root,daemon sysadmin::14:honza nobody::60001: noaccess::60002: nogroup::65534: $ predn_04.odt 28.03.2007 15:47:03 11

jméno_skupiny Pravidla jako pro jméno uživatele. Uživatel se může přihlásit i když jeho primární skupina (z /etc/passwd) není v /etc/group heslo_skupiny Nebývá obvykle implementováno (je prázdné). gid Celé číslo podobně jako uid. seznam_uživatelů 1. Uvedení uživatelé mají právo skupinového přístupu k souborům této skupiny (tato skupina je jejich sekundární skupinou). 2. Uvedení uživatelé mají právo příkazem newgrp si nastavit tuto skupinu jako primární. predn_04.odt 28.03.2007 15:47:03 12

Výpis a změna vnější identity Identitu definuje administrátor, uživatel si může měnit heslo příkazem passwd Kromě příkazů whoami a who am i vnější identitu zobrazují příkazy: groups who last ls -l Příklad: root@solaris/root>whoami root root@solaris/root>who am i root pts/2 Oct 24 09:46 (dilna) root@solaris/root>last -3 root pts/2 dilna Wed Oct 24 09:46 still logged in honza pts/2 dilna Sun Oct 21 21:27-02:11 (04:43) honza pts/3 localhost Sun Oct 21 14:52-19:27 (04:34) root@solaris/root>who root pts/2 Oct 24 09:46 (dilna) root@solaris/root> predn_04.odt 28.03.2007 15:47:03 13

Výpis a změna vnitřní identity Aktuální uid a gid lze zobrazit příkazem id ( id -a ), pcred pid (Solaris) Pokud jsou efektivní uid resp. gid různá od uid resp. gid, zobrazí se také (id -a). Identita se nastavuje při startu procesu nebo mění na žádost procesu (viz dříve). Obvykle jsou uid a euid resp. gid a egid stejná a dědí se z rodičovského procesu. Neprivilegovaný proces může změnit identitu jen voláním programu s suidbitem. Při přihlášení (login, dtlogin, sshd,...) mění vše. Programem newgrp se mění gid a egid. U programů s nastavenýmsuid bitem se mění euid. U programů s nastavenýmsgid bitem se mění egid. Pozor! suid/sgid bit je nebezpečný pro skripty. predn_04.odt 28.03.2007 15:47:03 14

Příkaz su su [-] [přihlašovací_jméno] Startuje nový shell pod novou identitou. Původní shell nekončí. Po odhlášení z su se v něm pokračuje. Je-li su volán uživatelem, vyžaduje heslo, od roota ne. Je-li uveden přepínač -, provede přihlašovací skripty (nastaví prostředí). Je-li vynecháno přihlašovací jméno, doplní se jméno root Příkaz newgrp newgrp sekundární_skupina Nahrazuje původní shell jiným shellem s novou skupinovou identitou. Použití příkazu je omezeno (viz dále u popisu souboru /etc/group) predn_04.odt 28.03.2007 15:47:03 15

Příklad: root@solaris/root>id uid=0(root) gid=1(other) root@solaris/root>su - honza Sun Microsystems Inc. SunOS 5.8 Generic February 2000 $ id uid=1001(honza) gid=10(staff) $ id -a uid=1001(honza) gid=10(staff) groups=10(staff),14(sysadmin) $ groups staff sysadmin $ newgrp sysadmin $ id uid=1001(honza) gid=14(sysadmin) $ newgrp staff $ id uid=1001(honza) gid=10(staff) predn_04.odt 28.03.2007 15:47:03 16

Vlastnictví souborů a přístupová práva Každý soubor/adresář má v i-uzlu: vlastníka (uid) a skupinu (gid). přístupová práva čtení (read), zápis (write) a provádění (execute) pro vlastníka (user), skupinu (group) a ostatní (other): Tyto informace vypisuje příkaz ls -l: přístupová práva pro vlastníka, skupinu, ostatní drwxr-xr-x 2 honza staff 512 Oct 14 22:32 d1 drwx------ 2 root other 512 Oct 21 15:32 dir -rw-r--r-- 1 honza staff 0 Mar 4 2001 konec typ souboru -, d, c, b, p vlastník (uid) skupina (gid) predn_04.odt 28.03.2007 15:47:03 17

Význam přístupových práv: právo význam u souboru význam u adresáře r číst obsah souboru (cat) vypisovat obsah adresáře (ls) w měnit obsah souboru (vi) zakládat a rušit soubory v adresáři (rm) x spouštět soubor jako program nastavovat a procházet adresář (cd) predn_04.odt 28.03.2007 15:47:03 18

Postup při vyhodnocení práv: euid procesu = 0 euid procesu = uid souboru + + přístup povolen - egid procesu resp. sek. gid = gid souboru - použij příst. práva ostatní použij příst. práva vlastníka + použij příst. práva skupiny predn_04.odt 28.03.2007 15:47:03 19

Změna přístupových práv Právo měnit přístupová práva má pouze vlastník souboru a root Přístupová práva se mění příkazem chmod Symbolická změna přístupových práv: chmod [-R] seznam_změn seznam_souboru seznam_změn je seznam jedné nebo více změn oddělených čárkami ve tvaru kde: <kdo><jak><co> <kdo> je jedno nebo více z: user, group, other, all <jak> je právě jedno z: +, -, = <co> je jedno nebo více z: r, w, x, s, t Příklad: $ ls -l t1 -rwxr-xr-x 1 honza staff 21 Mar 4 2001 t1 $ chmod u-w,go=w,a-x t1 $ ls -l t1 -r---w--w- 1 honza staff 21 Mar 4 2001 t1 predn_04.odt 28.03.2007 15:47:03 20

Absolutní (oktalová) změna přístupových práv: chmod [-R] kód seznam_souboru kde kód jsou oktalově vyjádřená přístupová práva. Příklad: $ ls -l t1 -r---w--w- 1 honza staff 21 Mar 4 2001 t1 $ chmod 127 t1 $ ls -l t1 ---x-w-rwx 1 honza staff 21 Mar 4 2001 t1 $ Nejčastější změny přístupových práv $ ls -l t[12] ---x-w-rwx 1 honza staff 21 Mar 4 2001 t1 -rw-r--r-- 1 honza staff 0 Oct 6 21:21 t2 $ chmod 755 t1 $ chmod +x t2 $ ls -l t[12] -rwxr-xr-x 1 honza staff 21 Mar 4 2001 t1 -rwxr-xr-x 1 honza staff 0 Oct 6 21:21 t2 predn_04.odt 28.03.2007 15:47:03 21

Přístupová práva nově zakládaných souborů Jsou definována pomocí tzv. masky přístupových práv. Hodnota masky je součástí procesu (podobně jako uid a gid) a je dědičná. Hodnotu masky lze vypsat a případně měnit příkazem umask. Přístupová práva vzniknou množinovým rozdílem výchozí hodnoty a masky. Výchozí hodnota je 666 pro soubory a 777 pro adresáře. maska soubor adresář poznámka 000 666 777 odpovídá výchozí hodnotě Nebezpečné! 022 644 755 obvyklé nastavení 027 640 750 vyšší bezpečnost 077 600 700 největší restrikce 066 600 711 kompromisní řešení predn_04.odt 28.03.2007 15:47:03 22

Příklad: $ umask 022 $ mkdir a1 $ touch s1 $ umask 026 $ mkdir a2 $ touch s2 $ ls -ld [as][12] drwxr-xr-x 2 honza sysadmin 512 Oct 21 18:27 a1 drwxr-x--x 2 honza sysadmin 512 Oct 21 18:27 a2 -rw-r--r-- 1 honza sysadmin 0 Oct 21 18:27 s1 -rw-r----- 1 honza sysadmin 0 Oct 21 18:28 s2 $ predn_04.odt 28.03.2007 15:47:03 23

Změna vlastnictví souboru Právo měnit má pouze root (dříve i vlastník, to je ale bezpečnostní problém). Vlastnictví (i skupinové) lze měnit příkazem chown, skupinové příkazem chgrp. Volání: chown [-R] nový_vlastník[:nová_skupina] seznam_souborů chgrp [-R] nová_skupina seznam_souborů kde -R znamená rekurzivní změnu do podadresářů Příklad: root@solaris/home/honza/dir>ls -la total 4 drwx------ 2 root other 512 Oct 21 19:27. drwxr-xr-x 6 honza staff 512 Oct 21 18:28.. -rw-r--r-- 1 root other 0 Oct 21 19:27 s root@solaris/home/honza/dir>chown -R honza:staff.;ls -la total 4 drwx------ 2 honza staff 512 Oct 21 19:27. drwxr-xr-x 6 honza staff 512 Oct 21 18:28.. -rw-r--r-- 1 honza staff 0 Oct 21 19:27 s predn_04.odt 28.03.2007 15:47:03 24

Speciální přístupová práva právo nastave ní význam u souboru význam u adresáře s(uid) 4000 4000 u+s program má po spuštění euid vlastníka programu - s(gid) 2000 l(ock) 2000 g+s program má po spuštění egid vlastníka programu (je-li x pro skup.) soubor se povinně zamyká (není-li x pro skupinu) nové soubory v adresáři dědí gid z adresáře, nikoliv z gid procesu. Toto právo nelze nastavit absolutním způsobem! s(t)icky s(t)icky 1000 o+t - není-li nastaven x pro ostatní, souboru není měněn čas přístupu (swap) soubory v adresáři s právy rwxrwxrwt smí zakládat každý, ale rušit smí pouze vlastník nebo root nebo uživatel s právem zápisu do souboru predn_04.odt 28.03.2007 15:47:03 25

Příklad: root@solaris/home/honza>chmod 7000 t1 d1; ls -ld [td]1 d--s-----t 2 honza staff 512 Oct 14 22:32 d1 ---S--l--T 1 honza staff 21 Mar 4 2001 t1 root@solaris/home/honza>chmod 7777 t1 d1; ls -ld [td]1 drwsrwxrwt 2 honza staff 512 Oct 14 22:32 d1 -rwsrwsrwt 1 honza staff 21 Mar 4 2001 t1 root@solaris/home/honza>chmod g+s d1;ls -ld [td]1 drwsrwsrwt 2 honza staff 512 Oct 14 22:32 d1 -rwsrwsrwt 1 honza staff 21 Mar 4 2001 t1 root@solaris/home/honza> predn_04.odt 28.03.2007 15:47:03 26

Seznamy pro řízení přístupu (Access Control List, ACL) Rozšíření přístupových práv po vzoru MS Vyžadováno při zvýšené bezpečnosti Nestandardní a proto nekompatibilní mezi implementacemi. Není vždy implementováno Příklad pro Solaris: $setfacl -s u::7,g::5,o:1,m:4,g:sysadmin:6,u:honza:7 t1 $ls -l t1 -rwsr-l--t+ 1 root staff 21 Mar 4 2001 t1 $getfacl t1 # file: t1 # owner: root # group: staff user::rwx user:honza:rwx #effective:r-- group::r-x #effective:r-- group:sysadmin:rw- #effective:r-- mask:r-- other:--x predn_04.odt 28.03.2007 15:47:03 27