OPERÁCIÓS RENDSZEREK, PROGRAMOZÁSI ALAPISMERETEK. Répási Tibor dr. Vadász Dénes - Wagner György Miskolci Egyetem HEFOP-3.3.



Hasonló dokumentumok
Operációs rendszerek. 3. gyakorlat: UNIX rendszergazdai ismeretek 3

Operációs rendszerek. A Windows NT felépítése

UNIX / Linux rendszeradminisztráció

12. tétel. Lemezkezelés

KETTŐS KÖNYVELÉS PROGRAM CIVIL SZERVEZETEK RÉSZÉRE

Bevitel-Kivitel. Eddig a számítógép agyáról volt szó. Szükség van eszközökre. Processzusok, memória, stb

Hálózati adminisztráció Linux (Ubuntu 8.04) 12. gyakorlat

Az informatika alapjai. 10. elıadás. Operációs rendszer

TANÚSÍTVÁNY. tanúsítja, hogy a Polysys Kft. által kifejlesztett és forgalmazott

Integrált ügyviteli rendszer: Kettős könyvelés modul

INFORMATIKAI ALAPISMERETEK

Lemezkezelés, állományrendszerek

komplex védelem Letöltő szoftver ismertető V1.61 Azonosító: EP Budapest, február

5. modul - Adatbázis-kezelés

Tanúsítási jelentés. Hung-TJ

FELHASZNÁLÓI ÚTMUTATÓ

Az időhöz kötődő parancsok

Hálózatkezelés: Távoli elérés szolgáltatások - PPP kapcsolatok

DB2 Connect Personal Edition telepítése és beállítása

Kétszemélyes négyes sor játék

ProCOM GPRS ADAPTER TELEPÍTÉSI ÉS ALKALMAZÁSI ÚTMUTATÓ. v1.0 és újabb modul verziókhoz Rev

Elektronikus ügyintézés Az Ügyfélkapu

DUNAÚJVÁROSI FŐISKOLA

Informatika szintmérő-érettségi tételek február

Közlekedés gépjárművek elektronikája, diagnosztikája. Mikroprocesszoros technika. Memóriák, címek, alapáramkörök. A programozás alapjai

Az Ön kézikönyve HP COMPAQ DC5700 MICROTOWER PC

P-GRADE fejlesztőkörnyezet és Jini alapú GRID integrálása PVM programok végrehajtásához. Rendszerterv. Sipos Gergely

Ingrid Signo Felhasználói kézikönyv. Pénztári használatra

II. év. Adatbázisok és számítógépek programozása

Rendelkezésre állás Magas szintű rendelkezésre állás bemutatása

EUROFLEX-33 ESEMÉNY NYOMTATÓ. -felhasználói és telepítői leírás-

Rendszerfelügyelet Logikai partíciók

Biztonság. Felhasználói útmutató

SA-GPCOM. Telepítési leírás. Ipari GPRS átjelző. Dokumentum verzió szám: v1.0 HUN. SA-GPCOM telepítési leírás

PROGRAMOZÓI KÉZIKÖNYV

A mai program OPERÁCIÓS RENDSZEREK. A probléma. Fogalmak. Mit várunk el? Tágítjuk a problémát: ütemezési szintek

Welcome3 Bele pteto rendszer

Intelligens járművédelem. Biztonság és kényelem. Használati utasítás

Operációs rendszerek. 3. előadás Ütemezés

Számítógép kártevők. Számítógép vírusok (szűkebb értelemben) Nem rezidens vírusok. Informatika alapjai-13 Számítógép kártevők 1/6

Minden jog fenntartva, beleértve bárminemű sokszorosítás, másolás és közlés jogát is.

Mérő- és vezérlőberendezés megvalósítása ARM alapú mikrovezérlővel és Linux-szal

21. szám 124. évfolyam július 3. TARTALOM. Utasítások 48/2009. (VII. 3. MÁV Ért. 21.) VIG számú

INFORMATIKAI ALAPISMERETEK

ÁLTALÁNOS SZERZŐDÉSI FELTÉTELEK

Üzleti kritikus alkalmazások Novell Open Enterprise Serveren

GS1 Logger for Staff. Felhasználói kézikönyv. Verzió 2.3, GS1 Logger Staff Felhasználói kézikönyv

Használati útmutató. Biztonsági előírások. Tartalom. Szimbólumok. A műszer felhasználási célja. Tiltott használat. magyar

Bánsághi Anna Bánsághi Anna 1 of 54

PR402EN.doc. PR402 v1.0 Egyajtós beléptetõ rendszer FIRMWARE VERZIÓ Telepítési útmutató

PROGRAMOZÓI KÉZIKÖNYV

A Horde keretrendszer és az IMP Webmail rendszer

10193/12 KH/md DG E2

Operációs rendszerek

HP ProtectTools Felhasználói útmutató

Magyar. APC Smart-UPS SC. 1000/1500 VA 110/120/230 Vac. Toronykivitelű vagy 2U magas, RACK-be szerelhető szünetmentes tápegységhez

Novell Nterprise Branch Office: a távoli iroda felügyeletének leegyszerűsítése

Bevezetés a Symbian operációs rendszerbe

OPERÁCIÓS RENDSZEREK I. HÁTTÉRTÁRAK

8.1 Az UPS bekapcsolása A bekapcsolás sorrendje Akkumulátorról indítás... 18

Szolnoki Főiskola Szolnok

Digitális tananyag, e-learning, különbségek, definíciók

Felhasználói leírás v1.0

Computer Setup. Felhasználói útmutató

Unix alapú operációs. rendszerek ELŐADÁS CÍME. Göcs László mérnöktanár. 2. előadás. KF-GAMF Informatika Tanszék

EverLinkBusSetup. Beléptető, munkaidő nyilvántartó és parkoló rendszer konfiguráló program felhasználói leírása rendszergazdák részére

A SZEGEDI TUDOMÁNYEGYETEM INFORMATIKAI BIZTONSÁGI SZABÁLYZATA

Céginfo.hu Általános Szerződési Feltételek

OEP Betegéletút lekérdezés háziorvosok és vénytörténet lekérdezés patikák számára. API dokumentáció. verzió: 2.01

IBM Business Monitor 7. változat 5. alváltozat. IBM Business Monitor telepítési kézikönyv

M12 GSM kommunikátor Telepítői kézikönyv

Operációs rendszerek

Word 2010 magyar nyelvű változat

DUALCOM SIA IP TELEPÍTÉSI ÉS ALKALMAZÁSI ÚTMUTATÓ. V és újabb modulverziókhoz. Dokumentum verzió:

DIÁKIGAZOLVÁNY. Felhasználói dokumentáció verzió 3.7. Budapest, 2015.

Kari Adminisztrátor. Funkcionális leírás

SSL Alapú Kártyatranzakciók az Interneten. A CIB Bank Zrt. Internetes kártyaelfogadás szolgáltatás technikai dokumentációja

INFOTECHNOLÓGIA I. Operációs rendszer működése, használata

Operációs rendszerek MINB240. Bevitel-Kivitel. 6. előadás Input és Output. Perifériák csoportosításá, használat szerint

Telepítői és programozói leírás

MAGYAR POSTA BEFEKTETÉSI ZRT. e-befektetés. Felhasználói kézikönyv

Adataink biztonságos tárolása és mentése

Hallgatói adatok szolgáltatása a FIR felé

Általános áttekintés. Általános áttekintés. Általános áttekintés. Egy boot folyamat

Méréstechnika. 3. Mérőműszerek csoportosítása, Elektromechanikus műszerek általános felépítése, jellemzőik.

Az Összetett hálózatok vizsgálata elektronikus tantárgy részletes követeleményrendszere

,17, MENU TRIPOD TIMER? max. min 7,8,9

S Z Á M Í T Ó G É P E S

VHR-23 Regisztráló műszer Felhasználói leírás

Programozás III CSOMAGOK. Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek.

DGSZV-EP DIGITÁLIS GALVANIKUS SZAKASZVÉDELEM. Alkalmazási terület

Wilarm 2 és 3 távjelző GSM modulok felhasználói leírása

Fábián Zoltán Hálózatok elmélet

Ingatlanvagyon értékelés

Pénztárgép Projektfeladat specifikáció

A mikroszámítógép felépítése.

Biztonság Felhasználói kézikönyv

1 / :17

A.26. Hagyományos és korszerű tervezési eljárások

1 Rendszer alapok. 1.1 Alapfogalmak

Átírás:

OPERÁCIÓS RENDSZEREK, PROGRAMOZÁSI ALAPISMERETEK Répási Tibor dr. Vadász Dénes - Wagner György Miskolci Egyetem HEFOP-3.3.1-P-2004-06-0012 1

Tartalom Bevezetés, UNIX rendszerek gyökerei, alapfilozófiája A Linux operációs rendszer Az operációs rendszer indulása Az operációs rendszer m ködése, az SVR-init mechanizmus Felhasználók, csoportok kezelése, PAM Diszkek, diszkrendszerek alapfogalmai Több diszkes rendszerek Logikai kötetek Fájlrendszerek Hálózat Alkalmazások, felhasználói szoftverek 2

Bevezetés UNIX történelem: '60-as évek végén AT&T programozói kezdték el fejleszteni, saját céljaikra kísérleti eszköz (1971-ben az els OS, ami C nyelven íródott) késleltetett piaci bevezetés els 5 évben csak egyetemek kaphatták meg ingyen Célkit zések: id osztásos operációs rendszer több felhasználós multitask, multiprocessing egyszer, fejleszt barát hatékony 3

Bevezetés UNIX történelem a '70-es években: a Berkeley Egyetem saját disztribúciók készít (ingyenesen hozzáférhet ) növekv népszer ség egyre több UNIX-szer OS születik szabványosítások UNIX-ok ma: hivatalosan UNIX nev termék nincs! igen nagy kínálat, különböz licenszelési feltételekkel er söd szabad szoftver mozgalom, egyre több szabad OS és szoftver a leghatékonyabb OS-ek mérsékelten felhasználóbarát, nagy munka folyik ezen a téren 4

A Linux '90-es évek elején egy Finn egyetemista, Linux Torvalds önszorgalomból kezd operációs rendszer fejlesztésbe 1991 augusztus 1-én hírcsoportban hozz nyilvánosságra felhívást fejleszt knek Elsöpr sikert arat. Okai: az Intel 386 processzorra készült, ezzel az els UNIX, ami az egyre er söd és nagyon olcsó IBM PC számítógépekre készül hagyományos UNIX felépítés, amihez nagyon sok fejleszt jól ért sikeres házasság R. M. Stallmann félkész GNU operációs rendszerével szabad szoftver mivolta ingyenes hozzáférhet sége Hátrányai: nem a legkorszer bb OS technológia terjedése ellenállásba ütközik paradigma váltás kellene az IT-iparban! 5

Vizsgálatunk szempontjai: Milyen szolgáltatásokat nyújt? A Linux kernel Milyen felületeket (interfészeket) biztosít? Hogyan állítják el a kernelt, milyen programozási technológiával? A Linux kernel szolgáltatásai: Processz menedzsment Virtuális memória Másodlagos tárolók hatékony kezelése Kimenetek, bemenetek kezelése Fájlrendszer megvalósítás igen magas szint Kiterjesztett védelmi, biztonsági szolgáltatások UNIX -hoz képest Hálózati szolgáltatások Felhasználói felületek. 6

Linux szogáltatások Programozói interfész: SVR és BSD alapok, POSIX szabványnak megfelel API Felhasználói interfészek: karakteres parancsértelmez felület: bourne-shell, Korn-shell, C-shell, stb. grafikus felület: XFree86 szabad X11R6 implementáció tetsz legesen b víthet Az operációs rendszer komponenseinek el állítási módja: kernel: monolitikus, kiegészítve a modulári betöltés lehet ségével API-k: statikus és dinamikusan (un. shared object) linkelhet függvénykönyvárak 7

Linux szogáltatások a kernel szolgáltató rutinok összessége, melyeket 3 csoportba soroljuk: függvény jelleg ek: programokban használt függvényekhez hasonlóan hívható rutin, mely paramétereket kaphat és visszatérési értéket ad vissza eljáras jelleg rutinok: hívását tekintve ugyan olyan, mint a függvény, a különbség, hogy nincs visszatérési értéke. eseménykezel rutinok: ezen rutinok meghívását szoftver vagy hardver esemény (kivétel, megszakítás) váltja ki. önnállóan futó rutinok: felhasználói processzekhez hasonlóan m ködnek, valamilyen OS üzemeltetési feladatot látnak el. A UNIX kernelek a CPU -ról azt feltételezik, hogy annak legalább két privilegizáltsági üzemmódja van: kernel mód: privilegizált mód, melyben a CPU összes utasítása használható felhasználói mód: nem privilegizált, a CPU bizonyos utasításai nem hajtódnak végre (pl. I/O, memória kezel utasítások, CPU vezérl utasítások) 8

LKM - Linux kernel modulok Monolítikus kernel: a kernel összes szolgáltató rutinja egyetlen egységbe (bináris fájlba) van linkelve, a rutinok között nincs strukturáltság. A Linux kernel bár monolítikus, azaz nincs strukturáltság a rutinok között, de nem szükségszer en egyetlen bináris fájlból áll. A Linux kernel modulok olyan részei a kernelnek, melyek a kernel futása során betölthet k és kivehet k a kernelb l. Jellemz i: a kernelt l különálló fájlban tárolódnak a modulban megvalósított szolgáltató rutinok csak akkor hívhatók, ha a modul be van töltve a kernelt l függetlenül fejleszthet k, fordíthatók a kernel futását nem befolyásolja a modulok betöltése, eltávolítása (nem kell újraindítani) betöltésük történhet kézzel a rendszergazda által vagy automatikusan Vannak veszélyei! 9

Linux kernel verziók számozása A linux kernel verziója három vagy négy számból áll. Alakja: a.b.c vagy a.b.c.d a: a f verziószám. 1991-ben 0-val kezd dött, 1-es volt az els stabil verziósorozat, a modulok bevezetése óta a 2-nél tartunk. b: mellékverziószám. Egy f verzión belüli nagyobb fejlesztési lépések számozására használják. Paritása jeletéssel bír: a páros mellékverziószámú kernelek a stabil, felhasználásra szánt kernel verziók a páratlan mellékverziószám a fejlesz i verziót jelent (ezek nem mindig üzemképes kernelnek), csak a kernel élvonalbeli fejlesztésével foglalkozók használják c: b vítési szint (patch level): az adott kernelben történt módosítások, b vítések számozása A 2.6.10-es verzió óta létezik a d verziószám, mely azokat a változtatásokat számlálja, melyek a kernel funkcionalitására nem voltak hatással (pl. hibajavítások, biztonsági javívások, stb.) 10

PC bootolása A PC bekapcsolási és BIOS folyamatait itt nem tárgyaljuk (lásd jegyzetben!) Linux kernel indulásának f bb lépései: fizikai memória feltérképezése CPU-k inicializálása / elindítása CPU sebességének lemérése, BogoMIPS-ben a gép hardver eszközeinek (buszok, megszakítás vezérl k, I/O eszközök, stb.) inicializálása gyökér fájlrendszer mount-olása (itt még csak olvasható módban) az OS felhasználói módban futó részeinek indítása (SVR-Init mechanizmussal) 11

Kernel konfiguráció és initrd UNIX rendszerek kerneljét gyakran forráskód (esetleg tárgykód) formájában megkapjuk. Ebb l a rendszergazda állíthatja össze, hogy mely részeit (rutinjait) szeretné a kernelbe beépíteni. Linux esetében egy kernel tulajdonság háromféle lehet. bekapcsolt: ilyenkor a kernel képfájlba kerül és bootoláskor betölt dik modul: ilyenkor nem kerül bele a képfájlba, de bootolás után betölthet kikapcsolt: nem kerül fordításra az adott tulajdonság Ha bootolás során szükség van egy tulajdonságra, akkor annak bekapcsolt állapotban kell lennie, hiszen ekkor még nem lehet modult betölteni! Vagy mégis? Megoldás: initrd RAM Diszk, mely a kernel betöltésével együtt tölt dik be és még a gyökér fájlrendszer mount-olása el tt rendelkezésre áll kernel modulok innen betölthet k már a bootolás során is 12

SVR-Init Az AT&T UNIX System V Release bevezette azt az init mechanizmust, melyet a UNIX operációs rendszerek mai napig felhasználói módjuk kezelésére használnak. Lényege, hogy a kernel a bootolás végén elindít egyetlen felhasználói módban futó processzt. Ennek a processznek a feladata, hogy a továbbiakban az OS felhasználói módban történ használatát biztosítsa. Hagyományosan a /bin/init program példányaként jön létre, init daemon-nak nevezzük és 1-es a PID-je. Az init daemon konfigurációjától függ, hogy milyen programokat indít el és hogyan kezeli azokat. A konfigurációs fájlja az /etc/inittab. A /bin/init program kett s szerepet tölt be: daemon-ként futva vezérli az operációs rendszer m ködését parancssorból indítva a daemon m ködését, üzemmódját befolyásolja 13

Futási szintek Az init daemon üzemmódjait nevezzük futási szinteknek runlevel. Ezt nevezzük az operációs rendszer futási szintjének is. Mehatározható minden futási szinthez a hozzá tartozó szolgáltatások. Nincs szabványosítva, de van BCP: 0 halt: az OS leállítása, gép kikapcsolása 1 single user mode: egyfelhasználós üzemmód, karbantartásra 2 multi user mode: többfelhasználós üzemmód, normál üzem 3, 4, 5 multi user mode-ok: többfelhasználós módok, tetsz leges felhasználás 6 reboot: az OS újraindítása Aktuális és el z futási szint lekérdezése: runlevel Futási szint váltás: init <RL> 14

Az init daemon m ködése Az init daemon futási szintjének megfelel konfigurációs rekordokat beolvassa az inittab fájlból és a bennük szerepl viselkedésnek megfelel en új processzt hoz létre, melyben elindítja a rekordban megadott parancsot. A daemon az általa indított processzekr l nyilvántartást vezet. Blokkolt állapotban várakozik. Tevékenysége mindig szignálokra való reakcióként valósul meg. Ha gyermek processze megszünik, kiolvassa a kilépés kódját ezzel a gyermekprocessz megszünik és attól függ en, hogy ki indította a megsz nt processzt: ha az init indította a processz, akkor az indításról rendelkez rekordban megadott viselkedés szerint jár el, ha idegen processz szünik meg, akkor nincs további teend. 15

Az inittab Az init daemon konfigurációja az /etc/inittab fájlban található. Ebben a fájlban minden sor egy-egy rekordot jelent, melyekben mez ket különböztetünk meg. A mez ket kett spont (:) választja el. Minden mez szerkezete a következ : <id>:<runlevels>:<action>:<cmd> A mez k jelentése: id: egyedi rekordazonosító (2 karakter) runlevels: azon futási szintek, melyeken a rekord hatása érvényesítend action: a rekord hatására az init daemon megkívánt viselkedése cmd: parancssor, mely a rekord érvényesítésekor lefut 16

Az inittab rekordok viselkedése respawn: megsz n processz újraindítandó wait: a létrehozott processz befejez dését az init daemon-nak meg kell várnia once: csak a futási szintre való belépéskor indítandó boot: csak rendszerinduláskor indítandó bootwait: rendszerindításkor indítandó, de meg kell várni a befejez dését off: kikapcsolt rekord, sosem fut initdefault: alapértelmezett futási szint powerfail: áramszünetkor UPS akkumulátor üzemben jelzésre végrehajtandó powerfailnow: UPS akkumulátor kimerülés jelzésre végrehajtandó powerokwait: UPS akkumulátorüzemr l ismét vonalüzemre állt ctrlaltdel: PC örökség Ctrl+Alt+Del sw megszakítás kezelése 17

Esettanulmány: console login Soros (vt100) terminálon jelentkezünk be, mely a gép els soros portjára van csatlakoztatva (ttys0, 9600 bps sebességgel). inittab: T0:23:respawn:/sbin/getty -L ttys0 9600 vt100 Terminálon: bejelentkez képerny, login prompt; begépeljük a felhasználónevet getty: execv() rendszerhívással saját kontextusába betölti a /bin/login programot Terminálon: jelszó prompt; begépeljük a jelszót login: leellen rzi a felhasználónevet, jelszót sikertelen azonosítás esetén: exit() -> init daemon!!! sikeres azonosítás esetén: setuid, setgid,..., execv(<login shell>) Terminálon: login shell; dolgozhatunk, ha befejeztük exit() -> init daemon!!! Játszuk végig, hogy mi minden történik! 18

Felhasználók kezelése Többfelhasználós operációs rendszeren mit várunk el? Legyenek megkülönböztetett felhasználók! Hatékonyan kezelje a OS a felhasználókat! Egyszer legyen a felhasználóknak azonosítani magukat! Biztonságos legyen az azonosítás! Nagy intézményeknél egy felhasználónak egy számlája legyen minden gépre! Szükség szerint több biztonsági token legyen kapcsolható egy számlához! A számlaadatok bizalmas információk, biztonságosan tárolandók! 19

PAM - Pluggable Authentication Modules Moduláris rendszer felhasználó azonosítási keretrendszer. Alapfilozófia: szolgáltatások igényelnek felhasználóazonosítást, melyet azonosító hatóságok nyújtanak. + + application: X + + / + + +================+ authentication [ > \ ] Linux < PAM config file + [ < / ] PAM ================ [conversation()][ + \ X auth.. a.so + + / + n n + X auth.. b.so / service user A, ' V A + + + + + + + u u + auth... [ a ] [ b ] [ c ] + + acct... [ b ] [ d ] + + password [ b ] [ c ] + + session [ e ] [ c ] + + 20

PAM - Pluggable Authentication Modules Modulnak nevezzük a PAM azon komponenseit, melyek azonosító hatósággal való kapcsolatot biztosítanak. Minden modulnak 4 szerpe lehet: auth: felhasználó azonosítás account: felhasználói számla adatok lekérdezése session: állapot és kapcsolatvezérlési adatok lekérdezése password: jelszó kezelése (pl. lejárat, jelszócsere) Szolgáltatásnak nevezzük azokat a névvel ellátott alkalmazásokat, melyek a PAM könyvtáron kereszül kérik a felhasználó azonosítási szolgáltatásokat. PAM konfigurációs fájlokban adhatók meg, hogy mely szolgáltatások, milyen célra mely modulokat, milyen sorrendben és feltétellel használják. 21

PAM - Pluggable Authentication Modules PAM modulok: pam_unix.so : klasszikus UNIX felhasználói adatbázist használó modul pam_ldap.so : LDAP címtárszolgáltatással történ felhasználóazonosítási modul pam_access.so : nem azonosít, hozzáférést szabályoz szolgáltatás, felhasználó, napszak, stb. szerint. pam_crack.so : jelszóváltáskor ellen rzi, hogy az új jelszó megfelel komplexitású-e, ha nem, akkor nem engedi megváltoztatni a régit 22

PAM - Pluggable Authentication Modules M ködés: + + application: X + + / + + +================+ authentication [ > \ ] Linux < PAM config file + [ < / ] PAM ================ [conversation()][ + \ X auth.. a.so + + / + n n + X auth.. b.so / service user A, ' V A + + + + + + + u u + auth... [ a ] [ b ] [ c ] + + acct... [ b ] [ d ] + + password [ b ] [ c ] + + session [ e ] [ c ] + + 23

PAM - Pluggable Authentication Modules A legegyszer bb konfigurációs fájl: auth required pam_unix.so account required pam_unix.so password required pam_unix.so session required pam_unix.so 24

A UNIX felhasználói adatbázis UNIX rendszerek kezdetekt l fogva tartanak nyilván felhasználókat és csoportokat. Felhasználói adatok: /etc/passwd Csoportok adatai: /etc/group Formátuma: szövegfájl, rekord és mez szervezés rekordelválasztó: az újsor (<LF>) karakter mez elválasztó: a kett spont (:) karakter 25

A UNIX felhasználói adatbázis A passwd fájl mez szerkezete: <login>:<passwd>:<uid>:<gid>:<gecos>:<homedir>:<shell> login: a felhasználó login neve passwd: a jelszó titkosított képe uid: a felhasználó azonosítója gid: a felhasználó belépési csoportja (initial group) gecos: megjegyzés mez homedir: a honos jegyzék útvonala shell: a felhasználó parancsértelmez je 26

A UNIX felhasználói adatbázis A group fájl mez szerkezete: <group>:<passwd>:<gid>:<members> group: a csoport neve passwd: a csoport felvételéhez szükséges jelszó titkosított képe gid: a csoport azonosítója members: a csoporttagok login neve vessz vel (,) elválasztva A csoporttagság nem egyenérték a belépési csoporttal! Csoportváltás a newgrp paranccsal lehetséges. 27

A UNIX felhasználói adatbázis Felmerül problémák: a passwd fájl mindenki által olvasható, ez kell a m ködéshez a jelszó titkosított képe ugyan, de nyilvános fejlett jelszókezelés (pl. lejárat, számla letiltás) nem lehetséges Megoldás: /etc/shadow fájl bevezetése, mely csak a shadow csoport számára olvasható (így csak néhány program fér hozzá) kiegészító adatokat tartalmaz a felhasználóval és a jelszóval kapcsolatban a jelszó titkosított képe csak itt van tárolva Ha egy felhasználónak van shadow rekordja a passwd fájlban a jelszó helyén egy x karakter áll. 28

A UNIX felhasználói adatbázis A shadow fájl mez szerkezete: <login>:<passwd>:<lmod>:<valid>:<warn>:<exp>:<inact>:<res> login: a felhasználó neve passwd: a jelszó titkosított képe lmod: utolsó módosítás napja EPOCH-ban valid: jelszó érvényességi ideje napokban warn: figyelmeztetés a jelszó lejáratáról, ennyi nappal lmod után exp: jelszó elévülés inact: számla letiltás ideje EPOCH-ban res: fenntartott mez, mindig üres 29

A UNIX felhasználói adatbázis Jelszavak titkosítása: eredeti UNIX módszer a crypt: a begépelt jelszó karaktereit permutáljuk egy salt érték alapján ([a-za-z0-9./], azaz 4096 lehetséges permutáció) az els 8 karakter kódjának alsó 7 bitjét vesszük (56 bit) kulcsnak egy konstans gyakran üres sztringet DES algoritmussal és az 56 bites kulccsal titkosítunk elejére hozzáfüzzük a 2 salt karaktert egyirányú titkosítás (injektív, de nem szürjektív) Hogyan lehet leellen rizni a jelszót? 30

A UNIX felhasználói adatbázis Jelszavak titkosítása: javított módszer MD5 szabványos algoritmus üzenetkivonatolásra épül biztonságos hash függvény egyirányú titkosítás (injektív, de nem szürjektív) megkülönboztetetten tárolódik ( $1$...$ alakú a titkosított kép) El nyei: nagyobb kulcstér a teljes jelszót titkosítja szabvány miatt, csereszavatos 31

Social Engineering Hogy kell ezt magyarul mondani? Mit l gyenge egy jelszó? Cryprográfiai szempontból:» rövid -> kevés kombináció lehetséges» nem elég változatos -> kis entrópia Szociális szempontbol:» ismert nevek, (pl. Skywalker, Darth Vader)» anagrammák» családtagok adatai (nevek, születési dátumok, stb.) 32

Diszkek Mágneslemezes tárolóegységek. Mechanikai kialakításuk szerint sokféle létezik. Közös jellemz ik a címzési rendszer. Logikai diszk: az OS ilyennek látja, de fizikailag tetsz leges megvalósítású lehet Diszk partició: a logikai diszk címterének felosztásával keletkez szeletek. UNIX rendszereken minden logikai diszknek van saját szimbolikus neve. Minden diszk partició szintén újabb logikai diszkként jelenik meg. Linux-on az IDE diszkek szokásos szimbolikus nevei: /dev/hda, jelenti az els dleges IDE csatorna master diszkjét /dev/hdb, jelenti az els dleges IDE csatorna slave diszkjét... /dev/hda1, a hda diszk 1. particiója Más UNIX rendszereken összetettebb névkonvenció is elképzelhet. Újabb Linuxokon is találkozhatunk mással. 33

Több diszkes rendszerek Tömeges adattároló rendszerekkel szemben támasztott igények: igen nagy kapacitás (nagyobb mint amekkora egységeket gyártanak) nagy megbízhatóság: mechanikus eszközök nagyon sérülékenyek, kopnak, meghibásodásuk gyakor, de kívánalom, hogy adatvesztéssel ne járjon nagy rendelkezésre állás: egyes egységek meghibásodása esetén a tároló m körjön tovább, lehessen üzem közben egységet cserélni rugalmasan lehessen kezelni a tárat gazdasági igény: több kis kapacitású egység olcsóbb lehet Megoldások: MD, multi-disc tárolókezel (csak mirror vagy linear extension) RAID szabvány. 34

RAID RAID Redundant Array of Independent Discs független diszkek redundáns tömbje 5 fajtája ismert, de csak 2 használata elterjedt a gyakorlatban: RAID-1: mirrored pair 2 egyforma diszk alkot tömböt, a 2 diszk tartalma megegyezik, tükrözve van» tömb kapacitása megfelel egy diszk kapacitásának (50%-os kihasználás)» írási sebesség megfelel a diszkek írási sebességének» olvasási sebesség lehet jobb az egyes diszkek olvasási sebességénél (fejmozgás optimalizáció)» egy diszk meghibásodás esetén nincs adatvesztés 35

RAID-5 RAID-5: stripe-set with non-dedicated parity 3 vagy több egyforma diszk alkot egy tömböt tömb kapacitása A=C * (N 1) (3 diszk esetén 67%-os kihasználtság, 4 diszk esetén 75%, 5 diszk esetén 80%, stb.) bármely diszk meghibásodása a tömb üzemképes marad egy diszk kiesése nem jár adatvesztéssel (csak teljesítménycsökkenéssel) írási és olvasási sebesség jobb, mint az egységeké (fejmozgás optimalizáció és adatszétosztás) Létezik a tárolórendszerek terén olyan szabvány, mely lehet vé teszi fizikai diszk egységek üzem közben történ ki ill. beszerelését. Az ilyen rendszereket hívják hotswap rendszernek. RAID tömbök vezérlését gyakran célhardver látja el, mely a diszkek hot-swap cseréjét is biztosítja. A RAID tömböt akkor nevezzük épnek, ha szinkronban vannak az adatok az egységeken. Sérülés esetén szinkronizálni kell, ami id igényes. 36

RAID-5 RAID-5 tömb 3 diszkb l, forrás: www.sun.com 37

LVM Logikai kötetkezel Az operációs rendszer diszk alrendszerének szolgáltatása. Tároló kötetek rugalmas kezelésére használható. Az OS logikai diszkjeit kijelölhetjük fizika kötetnek - PV physical volume Egy vagy több PV összefoglalható egy kötet csoportba - VG volume group VG-hez bármikor hozzáadhatunk további PV-t, ami a VG méretének lineáris növekedésével jár VG-bol PV-t kivenni nem lehet! Egy VG-n létre hozhatunk logikai köteteket - LV logical volume az LV az operációs rendszer számára logikai diszkként jelenik meg az LV-k mérete a VG korlátai között tetsz legesen változtatható Vigyázat, a kötet átméretezését nem minden fájlrendszer támogatja. 38

LVM Logikai kötetkezel egy lehetséges LVM konfiguráció (forrás: www.linuxaid.com.cn) 39

Lazítsunk mára! Próbáljuk ki az Ubuntu Linux disztribúció LiveCD-jét! Jó szórakozást! Viszlát holnap! 40