Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Hálózati adminisztráció Linux MIN7B6IMIN2B1. Johanyák Zsolt Csaba (c) 20102 Ajánlott irodalom Hivatalos és közösségi dokumentáció

Hasonló előadás


Az előadások a következő témára: "Hálózati adminisztráció Linux MIN7B6IMIN2B1. Johanyák Zsolt Csaba (c) 20102 Ajánlott irodalom Hivatalos és közösségi dokumentáció"— Előadás másolata:

1 Hálózati adminisztráció Linux MIN7B6IMIN2B1

2 Johanyák Zsolt Csaba (c) Ajánlott irodalom Hivatalos és közösségi dokumentáció Brian K. Jones, Bill von Hagen: Linux bevetés közben - Második küldetés Kiskapu Kft., 2006, ISBN: Rob Flickenger: Linux bevetés közben, Kiskapu Kft., 2003, ISBN:

3 Történeti áttekintés Egyéni feldolgozásra

4 Johanyák Zsolt Csaba (c) A UNIX kialakulása 1  nagyszabású kutatási program az 1960-as években  az MIT, a Bell laboratórium és a General Electric  több felhasználós, többfeladatos operációs rendszer  neve: MULTICS (MULTiplexed Information and Computing Service  fejlesztés PL/I nyelven folyt  a program feladására kényszerültek

5 Johanyák Zsolt Csaba (c) A UNIX kialakulása 2  Ken Thompson: MULTICS egyszerűsített változata PDP-7 számítógépre  Szolgáltatások:  állomány és file kezelés  folyamatkezelő alrendszer  segédprogramok  Elnevezés (Brian Kernighan) : eunuch multics, UNICS (U N iplexed Information and Computing Service)  1971 PDP-11-re, még teljesen assembly  1973-ban C-re átültetve

6 Johanyák Zsolt Csaba (c) A UNIX kialakulása 3  AT&T kezdetben ingyen bocsátotta az amerikai egyetemek rendelkezésére a forráskódot  1974: első nyilvános változat  nyolcvanas évek végére két különböző, egymástól sokban eltérő Unix:  AT&T: UNIX  BSD UNIX  : az AT&T összefogja a saját verzióit és a version 7 után System III néven jelenik meg  1983: kb működő UNIX rendszer  1983: System V. Később Release-ek Pl:System V Release 4, (SVR4)

7 Johanyák Zsolt Csaba (c) A UNIX kialakulása 4  Microsoft PC-re fejleszett UNIX változata. Az első PC-s UNIX: Xenix  Intel ra  Kb. 30 db floppy (360 Kb-os)

8 Johanyák Zsolt Csaba (c) Egységesítési törekvések 1  AT&T: SVID (System V Interface Definition)  Szabványos rendszer hívások  Szabványos szubrutinok  a BSD figyelmen kívül hagyta  IEEE: POSIX (Portable Operation System Interface (x))  Támogatói: ANSI, ISO  Összetétele: 70%-ban SVID, 30% saját elképzelések  Minden nagy UNIX gyártó elismeri a POSIX jelentőségét, és támogatja azt.  Ettől függetlenül továbbra is építenek be inkompatibilis részeket saját UNIX-ukba

9 Johanyák Zsolt Csaba (c) Egységesítési törekvések 2  A riválisok két szervezetbe tömörülnek:  OSF (Open System Foundation)  vezetője a DEC.  Tagjai: DEC, IBM, HP, BULL, Siemens-Nixdorf, …  UI (Unix International)  Alapítója az AT&T  Tagjai: NCR, Unisys, Data General, …  Új szervezetet hoznak létre: X/OPEN OS szabvány neve: Core OS API (Common API) Spec 1170, UNIX 95  United Linux 2002 (SuSE, Turbo Linux, SCO, Connectiva

10 Johanyák Zsolt Csaba (c) UNIX-ok  IBM: AIX  DEC: ULTRIX  Berkeley University: BSD UNIX, Free BSD  Silicon: IRIX  Hewlett-Packard: HP-UIX  SUN: Solaris majd Sun OS  Microsoft: XENIX  Linux-ok

11 Johanyák Zsolt Csaba (c) Linux  Finn egyetemista: Linus Thorvalds  OS Andrew Tanenbaum  vita a kernel felépítéséről  0.11-es változat 1991-ben  Kernel – op. r. magja (www.kernel.org)  v.x.y.z; jelenleg:  önmagában használhatatlan

12 Johanyák Zsolt Csaba (c) Linux változatok  Disztribúció  egy linux kernelen alapuló teljes rendszer  pl. Ubuntu, Redhat, SuSE,Slackware, Debian, UHU, Fedora

13 Johanyák Zsolt Csaba (c) Linux  OpenSuse: (hu.opensuse.org)  Debian: (www.debian.org)  Slackware: (www.slackware.com)  Red Hat: (www.redhat.com)  Fedora: (fedoraproject.org)  UHU: (www.uhulinux.hu)  Ubuntu: (ubuntu.hu,

14 Johanyák Zsolt Csaba (c) Felhasználói felület  Eredetileg karakteres, szerver változatnál most is  X.Org grafikus rendszer (X Windows)  Grafikus felület pl. KDE, GNOME

15 X Windows System (X11)  Hálózati protokoll  Grafikus primitívek keretrendszere (szoftver) – ablakok kirajzolásához, mozgatásához, egér- és billentyűzet kezeléshez  Nem tartalmaz felhasználó felület tervezési/megvalósítási elemeket: nyomógomb, menü  Hardver absztrakciós réteget képez  Lehetővé teszi az eszközfüggetlen elérést Johanyák Zsolt Csaba (c)

16 X Windows System (X11)  Újabb szoftver réteg az operációs rendszer magja felett  Eredetileg hálózati használatra tervezték  A felhasználó gépén fut, és szolgáltatást nyújt más gépen vagy azonos gépen futtatott ún. kliens alkalmazások számára miközben kezeli a felhasználói IO eszközöket Johanyák Zsolt Csaba (c) Forrás:

17 Tipikus alkalmazási helyzetek  Bejelentkezünk egy távoli gépre  Ott elindítunk egy programot, és annak a felülete a mi képernyőnkön grafikusan jelenik meg  Ugyanez, csak helyi gépen Johanyák Zsolt Csaba (c)

18 Grafikus felhasználói felület  Az, amit a felhasználó ténylegesen lát  Egy további szoftver réteg hozza létre az X11 szolgáltatásainak igénybe vételével  Ez a réteg lehet  Ablakkezelő (Window Manager)  Asztali környezet (Desktop Environment)  Alkalmazásspecifikus felhasználói felület  Grafikus eszközkészlet (GUI widget ToolKit) Johanyák Zsolt Csaba (c)

19 Ablakkezelők és asztali környezetek AblakkezelőkAsztali környezetek MetacityGNOME CompizGNOME, KDE KWinKDE XfwmXfce wmiiUnity Ratpoison twm- az X11-el szállított alap ak. evilwm Enlightenment Johanyák Zsolt Csaba (c)

20 Asztali környezet  Az ablakkezelőn túl egy sor kiegészítő/segéd szoftvert is tartalmaz  Pl. GNOME, KDE, Xfce, CDE (Unix), Unity  Johanyák Zsolt Csaba (c)

21 X Windows implementációk  XFree86 (http://www.xfree86.org/) volt a legáltalánosabb 2004-ig – licencelési váltás  X.Org (http://www.x.org/wiki/) 2004-től az XFree86 egy korábbi, szabad licenszű változatából kezdték fejleszteni  Legtöbb Linux disztribúció X.Org-ot használ Johanyák Zsolt Csaba (c)

22 Johanyák Zsolt Csaba (c) Linux desktopok  KDE (jelenleg: )  K Desktop Environment  Matthias Ettrich Tübing-i egyetemi hallgató   GNOME (jelenleg: 3.2)  GNU Network Object Model Environment – 1997 augusztus 

23 Johanyák Zsolt Csaba (c) Linux desktopok  XFCE (jelenleg 4.8)  Kis erőforrásigény  Olivier Fourdan 

24 Johanyák Zsolt Csaba (c) Jellemzők  többfelhasználós  több feladat párhuzamos végrehajtása  általános időosztásos rendszer  hierarchikus állományrendszer, felcsatolható kötetek  állomány típusát nem a neve (kiterjesztése) alapján ismeri fel  keresztkapcsolatok  hatékony és kifinomult állományvédelmi rendszer  több parancsértelmező  Linux: a legteljesebb POSIX implementáció

25 Johanyák Zsolt Csaba (c) Többfelhasználós működés  egyidejűleg több felhasználó használhatja  mindegyikük akár több programot is futtathat  terminál : soros vonalon, akár modemen keresztül  pszeudo-terminál : a hálózaton vagy a grafikus felületen bejelentkezett felhasználó terminálja  megnevezés : console, tty, ttyp

26 Johanyák Zsolt Csaba (c) Váltás a terminálok között helyi gépen  Karakteres felületről váltás  egy másik karakteres terminálra (Alt+F1..F6)  grafikus felületre (Alt+F7..F8)  Grafikus felületről váltás  egy karakteres terminálra (Ctrl+Alt+F1..F6)  egy másik grafikus felületre (Ctrl+Alt+F7..F8)  Megj.:  minden használt terminálon be kell jelentkezni  alapesetben csak egy grafikus felületünk van (F7), amiből szükség esetén egyes Linuxoknál indíthatunk egy másikat

27 Johanyák Zsolt Csaba (c) Felhasználók megkülönböztetése  login name :  bejelentkezési /felhasználói azonosító  max. 8 karakter hosszú, kisbetűvel írott  numerikus felhasználó azonosító (UID - user identification)  jelszó :  maximum 8-16 karakter hosszú  felhasználói csoportok (groups):  elsődleges csoportja (pl. student)  tartozhat még más csoportokhoz is (pl. texusers)  csoportneveket is kisbetűvel írják  numerikus csoport-azonosító (GID - group identification)

28 Johanyák Zsolt Csaba (c) Kitüntetett felhasználó  kitüntetett felhasználónév: "root"  a rendszerben neki "mindent szabad"  ne használjuk Linuxos gépüket "root" hozzáférési jogokkal, mert egy root jogokkal kiadott hibás vagy át nem gondolt utasítás egy pillanat alatt az egész rendszerünket jóvátehetetlenül tönkreteheti  Ubuntu: az elsőként létrehozott felhasználó jelszavával sudo utasítás sudo su

29 Karakteres felület

30 Johanyák Zsolt Csaba (c) Bejelentkezés  Ubuntu XXX tty1  XXX login: hallgato Password: Last login: …

31 Johanyák Zsolt Csaba (c) Kilépés, leállítás és újraindítás  a számítógép lekapcsolása nélkül  logout - a "login shell"-ből  exit - a "login shell" után indított shellekből léptet ki, hatására a login shellbe jutunk vissza  a számítógép újraindításával  reboot (root jogosultság szükséges)  Ctrl+Alt+Del  a számítógép lekapcsolásával  shutdown –y –i5 –g0 (root jogosultság szükséges)  halt (root jogosultság szükséges)  a számítógépet működő operációs rendszer mellett kikapcsolni tilos!

32 Johanyák Zsolt Csaba (c) Súgó  man parancsnév  man –f parancsnév rövid összegzés  man –k kulcsszófelsorolja azokat a parancsokat, amelyeknek a leírásában szerepel a kulcsszó  info parancsnév  /usr/share/doc

33 Johanyák Zsolt Csaba (c) Parancsértelmező  Shell (pl. ash, bash, csh, ksh, sh, tclsh, tcsh, tixwish, wish8, zsh)  elindítja a felhasználó által megadott programokat  a felhasználó parancsait kernelhívásokká alakítja  a képernyőn megjeleníti az eredményt

34 Johanyák Zsolt Csaba (c) Shell típusok  sh - első, Bourne shell, minden Unix rendszer tartalmazza  ash – sh változat  csh - az sh továbbfejlesztett és C elemekkel kiegészített változata  ksh - Korn shell  tcsh - a csh kényelmi és kiterjesztett funkciókkal jól megpakolt változata  bash - a Linux rendszereken általánosan használt, Bourne Again SHell, az sh egy alaposan továbbfejlesztett változata

35 Johanyák Zsolt Csaba (c) Bash  felfelé nyíl: az előzőleg begépelt parancsok  !sztring: a legutóbbi olyan parancs, amely a sztringgel kezdődött  állománynév kiegészítés: „Tab”  ha ez egyértelműen lehetséges, beírja a nevet, ha nem, sípol egyet, és a „Tab” újbóli megnyomására megkapjuk a lehetséges állománynevek listáját  sor elején (első szóban) csak futtatható állományokra (a PATH-ot végignézve)  argumentumoknál az összes állományra

36 Johanyák Zsolt Csaba (c) Shell- és környezeti változók  Létrehozás/érték beállítás változó_név=érték mkk=/etc/dhcp3 cd $mkk  Hivatkozás $változó_név vagy ${változó_név}  Shell v.  Környezeti v. export változó_név  Lista env, printenv  Lekérdezés echo $változó_név

37 Johanyák Zsolt Csaba (c) Fontosabb környezeti változók  PATH  HOME  LOGNAME  HOSTNAME  TERM

38 Johanyák Zsolt Csaba (c) Mi a PATH?  echo $PATH  /../..:/../..:...  mc  /../../../mc ./programnév  alternatív: akt könyvtár felvétele a keresési útvonalba  mcedit.bash_profile  PATH=.:$PATH  mentés(F2), kilépés(F10), kijelentkezés(logout), bejelentkezés  echo $PATH

39 Johanyák Zsolt Csaba (c) Példák  echo $HOME  echo $HOME  /home/csaba  /home/csaba  echo $LOGNAME  echo $LOGNAME  csaba  echo $PATH  echo $PATH  /usr/local/bin:/bin:/usr/bin:/usr/X11/bin: /usr/games:.:/usr/TeX/bin  /usr/local/bin:/bin:/usr/bin:/usr/X11/bin: /usr/games:.:/usr/TeX/bin

40 Johanyák Zsolt Csaba (c) Példák  valtozo=valami  valtozo=valami  echo $valtozo  echo $valtozo  valami  valami  PATH=/alma/jonatan:$PATH  PATH=/alma/jonatan:$PATH  export PATH  export PATH

41 Johanyák Zsolt Csaba (c) Alias  alias listazz ='ls -l'  alias  listazz  unalias listazz

42 Johanyák Zsolt Csaba (c) Információk tty melyik terminálon dolgozunk? id mi az azonosítónk és mely csoportokhoz tartozunk? groups csoporttagságok uname –a gépinformációk

43 Johanyák Zsolt Csaba (c) Szövegíró programok 1  ed egyszerre a szöveg egy sorát képes feldolgozni  nano  vi  üzemmódok: parancs (ESC)/beviteli(a,i,o)/ex(:)  mentés és kilépés :wq  joe (súgó: Ctrl-K-H) Feladat: Hozzon létre egy-egy szöveges állományt a joe és a jed segítségével  jed menüvezérelt SuSE, Debian : nem része az alap telepítésnek

44 Johanyák Zsolt Csaba (c) vi  vi proba  ESC i  szöveg beírása  ESC :wq  cat proba

45 Johanyák Zsolt Csaba (c)  joe proba  szöveg beírása  Ctrl K H súgó  Ctrl K D mentés  Ctrl C kilépés mentés nélkül

46 Johanyák Zsolt Csaba (c) Szövegíró programok 2  mcedit proba  pico (pine)  emacs

47 Johanyák Zsolt Csaba (c) Konfigurációs állományok  /etc/profile, ~/.bash_profile, ~/.bash_login, ~/.profile végrehajtás bejelentkezéskor  környezeti változók  pl. PATH .bashrcvégrehajtás minden shell indításkor (bash használata esetén) környezeti változók  alias .bash_logout .kderc .Xdefaults  /etc/skel

48 Johanyák Zsolt Csaba (c) Mi a.. ?  hivatkozás az aktuális könyvtárt tartalmazó könyvtárra (szülőkönyvtárra)  pwd  /home/hallgato  cd..  /home  cd ~ vagy cd hallgato

49 Johanyák Zsolt Csaba (c) Példa.bash_profile  PATH=$PATH:$HOME/bin  BASH_ENV=$HOME/.bashrc  USERNAME=""  export USERNAME BASH_ENV PATH  Feladat: a keresési útvonalhoz adjuk hozzá az aktuális könyvtárat

50 Johanyák Zsolt Csaba (c) Példa.bash_logout  # ~/.bash_logout  clear

51 Johanyák Zsolt Csaba (c) A Linux többrétegű fájlrendszere Folyamat 1 Folyamat 2 Folyamat n VIRTUAL FILE SYSTEM ext?msdosminixproc Buffer cache EszközmeghajtókÁllományrendszer User mode Kernel mode...

52 Johanyák Zsolt Csaba (c) A Linux fájlrendszer kezelés  A VFS a rendszerhívásokat átalakítja az adott fájlredszerre nézve specifikus hívássá  Kezelt fájlrendszerek:  Second Extent (ext2)  ext3, ext4, ReiserFS  MSDOS: VFAT  Minix  AFF (Amiga Fast FS)  ufs & s5fs (szokásos UNIX)  HPFS (OS/2)  NTFS (NT)  proc

53 Johanyák Zsolt Csaba (c) A proc fájlrendszer 1  állapot információkat szolgáltat a kernelről és a processzekről  minden processzhez tartozik /proc/pid jegyzék  ebben a "fájlok", a pid-ű processz státusát adják  további "fájlok" (pl: loadavg, uptime, meminfo, kmsg, version, cpuinfo, mounts stb.) a kernel állapotról informálnak

54 Johanyák Zsolt Csaba (c) A proc fájlrendszer 2  nem tartozik hozzá eszköz (nodev típus)  készíthetünk róla (és aljegyzékeiről) az ls paranccsal listát  fájljait kiírathatjuk

55 Johanyák Zsolt Csaba (c) Név konvenció  kis és nagy betű különböző  elvben 128 karakter  kerüljük a speciális karaktereket: |,#,stb.  "." a név előtt: rejtett állomány

56 Johanyák Zsolt Csaba (c) Állománytípusok  könyvtár (d)  szimbolikus link (l)  közönséges állomány (plain file – "-"),  speciális állomány  blokk típusú (b)  karakteres típusú (c)  socket (s)  gyakorlat: ls –la parancs használata

57 Johanyák Zsolt Csaba (c) Közönséges állományok  byte-ok közvetlenül címezhető sorozata  szöveges  bináris

58 Johanyák Zsolt Csaba (c) Speciális állományok  fizikai berendezések  az olvasási és írási kérések eredménye a megfelelő készülék aktivizálódása  ls –la /dev | more

59 Johanyák Zsolt Csaba (c) Könyvtárállomány  állománynév + i-csomópont (i-node, i-bög) címe  alkönyvtárnév + i-csomópont címe  szimbolikus keresztkapcsolat + elérési út  hard keresztkapcsolat + i-csomópont címe . ..

60 Johanyák Zsolt Csaba (c) i-csomópont (i-node)  fizikai elhelyezkedés  méret  tulajdonos  védelmi kód  módosítási/létrehozási idő

61 Johanyák Zsolt Csaba (c) i-csomópont szerkezet

62 Johanyák Zsolt Csaba (c) Az i-csomópont szerkezete Könyvtár file1 i-bög mode & védelem linkek száma tulajdonos uid gid fájl méret Utolsó hozzáférés Utolsó módosítás Készítési idő Adat blokk

63 Johanyák Zsolt Csaba (c) Keresztkapcsolat (link)  szimbolikus (szoft)  különböző adathozdozók között is  részletes listázásnál állománynév helyett név --> eredetihely/eredetinév  ln –s eredetihely/eredetinév újnév  merev (hard)  csak egy adathordozón belül  részletes listázásnál mintha ténylegesen ott lenne + az eredeti helyen eggyel nő a számláló  ln eredetihely/eredetinév újnév

64 Johanyák Zsolt Csaba (c)  mkdir delelott  cd delelott  ln –s../billkiosztas szimbolikus  ls –la  cat szimbolikus | more  ls –la../billkiosztas  ln../billkiosztas merev  ls –la../billkiosztas  ls –la

65 Johanyák Zsolt Csaba (c)  rm../billkiosztas  ls –la  rm merev  ls –la  cat szimbolikus | more  mc

66 Johanyák Zsolt Csaba (c) Hard link-soft link link=2 > ln /usr/joe/foo /usr/sue/bar foo2 bar2 /usr/joe /usr/sue 2. i-bög hard link > ln -s /usr/joe/foo /usr/sue/bar foo2 bar16 /usr/joe /usr/sue 2. i-bög16. i-bög /usr/joe/foo symbolic link

67 Johanyák Zsolt Csaba (c) Feladat  hozzunk létre egy merev és egy szimbolikus linket az mc programhoz a hallgato könyvtárban  ellenőrizzük le a meglétét  indítsuk el a link segítségével a Midnight Commander programot

68 Johanyák Zsolt Csaba (c) Állományrendszerek partíciókra osztása  védelem  hely kiosztás  hozzáférés szabályozás  újratelepítés  virtuális memória

69 Johanyák Zsolt Csaba (c) Linux partíciók  swap  operációs rendszer ( / )  felhasználói programok ( /usr/bin, usr/local/bin )  felhasználói könyvtárak ( /home )  cfdisk

70 Johanyák Zsolt Csaba (c) Útvonal  "." aktuális könyvtár  ".." szülő könyvtár  "/" gyökér könyvtár

71 Johanyák Zsolt Csaba (c) Standard fa /binrendszerprogramok /usr/binközérdekű felhasználói programok /etca rendszer működéséhez és karbantartásához szükséges állományok és programok /etc/passwdfelhasználók azonosításához szükséges adatok egy része /tmpideiglenes állományok elhelyezése /devspeciális állományok /homefelhasználói könyvtárak

72 Johanyák Zsolt Csaba (c) /dev/tty*a terminálok nevei, a „* ” helyén bármely karakter állhat a gép kiépítettségétől függően /dev/hd*merevlemez neve, a „* ” helyén alfanumerikus karakterek, elsősorban számok állnak /dev/fd*hajlékonylemezes egység neve /dev/memállományként elérhető memória neve /dev/nullkülönleges rendeltetésű állomány, ha olvasunk belőle, akkor azonnal az állomány végét érzékeljük, ha pedig írunk bele, akkor korlátlanul elnyel mindent anélkül, hogy bárhol is tárolná

73 Johanyák Zsolt Csaba (c) Könyvtár- és állománykezelés pwd az aktuális munkakönyvtár elérési úttal ellátott nevének kiírása ls [-altrR] könyvtár egy könyvtár tartalmának kilistázása ABC sorrendben -r a rendezés iránya fordított -R alkönyvtárak is rekurzívan -a a rejtett állományok is -l kiegészítő információk drwxrwxrwx ln user group size date time name -t módosítási idő szerinti rendezés

74 Johanyák Zsolt Csaba (c) mkdir [elérési_út/]könyvtár egy új könyvtár létrehozása mkdir –p./elso/masodik létrehozza az elso könyvtárat is cd [elérési_út/]könyvtár könyvtárváltás ln -s állománynév keresztkapcsolatnév keresztkapcsolat létrehozása -s szimbolikus keresztkapcsolat -s szimbolikus keresztkapcsolat cat állomány1 [...állományN] állományok összefűzése: cat állomány1 állomány2 > állomány3 állomány kiíratása: cat állomány új állomány létrehozása: cat > állomány +

75 Johanyák Zsolt Csaba (c) rm kapcsolók állománynév állomány törlése -f nincs figyelmeztető üzenet -r könyvtárak törlése rekurzívan rmdir könyvtárnév üres könyvtár törlése !kitörölt állomány nem állítható vissza wc kapcsolók állománynév állomány jellemzőinek számlálása -c bájtok -l sorok -w szavak cp kapcsolók forrás cél állományok másolása -r rekurzív -s szimbolikus linket hoz létre másolás helyett (csak akkor működik, ha az aktuális könyvtárba másolunk) -f nincs figyelmeztető üzenet

76 Johanyák Zsolt Csaba (c) Feladat  hozzunk létre a saját könyvtárunkban alkönyvtárakat az alábbi nevekkel: ora/bin, ora/tmp, ora/doboz, ora/munka, ora/munka/tarol  listázzuk ki saját könyvtárunk és az alkönyvtárak tartalomjegyzékét a lista állományba  számoljuk meg az állomány sorait  másoljuk át a lista állományt a tarol könyvtárba  hozzunk létre egy 2 soros szöveges állományt szoveg néven a doboz könyvtárban  fűzzük össze a lista és a szoveg állományokat osszeg néven úgy, hogy az eredmény a tmp könyvtárba kerüljön

77 Johanyák Zsolt Csaba (c) Feladat  készítsünk egy szöveges állományt forras néven a saját könyvtárunkban  másoljuk be a temp és a munka könyvtárakba forr_temp és forr_munka néven  tegyük a forr_temp –et írásvédetté  készítsünk a tarol és a doboz könyvtárban merev hivatkozást a forras állományra  mindegyik hivatkozás készítés után kérjünk részletes könyvtár tartalomjegyzéket az eredeti forras állományról

78 Johanyák Zsolt Csaba (c) Feladat  töröljük a tarol és a doboz könyvtárban levő merev hivatkozást a forras állományra  kérjünk részletes könyvtár tartalomjegyzéket a bin könyvtárról  nézzük meg, hogy milyen rejtett állományok vannak a saját könyvtárunkban

79 Johanyák Zsolt Csaba (c) find kezdőpont kifejezés állomány keresése a könyvtárrendszerben kezdőponttól lefelé - name minta név szerint - user név tulajdonos szerint grep kapcsoló minta állománynév minta előfordulását keresi állományokban -c csak a mintát tartalmazó sorok száma -i kis és nagy betű azonos -l csak állománynevek -n sorszám + sor -v mindent ami nem tartalmazza a mintát

80 Johanyák Zsolt Csaba (c) mv kapcsolók forrás cél állományok átnevezése és/vagy mozgatása -f létezőt kérdés nélkül felülír -b mozgatás előtt biztonsági másolatot készít cél állomány vagy könyvtár more kapcsolók állomány... állomány tartalmának oldalakra tördelt megjelenítése a képernyőn -p nem görget, hanem lapoz -s több üres sorból egyet cmp kapcsolók áll1 áll2 állományok összehasonlítása -c a különböző bájtokat karakterként írja ki

81 Johanyák Zsolt Csaba (c) dd kapcsoló if=áll1 of=áll2 állomány másolása és konvertálása conv=ascii EBCDIC->ASCII conv=ebcdic ASCII->EBCDIC conv=ibm ASCII->IBM conv=lcase nagybetűből kisbetű conv=ucase kisbetűből nagybetű sort kapcsolók állománynév állomány sorainak rendezése -b beveztő szóközt kihagy -c rendezettséget vizsgál -o állomány állományba írja az eredményt -r fordított sorrend

82 Johanyák Zsolt Csaba (c) tar kapcsolók újnév állományok állományok/könyvtárak összecsomagolása és kibontása -t lista (teszt) -f lemezes állomány -x kibont -c becsomagolás (újat létrehoz) -r becsomagolás (hozzáfűz) -A hozzámásol tar állományt --delete töröl -W ellenőriz -v kiírja az állományneveket a képernyőre

83 Johanyák Zsolt Csaba (c) Tar  tar –cvf ujnev.tar allomanyok  tar –xvf ujnev.tar  tar –tvf ujnev.tar

84 Johanyák Zsolt Csaba (c) compress kapcsoló állomány állományok be/kitömörítése; törli a régi áll.-t, az újnak Z lesz a kiterjesztése (külön telepíteni kell) -d kitömörítés -f akkor is ha már van ilyen vagy kicsi a tömörítési arány -v mindent kiír uncompress állomány kitömörít, törli a tömörítettet (külön telepíteni kell) gzip kapcsoló állomány tömörít, gz lesz a kiterjesztés -dkitömörítés, törli a tömörítettet

85 Johanyák Zsolt Csaba (c) Feladat  csomagoljuk be tar segítségével a munka könyvtár tartalmát m.tar néven  listáztassuk ki az m.tar állomány tartalmát  tömörítsük be a gzip program segítségével az m.tar állományt

86 Johanyák Zsolt Csaba (c) Feladat  hozzunk létre a saját könyvtárunkból nyílóan egy torold alkönyvtárat, és oda csomagoljuk ki a korábban becsomagolt és betömörített állományokat

87 Johanyák Zsolt Csaba (c) tree kapcsolók könyvtárnév könyvtárstruktúra, állományok, bejegyzések száma (külön telepíteni kell) -a mindent kiír -d csak könyvtár -f teljes elérési út -i nincs vonal -l könyvtárra irányuló szimbolikus linket követ -P minta csak mintának megfelelőt -I minta csak mintától különbözőt -p védelmi kódsor -s méret is -u UID -g GID -D dátum -t idő szerint rendez

88 Johanyák Zsolt Csaba (c) Állományrendszerek felcsatolása és leválasztása  felcsatolás az állományrendszer valamely könyvtára helyére  általában rendszergazdai jogosultság szükséges  felcsatolás mount  lecsatolás umount

89 Johanyák Zsolt Csaba (c) /etc/fstab File Systems Table # /etc/fstab: static file system information. # # # proc /proc proc defaults 0 0 # /dev/sda1 UUID=4512d875-aa af ea94afce / ext3 relatime,errors=remount-ro 0 1 # /dev/sda5 UUID=e54f4a3e-40da-4b3a-bd38-3a79ba2e759c none swap sw 0 0 /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0 ● 5. oszlop „1” – kilépéskor a szuperblokk automatikusan mentődik a lemezre ● 6. oszlop – a rendszer indulásakor milyen sorendben ellenőrizze a fájlrendszereket (1 -> )

90 Johanyák Zsolt Csaba (c) /etc/fstab 5. Oszlop – opciók:  Async – aszinkron írás-olvasás  Exec (noexec) – binárisok futtatását engedélyezi  Noatime – az i-bögök elérési ideje nem változik  Nouser – csak a root csatolhatja  Ro – csak olvasható  Dev, nodev – a meghajtókhoz való hozzáférés

91 Johanyák Zsolt Csaba (c) /etc/mtab  A már csatolt köteteket tartalmazza

92 Johanyák Zsolt Csaba (c) mount /dev/hda1 /dev/hda2

93 Johanyák Zsolt Csaba (c) Mount tábla  /etc/mount  a partíció száma  a szuperblokk pufferére mutató pointer  a mount jegyzék i-böge (mount point)  a gyökér jegyzék i-böge  /etc/fstab

94 Johanyák Zsolt Csaba (c) A szuperblokk tartalma...  a fájlrendszer mérete  a szabad blokkok száma  a szabad blokkok listája + index a listán  az i-lista mérete  a szabad i-bögök száma  a szabad i-bögök listája + index a listához  lock mező a két listához  jelző, hogy történt-e módosítás a szuperblokkban

95 Johanyák Zsolt Csaba (c) Az állományrendszer védelme uid - user identifier gid - group identifier /etc/passwd uid és alap gid /etc/group felhasználó-csoport összerendelések Felhasználói körök:  tulajdonos  csoporttárs  többiek su - superuser (uid=0)

96 Johanyák Zsolt Csaba (c)

97 Johanyák Zsolt Csaba (c) Jogok  olvasás - állomány tartalmának megtekintése, könyvtár esetén a tartalom kilistázása  írás - állomány bővítése, kicserélése, megváltoztatása, ill. könyvtár esetén bejegyzés létrehozása, törlése  végrehajtás - állomány futtatás, könyvtárban keresés, belépés az adott könyvtárba cd -vel, és informálódás az ls utasítás segítségével egy konkrét könyvtár vagy állomány meglétéről és tulajdonságairól

98 Johanyák Zsolt Csaba (c) Védelmi kódsor trwxrwxrwx t - bejegyzés típusa b blokkorientált speciális állomány (pl. /dev/hda1 ) c karakterorientált speciális áll. (pl. /dev/stty4 ) d alkönyvtár-bejegyzés l szimbolikus keresztkapcsolat - egyszerű állomány  tulajdonos  csoporttárs  bárki

99 Johanyák Zsolt Csaba (c) Jogadás Futtatási időre  setgid bit  setuid bit Állandó  chmod  chown  chgrp

100 Johanyák Zsolt Csaba (c) chown újtulajdonos állománynév állomány tulajdonosának megváltoztatása chgrpújcsoportállománynév állomány csoportjának megváltoztatása chmod kapcsoló[kinek] op jogok [op jogok] jogok beállítása - adása kinek : u az aktuális felhasználónak g a csoportnak o a többieknek op + jogokat adunk hozzá - jogokat veszünk el - jogokat veszünk el = pontosan = pontosan

101 Johanyák Zsolt Csaba (c) jogok a következő betűk kombinációi lehetnek: r olvasási jog w írási jog x végrehajtási jog X végrehajtási jog, ha az állomány könyvtár vagy ha már van másik x bitje; s setuid vagy setgid mód chmod g-w állomány chmod +x állomány chmod 622 állomány

102 Johanyák Zsolt Csaba (c) Feladat  állítsuk be a hozzáférést az alábbi minta szerint:  bin : mindenki számára kereshető-olvasható, csak a tulajdonos számára írható  doboz : mindenki számára csak írható, a csoporttársak keresni is tudnak benne, a tulajdonos számára olvasható is

103 Johanyák Zsolt Csaba (c) Fogalmak  programállomány a lemezen  folyamatprogram példány  jobvégrehajtásra váró utasítás  PIDProcess IDentificator  előtérben futó  háttérben futó  démon

104 Johanyák Zsolt Csaba (c) ps kapcsolók információk folyamatokról -Ou felhasználó szerinti sorrend -Op PID szerinti sorrend f fa szerkezetben a más felhasználók is c csak programnevek paraméter és tulajdonosnév nélkül txx csak xx terminál kill kapcsolók PID jel küldése folyamathoz (folyamat leállítása) -s szám jel küldése -l jel lista sleep időtartam időtartam másodpercet várakozik date dátum és idő kiírása utasítás& utasítás a háttérben fut

105 Johanyák Zsolt Csaba (c) A sudo parancs  sudo privilégiumot_igénylő_parancs  sudo su Shell indítása más felhasználó- és csoportazonosítóval:  su felhasználónév  su

106 Johanyák Zsolt Csaba (c) A processzek tulajdonlása  Processz valódi tulajdonosa: a szülő processztől örökli a processz, vagy a szülő állítja be neki – aki elindítja a processzt  Processz effektív tulajdonosa: amely felhasználó jogosultságával a processz rendelkezik  valódi és effektív tulajdonos (uid-dal azonosítva)  valódi és effektív csoport-tulajdos (gid)  az effektív tulajdonosság határozza meg a védelmi tartományt

107 Johanyák Zsolt Csaba (c) A hozzéáférés szabályozás érvényesülése  a folyamat effektív tulajdonosság és a fájl tulajdonosság összevetődik  ha egyezik, a fájl i-bögébe írt, a tulajdonoshoz tartozó rwx hozzáférések szabják meg a hozzáférést vagy elutasítást  ha nem egyezik: a csoport-tulajdonosságok vetődnek össze  egyezés esetén a hozzáférést a csoporthoz rendelt rwx minta szabja meg  ha nem egyezik: az i-bög others rwx-e szabályoz (Bárki számára hozzáférhető fájlom nem biztos, hogy elérhető általam!)

108 Johanyák Zsolt Csaba (c) A setuid koncepció (D. Ritchie)  a valódi és effektív tulajdonosságok sokszor egybeesnek  a setuid/setgid bejegyzésű végrehajtható fájlokból készült processz effektív tulajdonosa a végrehajtható fájl tulajdonosa lesz (valós tulajdonos a szülő processz tulajdonosa)  pl: passwd futtatható fájl tulajdonosa a root, és setuid-os  /etc/passwd fájl tulajdonosa a root, én csak olvashatom. Általam indított passwd processz mégis írhatja.

109 Johanyák Zsolt Csaba (c) Háttér – előtér időzítés programnév& program futtatás a háttérben fg háttérben futó folyamat előhozása at -f állomány óra:perc a megadott időpontban végrehajtja az állomány ban megadott utasításokat

110 Johanyák Zsolt Csaba (c) Időzítés atq kiírja a várakozó és végrehajtás alatt álló időzített feladatokat, rendszergazda számára minden várakozó feladat megjelenik. A sor végén levő jel: a a feladat várakozik = a feladat végrehajtása most folyik

111 Johanyák Zsolt Csaba (c) Átirányítás  Standard input more < help.txt  Standard output ls -la > lista.txt  Standard hibakimenet find / -name *.html 2> hibák

112 Johanyák Zsolt Csaba (c) Parancs csatolás Az első parancs standard kimenete lesz a második parancs standard bemenete. ls -la *.tar | wc -l A képernyőn megjelenik az aktuális könyvtárban található tar kiterjesztésű állományok száma

113 Johanyák Zsolt Csaba (c) Helyettesítő karakterek *0 vagy több tetszőleges karakter ? egy darab tetszőleges karakter [afu]a vagy f vagy u [135]1 vagy 3 vagy 5 [a-g]a -tól g -ig terjedő intervallumból egy karakter [1-6]1 -től 6 -ig terjedő intervallumból egy karakter [a-g1-6] az a -tól g -ig vagy az 1 -től 6 -ig terjedő intervallumból egy karakter

114 Johanyák Zsolt Csaba (c) Semlegesítő karakterek 1 \ A mögötte álló karaktert védi cat > ab\*c ' ' Shell behelyettesítéstől védi a közrefogott szöveget find / -name *.c 2>hibák | grep - l 'int len' megkeresi azokat a c kiterjesztésű állományokat, amelyek tartalmazzák az idézőjelek között megadott szöveget

115 Johanyák Zsolt Csaba (c) Semlegesítő karakterek 2 " " Shell behelyettesítéstől védi a közrefogott szöveget, de a környezeti változókat behelyettesíti ls "${HOME}/ab*c" megnézi, hogy van-e a saját könyvtárunkban ab*c nevű állomány ` ` Kiértékeli a közrefogott parancsot, és annak értékét helyettesíti az idézőjeles kifejezés helyére echo Ebben a könyvtárban `ls | wc -l` darab bejegyzés található

116 Johanyák Zsolt Csaba (c) Feladat  listázzuk ki a /dev könyvtárból a "t"-vel kezdődő és a 3..8-as számok valamelyikével végződő állományok neveit  számoljuk meg, hogy hány olyan állomány van a /dev könyvtárban, amelyben a 0..9 számjegyek egyike szerepel

117 Johanyák Zsolt Csaba (c) Megoldás  ls /dev/t*[3-8]  ls /dev/*[0-9]* | wc -l

118 Johanyák Zsolt Csaba (c) A többi felhasználó who név, terminál, bejelentkezés dátuma, ideje whoami saját felhasználói név w rendszerindítás ideje, bejelentkezett felhasználók száma, terhelés, felhasználók, terminálok, honnan jelentkeztek be, mikor, mit csinálnak

119 Johanyák Zsolt Csaba (c) Kapcsolatteremtés talk felhasználó [terminál] a hívott fél hasonló parancsmegadással kell válaszoljon, kilépés ^C write név a hívott fél hasonló parancsmegadással kell válaszoljon, kilépés ^D mesg [y|n]üzenetfogadás engedélyezése/tiltása/állapot lekérdezése

120 Johanyák Zsolt Csaba (c) Futási szintek  Szolgáltatások (szoftverek) automatikus indítása és leállítása  Az egyes futási szintekhez eltérő jelentés (szolgáltatáscsoport) tartozhat az egyes Linux disztribúciókban

121 Johanyák Zsolt Csaba (c) Futási szintek Ubuntuban 0Halt/Shutdown: minden folyamat leáll, a fájlrendszereket leválasztják, a felhasználókat kijelentkeztetik, a gép biztonságosan kikapcsolható 1Single user mode: rendszergazdaként egyfelhasználós mód, minden /etc/fstab állományrendszer felcsatolásra kerül SSulogin: olyan, mint az 1 de nem állítja le a folyamatokat lefelé váltáskor 2-5Multi user mode: minden /etc/fstab állományrendszer felcsatolásra kerül, grafikus felület 6Reboot: Ugyanaz, mint 0 csak utána újraindul a rendszer az alapértelmezett futási szinten

122 Johanyák Zsolt Csaba (c) Futási szintek Ubuntuban  Ubuntuban eseményvezérelt módon az upstart segítségével oldják meg, ez helyettesíti a más rendszerekben használt /sbin/init-et  Az alapértelmezett futási szintet a /etc/event.d/rc.default fájl határozza meg. Ez alapértelmezés szerint 2  Aktuális futási szint: runlevel  Kiírja a megelőző és az aktuális szintet  N azt jelenti, hogy nem volt előző (a mostani a legelső)

123 Johanyák Zsolt Csaba (c) Futási szintek Ubuntuban  Futási szint váltás: telinit szintszám  Mit kell indítani/leállítani az egyes futási szinteken?  /etc/rc?.d könyvtárak K és S kezdetű szkripteket tartalmaznak, ahol ?=0,1,2,3,4,5,6,S  Minden szkriptnek van egy sorszáma  Először a K kezdetűek, majd az S kezdetűek hajtódnak végre a sorszám alapján  K=KillS=Start  2-es szinten csak S

124 Johanyák Zsolt Csaba (c) Szkriptek  Valójában mindegyik egy szimbolikus link a /etc/init.d könyvtár egy szkriptjére  A szimbolikus hivatkozás kezdete (K vagy S) alapján az upstart az /etc/init.d-ben meghívott szkript végére start-ot vagy stop-ot tesz

125 Johanyák Zsolt Csaba (c) Működési szintek Sytsem V specifikáció szerint (Egyéni tanulmányozásra)  az operációs rendszer állapotára vonatkozik – milyen szolgáltatásokat nyújtson, illetve milyen állapotban legyen  7 szintünk van:  0 : system halt – operációs rendszer leáll, processzor „halt” módba  1 : egyfelhasználós mód – ha valami hiba van  2 : többfelhasználós mód, nincs hálózat

126 Johanyák Zsolt Csaba (c) Működési szintek Sytsem V specifikáció szerint  3 : többfelhasználós, hálózat van, nincs grafikus felület  4 : nem használt  5 : többfelhasználós, van hálózat és grafikus felület  6 : a rendszer újraindítása (reboot)  az egyes processzek elindítását az „init” végzi  az init az operációs rendszer beállításait az /etc/inittab állományból veszi

127 Johanyák Zsolt Csaba (c) /etc/inittab  az állomány formátuma: id:runlevels:action:process  id : 1-4 karakteres egyedi azonosító  runlevels : azokat a szinteket sorolja fel, amelyeken végre kell hajtani a műveletet  action: leírja, hogy milyen műveletet kell végrehajtani  process: a végrehajtandó process  ha a futási szinten változtatunk, akkor az új szintre nem specifikált processzeket kiírtja (SIGTERM, majd SIGKILL)

128 Johanyák Zsolt Csaba (c) /etc/inittab  action mező:  respawn : ha a processz kihal, az init automatikusan újraindítja  wait : a szint elérésekor az init elindítja, majd megvárja amíg véget ér  once : csak egyszer indítja el  boot : az op. r. elindulásakor indítja – a futási szinteket nem veszi figyelembe  bootwait : boot + megvárja, amíg véget ér

129 Johanyák Zsolt Csaba (c)  off : nem csinál semmit  initdefault : a boot folyamat végén erre a szintre lép be – ha nincs megadva, akkor megkérdezi  sysinit : a boot folyamat elején hajtódik végre  ctrlaltdel : a Ctrl_Alt_Delete kombináció lenyomásakor ezt hajtja végre

130 Johanyák Zsolt Csaba (c) rcx.d  az egyes könyvtárakban a szinteknek megfelelő szolgáltatásokat indítja el - x a szint száma S12valami:  S : start vagy stop (K) - a szintre való belépéskor elindítja vagy kilépéskor leállítja  12: hányadikként  valami: név

131 Johanyák Zsolt Csaba (c) Szint váltása  a váltást az init végzi el  feladata az egyes szolgáltatások leállítása, illetve újak indítása:  az inittab alapján  az rcx.d könyvtárak tartalma alapján  meghívás a telinit -en keresztül  paraméterként:  az új szint száma (0-6)  q - az inittab beolvasása  s - egyfelhasználós mód  u - az init újraindul - az inittab -t nem olvassa

132 Johanyák Zsolt Csaba (c) Szint váltás  t x - megmondhatjuk, hogy mennyit várakozzon a SIGTERM és a SIGKILL üzenetek között - alapból 5 másodperc  az init mindig leellenőrzi (binárisan), hogy a meghívója az init vagy a telinit  ha egy processt 2 perc alatt több mint tízszer indít újra, akkor hibaüzenetet ír ki, és 5 percig nem próbálja újraindítani - szintaxis- hibák elleni védelem  az init és a telinit közti kommunikáció a /dev/initctl FIFO állományon keresztül zajlik (egy irányban)

133 Johanyák Zsolt Csaba (c) Démonok manuális kezelése  A szkriptek az /etc/init.d/ könyvtárban vannak  Feladatuk a démonok indítása, leállítása, újraindítása, stb.  Használat: „/etc/init.d/script parancs”  Parancs:  start : szolgáltatás indítása  stop : szolgáltatás leállítása  restart : szolgáltatás újraindítása (stop, majd start)

134 Johanyák Zsolt Csaba (c)  try-restart v. condrestart : újraindítja, de csak akkor, ha már aktív  force-reload : a folyamat újraolvassa a konfigurációs állományát - ha erre nem képes, akkor újraindul  reload : a folyamat újraolvassa a konfigurációs állományát - ha erre nem képes, akkor nem csinál semmit  status : a folyamat állapotát ellenőrzi. Eredmény:  0 : a démon fut  1 : a démon nem fut, de létezik a /var/run/xxx.pid állomány (itt tároljuk a démonhoz tartozó PID-t)  2 : a démon nem fut, de létezik a /var/lock/xxx.lock állomány  3 : a démon nem fut  4 : a démon állapota ismeretlen

135 Johanyák Zsolt Csaba (c)  probe : megvizsgálja az újraindítás szükségességét - amennyiben szükséges, kiírja az indító-szkriptet  nem minden szkript ismer minden parancsot  egyes szkriptek más parancsokat is elfogadnak

136 Johanyák Zsolt Csaba (c) Szoftver csomagok kezelése  Több mint csomag a kiszolgálón  Frissítés figyelés  deb – debian csomag típusok  Előre fordított bináris formátum  Függőség: az aktuális/telepíteni kívánt csomag más csomagok meglétét igényli  Automatikus függőség feloldás

137 Johanyák Zsolt Csaba (c) dpkg  Debian alapú rendszerek csomag- menedzsmentje (telepít/eltávolít/létrehoz)  Nem kezeli a függőségeket  Nem tud automatikusan letölteni és telepíteni más csomagokat  Pl. telepítve van-e a Midnight Commander dpkg -l | grep ‘Midnight Commander’

138 Johanyák Zsolt Csaba (c) apt-get  Parancssori interfész az Advanced Packaging Tool-hoz  Csomagkezelés, teljes rendszerfrissítés  Függőségek kezelése  Telepítés pl.: sudo apt-get install mc  Eltávolítás pl.: sudo apt-get remove mc  --purge: a konfigurációs állományokat is eltávolítja

139 Johanyák Zsolt Csaba (c) Frissítés  A rendelkezésre álló csomagok listájának lokális másolatát sudo apt-get update  A már telepített csomagok frissítése a legújabb változatra sudo apt-get upgrade  Naplózás: /var/log/dpkg.log

140 Johanyák Zsolt Csaba (c) Aptitude  Menüvezérelt karakteres interfész (front-end) az Advanced Packaging Tool-hoz  sudo aptitude

141 Johanyák Zsolt Csaba (c) Automatikus frissítés  sudo apt-get install unattended-upgrade  Konfigurálás: /etc/apt/apt.conf.d/50unattended-upgrades Unattended-Upgrade::Allowed-Origins { "Ubuntu lucid-security"; "Ubuntu lucid-security"; "Ubuntu lucid-updates"; "Ubuntu lucid-updates";}; Unattended-Upgrade::Package-Blacklist { "vim"; "vim";};  Naplózás: /var/log/unattended-upgrades

142 Johanyák Zsolt Csaba (c) Tárolók  Main – a Canonical által támogatott nyílt forráskódú szoftverek (szabad szoftverek)  Restricted – széleskörűen alkalmazott, nem teljesen szabad licenszű, de van Ubuntu támogatás. Általában szabadalmazott eszközmeghajtók, ami nélkül nem futna az Ubuntu a hardveren. Pl. videokártya meghajtó.  Universe – közösségi karbantartású nyílt forráskódú szoftverek, nincs garancia a biztonsági frissítésekre és a támogatásra  Multiverse – nem szabad szoftver, egyedi licensz feltételek, nincs frissítés és támogatás.

143 Johanyák Zsolt Csaba (c) Milyen forrásból telepíthetünk?  Lokálisan - hálózaton keresztül  Tárolók listája: /etc/apt/sources.list  Külön szabályozható a bináris és a forráskód elérése  Más tároló is felvehető a listába, de kell hozzá hitelesítési információ/nyilvános kulcs

144 Johanyák Zsolt Csaba (c) Könyvtárak megosztása  NFS  Samba  WebDAV

145 Network File System NFS

146 Johanyák Zsolt Csaba (c) NFS  Network File System  Szerver-kliens modell  Szerver exportál  Kliens importál  Egy gép mindkettő lehet

147 Johanyák Zsolt Csaba (c) NFS szerver telepítése  sudo apt-get install nfs-kernel-server portmap

148 Johanyák Zsolt Csaba (c) NFS szerver  Szükséges eszközök.  RPC portmapper (rpc.portmap)‏ (apt-get install portmap)  RPC mount-daemon (rpc.mountd)‏  RPC NFS daemon (rpc.nfsd)‏  Exportált könyvtárak: /etc/exports  Minden könyvtár új sorban, mely gépek (teljes név, * és ? használható) milyen jogosultságokkal csatolhatják fel  /home / (rw)‏  /segedlet belzebub(rw)pandora(ro)‏  /ubuntu *(ro,sync,no_root_squash))‏  Az állomány megváltoztatása után: sudo /etc/init.d/nfs-kernel-server start

149 Johanyák Zsolt Csaba (c) Hozzáférés szabályozás  ro – read-only  rw – read-write  root_squash – a kliens rootja semmikép nem kaphat root jogokat erre a fájlrendszerre  sync – a szerver szinkron módon hajtja végre a változtatásokat (csak a végrehajtás után jelez vissza)‏  link_absolute – a szimbolikus hivatkozások változatlanok maradnak  subtree_check – a kérés beérkezése után a szerver leellenőrzi, hogy a cél a fájlrendszeren belül van-e illetve az exportált könyvtárstruktúrában található-e – biztosági probléma: a kliens kap egy leírót és infót a fájlrendszerről, ezért csak ro könyvtárakra!  no_subtree_check – rw könyvtárakra

150 Johanyák Zsolt Csaba (c) NFS kliens  Célszerű telepíteni az nfs-common és a portmap csomagokat  sudo apt-get install nfs-common portmap Könyvtárrendszer importálása  parancssorból mount paranccsal csatolható fel:  sudo mount szerver.valami.hu:/home/megosztas/segedlet /home/segedlet  sudo mount –t nfs bilbo:/home /home  /etc/fstab-ba beépíthető  automatikus felcsatolás  szerver.valami.hu:/segedlet /home/segedlet nfs rw,hard,intr 0 0

151 Johanyák Zsolt Csaba (c)  hard – merev befűzés, ilyenkor a kernel hívásból nincs visszatérés, amíg a kiszolgáló újra elérhetővé nem válik (kill)‏  soft – lágy befűzés, az NFS ügyfél jelzi a kliensnek a hibát és leáll  hard,intr – merev befűzés, de Ctrl+C-vel leállítható  0 0 – az NFS nem használja ezeket a paramétereket Paraméterek

152 Samba

153 Johanyák Zsolt Csaba (c) SMB  Server Message Block  A Windows és az OS/2 használja az erőforrások megosztásánál  Hasonlít az NFS-re  Nagyobb hálózatokhoz továbbfejlesztett változata a CIFS (Common Internet File System)‏

154 Johanyák Zsolt Csaba (c) Megosztás és szolgáltatás  Megosztás: olyan erőforrás, amit egy számítógép az SMB-n keresztül a munkacsoport többi számítógépe számára elérhetővé tesz  hivatkozás a szolgáltatásra: \\gépnév\megosztásnév \\belzebub\segedlet

155 Johanyák Zsolt Csaba (c) Samba  Samba: SMB/CIFS GNU GPL implementáció  Fájl- és nyomtatómegosztás, integráció Windows tartományba, (NT) tartományvezérlő is lehet  Samba kliens: feladata a Windowsos megosztások elérése Linuxos (Unixos) gépről  Samba szerver: feladata Linuxos (Unixos) könyvtárak és nyomtatók megosztása Windowsos gépek számára

156 Johanyák Zsolt Csaba (c) Windows megosztás elérése Linux alól 1  Samba kliens program  karakteres felület  ftp-re emlékeztető működés  Egy adott gépen elérhető megosztások listája: smbclient –L -N smbclient –L tanterem -N  -N jelszó nélküli lekérdezés

157 Johanyák Zsolt Csaba (c) Windows megosztás elérése Linux alól 2  Csatlakozás egy megosztáshoz: smbclient // / /

158 Johanyák Zsolt Csaba (c) Windows megosztás elérése Linux alól 3 Windows megosztás felcsatolása  sudo apt-get install smbfs  sudo smbmount megosztás csatolási_pont –o username=felhasználónév  (rákérdez a jelszóra)‏ Csatolás megszüntetése  sudo smbumount csatolási pont

159 Johanyák Zsolt Csaba (c) Windows megosztás elérése Linux alól 4  Automatikus felcsatolás a gép indulásakor  az /etc/fstab állományba egy új sor:  megosztás csatolásipont smbfs username=felhasználónév,password=jelszó,um ask=  //tanterem/9-labor$ /mnt/9-labor …

160 Johanyák Zsolt Csaba (c) Samba szerver  GNU Public License  könyvtárrendszer és nyomtatók közzététele Windowsos és Linuxos kliensek számára  sudo apt-get install samba smbfs  konfigurálás:  /etc/samba/smb.conf  swat program (http://localhost:901)‏  SMB (CIFS) protokollt valósít meg TCP/IP felett  sudo /etc/init.d/samba restart 

161 Johanyák Zsolt Csaba (c) Samba szerver konfigurálása  minden felhasználót be kell jegyezni  csak a Linuxban (/etc/passwd) már bejegyzett felhasználókat lehet felvenni security=user unix password sync=yes [labor] comment=Labor comment=Labor writeable=yes writeable=yes path=/mnt/9-labor path=/mnt/9-labor public=yes public=yes read list= read list= write write  Konfigurációs állomány tesztelése: testparm

162 Johanyák Zsolt Csaba (c) Felhasználókezelés  smbpasswd -a felhasználónév felhasználó felvétele + jelszóváltoztatás  smbpasswd -x felhasználónév felhasználó törlése  smbpasswd -d felhasználónév felhasználó tiltása  smbpasswd -e felhasználónév felhasználó engedélyezése  Felhasználói adatbázisok: /var/lib/samba

163 Web based Distributed Authoring and Versioning WebDAV

164 Johanyák Zsolt Csaba (c) WebDAV  Eredetileg a csoportos felhasználói munka támogatására találták ki  Ún. web megosztások segítségével lehetővé teszi http protokollon keresztül az állományok szerkesztését, másolását, mozgatását többfajta operációs rendszer alatti ügyfélgépek esetén  Szükséges: Apache 2 + PHP  sudo apt-get install apache2 php5 libapache2-mod-php5

165 Johanyák Zsolt Csaba (c) Konfigurálás 1  Apache-ban engedélyezni kell a mod-dev modult a megfelelő szimbolikus hivatkozások létrehozásával cd /etc/apache2/mods-enabled sudo ln -s../mods-available/dav*.  Létrehozunk egy adatbázis állományt a fájlzárolások számára mkdir /usr/share/apache2/var touch /usr/share/apache2/var/DAVLock

166 Johanyák Zsolt Csaba (c) Konfigurálás 2  Az apache2 www-data felhasználóként fut. Ellenőrzés: ps –ef | grep apache2  Beállítjuk, hogy a var könyvtár és annak tartalma a www-data felhasználói fók tulajdonába kerüljön  chown -R www-data:www-data /usr/share/apache2/var

167 Johanyák Zsolt Csaba (c) Konfigurálás 3  Jelszóállomány létrehozása és hallgato felhasználó felvétele sudo htpasswd -m -c -b /etc/apache2/.htpasswd hallgato hallgato -m: MD5 -c: új állomány létrehozása -b: a parancssorból veszi a jelszót, nem kérdez rá  További felhasználók hozzáadása vagy jelszómódosítás htpasswd -mb /etc/apache2/.htpasswd proba proba

168 Johanyák Zsolt Csaba (c) Konfigurálás 4  Felhasználó törlése  htpasswd -D /etc/apache2/.htpasswd proba  Létrehozzuk a WebDAV gyökérkönyvtárát  mkdir /var/www/WebDAV  A könyvtárat a www-data felhasználó tulajdonába adjuk  chown www-data:www-data /var/www/WebDAV

169 Johanyák Zsolt Csaba (c) Konfigurálás 5  Beállítjuk a rwx r-x --- hozzáférésszabályozást  chmod 750 /var/www/WebDAV  Az Apache 2 konfigurációs állományában:  Az általános részben (Global Environment) – a zárolási adatbázis helye  DAVLockDB /usr/share/apache2/var/DAVLock  DAVMinTimeout 600! Ennyi idő múltán a zár automatikusan feloldódik

170 Johanyák Zsolt Csaba (c) Konfigurálás 6  WebDAV könyvtár megadása Dav on Dav on AuthName "WebDAV Login" AuthName "WebDAV Login" AuthType Basic AuthType Basic

171 Johanyák Zsolt Csaba (c) CUPS  Common Unix Printing System  Ezt használja a legtöbb GNU/Linux disztribúció  Képes nyomtatási feladatok kezelésére  Támogatja a hálózaton keresztül történő nyomtatást az Internet Printing Protocol (IPP) használatával  Támogatja a hálózati nyomtatók automatikus felismerését  Támogatja a Postscript Printer Description-t  Rendelkezik webes felületű konfigurációs/adminisztrációs felülettel  Nyomtat pdf-be ~/PDF könyvtárba

172 Johanyák Zsolt Csaba (c) Telepítés  Alapból feltelepül, de ha szükséges az újratelepítés:  sudo apt-get install cupsys cupsys-client  A kiszolgáló szoftver automatikusan indul telepítés után  Nyomtatási szolgáltatás indítása  sudo /etc/init.d/cupsys start

173 Johanyák Zsolt Csaba (c) Konfigurálás 1  Webes felületen  Asztali gépen Rendszer/Adminisztráció/Nyomtatás (system-config-printer)  Szerveren – parancssorból  /etc/cups/cupsd.conf  Hasonlít az Apache konfigurációs állományára  ServerAdmin  Milyen portokon fogadjon kéréseket?  Listen :631 #loopback  Listen /var/run/cups/cups.sock #socket  Listen IPcím:631 #hálózaton

174 CUPS konfigurálás Webes felületen Johanyák Zsolt Csaba (c)

175 Konfigurálás grafikus felületen Johanyák Zsolt Csaba (c) sudo /etc/init.d/cups restart

176 Johanyák Zsolt Csaba (c) Domain Name Service (DNS)  Osztott hierarchikus név adatbázis  Legfontosabb feladata a név - IP cím feloldás  Amikor az Internet még csak pár ezer számítógépből állt, a név-cím hozzárendelést egy folyamatosan növekvő fájl, hosts táblázat tartalmazta  A táblázatot minden számítógépen lokálisan tárolták, és egy központi helyről rendszeresen frissítették  Ennek nyoma mind a mai napig megvan: pl. a Unix rendszerekben az /etc/hosts fájl éppen ilyen

177 /etc/hosts Johanyák Zsolt Csaba (c)

178 Johanyák Zsolt Csaba (c) BIND  Berkeley Internet Name Domain  leggyakrabban használt DNS implementáció (ISC)  BIND 9   https://help.ubuntu.com/community/BIND9Ser verHowto

179 Johanyák Zsolt Csaba (c) DNS konfigurációs állományok  /etc/bind/named.conf  /etc/bind/named.conf.local  /etc/bind/named.conf.options  zónafájlok

180 Johanyák Zsolt Csaba (c) /etc/bind/named.conf.options - általános beállítások options { directory "/var/cache/bind"; forwarders { ; }; forwarders { ; }; forward first; forward first; listen on port 53 { ;}; listen on port 53 { ;}; query-source address * port 53; query-source address * port 53; allow-querry { ; }; allow-querry { ; }; cleaning-interval 120; cleaning-interval 120; notify yes; notify yes; recursion yes; recursion yes;}

181 Johanyák Zsolt Csaba (c) Magyarázat  directory a szerver munkakönyvtára  forwarders ezekhez továbbítódik a kérés, legfeljebb hármat lehet megadni  forward first először a továbbítással próbálkozik  listen on melyik interfészen milyen porton fogadja a kéréseket (alapért.: mindegyik interfész, 53-as port)  query-source… ha a DNS és az Internet között tűzfal van

182 Johanyák Zsolt Csaba (c) Magyarázat  allow-querry … hosztok és hálózatok, ahonnan kérést lehet küldeni (alapért. : mindenhonnan)  notify yes slave DNS-ek értesítése a zónafájlok változásáról  recursion yes; a DNS hajlandó más DNS-eket lekérdezni nemcsak "láttat"

183 Caching-only NS  Alapból egy caching-only típusú DNS-ként működik  Elegendő a forwarders részben megadni az ISP névszervereit  Majd újraindítani a szervert  /etc/init.d/bind9 restart Johanyák Zsolt Csaba (c)

184 Johanyák Zsolt Csaba (c) /etc/bind/named.conf - zóna beállítások zone "." in { type hint; type hint; file "/etc/bind/db.root"; file "/etc/bind/db.root";}; zone "localhost" in { type master; type master; file "/etc/bind/db.local"; file "/etc/bind/db.local";};

185 Johanyák Zsolt Csaba (c) /etc/named.conf - zóna beállítások zone "127.in-addr.arpa" { type master; file "/etc/bind/db.127"; };

186 Johanyák Zsolt Csaba (c) /etc/named.conf.local - zóna beállítások zone "gyakorlat.hu" { type master; file "/etc/bind/gyakorlat.hu"; }; zone " in-addr.arpa" { type master; file "/etc/bind/ "; };

187 Johanyák Zsolt Csaba (c) Zónatípusok  névfeloldáshoz  kiegészítő: "." ha a nevet pont végződés nélkül adjuk meg akkor ez a zóna mindig hozzá adódik – a gyökérszintű névszerverekről tartalmaz infót a DNS inicializálásához  névtartomány  localhost  valódi zóna  inverz névfeloldáshoz

188 Johanyák Zsolt Csaba (c) Zónafájlok  a névszerverek az egyes zónák adatait egy-egy fájlban tárolják  az elsődleges (master) szerveren az adminisztrátor módosítja ezt a fájlt  rekordokból (RR -resource record) áll  sok fajta rekordot tesz lehetővé az RFC-kben megadott definíció

189 Johanyák Zsolt Csaba (c) Rekordok felépítése  a rekordok alakja (RFC1035):  címke ttl osztály típus adatok  címke: a domain rekord neve, lehet üres, ilyenkor az előtte levő rekord címkéje érvényes  ttl: a rekordhoz tartozó „Time To Live” időt adja meg másodpercben (nem kötelező; ha elhagyjuk, akkor a zónára vonatkozó alapértelmezés lesz a rekordhoz tartozó érték)

190 Johanyák Zsolt Csaba (c) Rekordok felépítése  osztály: IN (Internet osztály) - elhagyható  típus: milyen fajta információról van szó Pl.  IP cím (A rekord)  névszerver információ (NS rekord)  stb.  adatok: a rekord típusától függő információ

191 Johanyák Zsolt Csaba (c) Legfontosabb rekordtípusok  SOA - Start of Authority rekord, zóna kezdő rekord  A - Address, cím rekord  NS - Name Server, névszerver rekord  Glue rekord  CNAME - Canonical Name, kanonikus név rekord  MX - Mail eXchanger, levelező szerver rekord  TXT - szöveges rekord  HINFO - hardver információ rekord  PTR - Pointer rekord

192 Johanyák Zsolt Csaba (c) SOA - Start of Authority rekord, zóna kezdő rekord  megadja a zónára vonatkozó közös információkat otthon.hu. SOA belzebub.otthon.hu. mester.otthon.hu. ( ;Serial nr ;Serial nr. 1D ;Refresh 1D ;Refresh 2H ;Retry 2H ;Retry 1W ;Expire 1W ;Expire 2D) ;TTL 2D) ;TTL

193 Johanyák Zsolt Csaba (c) SOA  otthon.hu. a zóna neve  belzebub.otthon.hu. az elsődleges szerver  mester.otthon.hu. cím értelemben)  serial nr. a zóna sorszáma - a slave szerverek általa ellenőrzik, hogy a náluk levő zóna tartalom nem avult-e el (ÉÉÉÉHHNNVV alakban)

194 Johanyák Zsolt Csaba (c) SOA  refresh (sec) mennyi időnként kell a slave szervereknek a master-től megkérdezni, hogy a zóna sorszáma mennyi  retry (sec) ha a frissítés nem sikerült, akkor mennyi időt várjanak, mielőtt újra próbálkoznának  expire (sec) ha nem sikerül a master-rel kommunikálniuk, ennyi ideig szolgáltatják a zónát a világ számára  TTL a zóna rekordjaira érvényes alapértelmezés  Bind9-nál használható a 1W2D3H alak

195 Johanyák Zsolt Csaba (c) A - Address, cím rekord  egy domain névhez IP címet rendelünk belzebub A  jelentése: belzebub.otthon.hu IP címe:

196 Johanyák Zsolt Csaba (c) NS - Name Server, névszerver rekord  egy domain névszervereinek megadása  a domain egy delegálási pont  pl. osztaly NS gep.osztaly.valami.hu.  az 'osztaly' aldomain névszervere a gep.osztaly.valami.hu.  ajánlatos legalább két névszervert megadni  vagy NS belzebub.otthon.hu

197 Johanyák Zsolt Csaba (c) NS  az otthon.hu zóna alatt nem látszik, hogy a szerverek közül melyik a master és melyik a slave  az NS rekordoknak csak a felsőbb szinten, a szülő zónában van szerepe, indokolt azonban a zónában is felsorolni  paramétere egy gép domain neve

198 Johanyák Zsolt Csaba (c) Glue rekord  a gep.osztaly.otthon.hu rekordnak az osztaly zónában van a helye,  de a otthon.hu zónában is felsoroljuk  gep.osztaly A  az idegen A rekordot nevezik glue (ragadvány) rekordnak  ha az osztaly.valami.hu zónának egy másik névszervere a mas.nevszerver.intezet.hu, akkor ehhez nem kell glue rekordot csatolni a valami.hu zónában, hiszen ennek a névszervernek az A rekordját ettől a delegálástól teljesen függetlenül lehet megtudni

199 Johanyák Zsolt Csaba (c) CNAME - Canonical Name, kanonikus név rekord  becenév egy hostnak www CNAME belzebub  ha ez az otthon.hu zónában van, az azt mutatja, hogy a egy másik neve a belzebub.otthon.hu-nak

200 Johanyák Zsolt Csaba (c) MX - Mail eXchanger, levelező szerver rekord otthon.hu. MX 10 mail.otthon.hu. MX 20 mas.otthon.hu. MX 20 mas.otthon.hu.  a alakú címre érkező leveleket a mail.otthon.hu vagy a mas.otthon.hu. gépekre kell küldeni  10, 20 a rekord preferenciát jelenti, csak akkor van jelentősége, ha több MX rekord tartozik ugyanahhoz a névhez: kisebb szám nagyobb preferenciát jelent

201 Johanyák Zsolt Csaba (c) MX  csak akkor fogják a levelező szerverek a mas.otthon.hu-ra küldeni a otthon.hu domainba szóló leveleket, ha a preferáltabb mail.otthon.hu nem elérhető  egyenlő preferenciánál véletlenszerű, hogy melyikre érkezik be egy-egy levél

202 Johanyák Zsolt Csaba (c) TXT - Text, szöveges rekord  tetszőleges szöveges információt tartalmazhat, pl. modern TXT "Ez a gep mar megszunt"  paramétere egyetlen, idézőjelek közé zárt ASCII karaktersorozat

203 Johanyák Zsolt Csaba (c) PTR - Pointer rekord  cím-név hozzárendelés  szerver programok használják, annak kiderítésére, hogy egy hozzájuk érkezett IP csomag milyen domainhez tartozik  az in-addr.arpa domain alá tartozó ág szolgálja a cím-név felosztást  a zónák delegálása az IP címtartomány egyes darabjainak megfelelően történik

204 Johanyák Zsolt Csaba (c) Központosított felhasználómenedzsment  NIS  LDAP

205 Johanyák Zsolt Csaba (c) NIS  Network Information System  Korábbi neve Sun Yellow Pages (YP)  Konfigurációs állományok adatbázisa (pl. jelszavak)  Egy mester (elsődleges) szerver és több szolga (másodlagos) szerver  Konfigurációs állományok módosítása csak a mester szerveren  Minden Unix rendszer támogatja

206 Johanyák Zsolt Csaba (c) NIS  Pl. /etc/password  jelszó térkép  Letöltve a másodlagos szerverekre  A NIS kliensek nem a lokális password állományt használják, hanem lekérdezik a szervert  NFS-el kiegészítve, ha a felhasználó bárhonnan jelentkezik be, ugyanaz a saját könyvtára

207 Johanyák Zsolt Csaba (c) NIS térképek  Minden szöveges konfigurációs állományból egy bináris adatbázisállomány  Tartomány  /var/yp/ és /var/yp/tartománynév/  2 mező: kulcs és érték  Egy keresett adathoz 3 információ szükséges: tartománynév (NIS-gyakorlat), térképnév (passwd.byname), kulcs (geza)

208 Johanyák Zsolt Csaba (c) NIS szerver beállítás  NIS doménnév megadása  nem kell azonos legyen a DNS tartománnyal  biztonsági ajánlás: eltérő név

209 Johanyák Zsolt Csaba (c) Szerver beállítás  Ez a host legyen egyben NIS ügyfél is  Gyors map disztribúció  Engedélyezi jelszavak cseréjét (GECOS: teljes név; shell)  Egyéb általános beállítások  yp forráskönyvtár: /etc  Jelszavak összeolvasztása: shadow  passwd (nem)  Csoportok összeolvasztása: gshadow  group (nem)  Minimális UID és GID (ez alatt nem oszt szét=titkos)

210 Johanyák Zsolt Csaba (c) Szerver térképek beállítása  Mi lesz elérhető a hálózaton: group, hosts, mail, netid, passwd, rpc, services, shadow  Ki kérdezheti le?  Kötelező:  Hálózati maszk:  Hálózat:  Mindenki:  Hálózati maszk:  Hálózat:

211 Johanyák Zsolt Csaba (c) Módosítások érvényesítése  Ha a közzétett adatbázisok közül valamelyikben módosítunk, pl. új felhasználó felvétele  Akkor a bináris (közzétett) adatbázist is módosítani kell:  cd /var/yp  make –C  Konfig. áll. /var/yp/Makefile

212 Johanyák Zsolt Csaba (c) Kliens beállítása  szerver is lehet NIS kliens, ilyenkor  egyébként pl.:

213 Johanyák Zsolt Csaba (c) Kézi beállításhoz kiegészítés  RPC portmappernek futnia kell  /etc/passwd –ben kiegészítő sor:  +::::::  /etc/shadow –ben kiegészítő sor:  +::::::::  /etc/group –ban kiegészítő sor:  +:::

214 Johanyák Zsolt Csaba (c) Néhány parancs  yppasswd – NIS jelszócsere  ypchfn – GECOS infók cseréje  ypchsh – shell csere  ypwhich – szerver nevének lekérdezése  ypdomainname – NIS tartománynév lekérdezés és csere  hostname

215 Name Service Switch  /etc/nsswitch.conf  Milyen sorrendben történjen a keresés az egyes adatbázisokban és konfigurációs állományokban – hálózati információk ( passwd, group, aliases, hosts, netmasks, etc.)  Felépítés: szolgáltatás : specifikációk  nis, nis-plus, files, db, dns, compat Johanyák Zsolt Csaba (c)

216 Name Service Switch  Pl.: passwd:files ldap hosts:files ldap dns netmasks:files

217 Johanyák Zsolt Csaba (c) LDAP  Lightweight Directory Access Protocol  kliens-szerver protokol címtár szolgáltatás eléréséhez  slapd – a szolgáltatást nyújtó démon  slurpd - szerverek közötti replikáció kiszolgálója  kliens-szerver modellen alapul  egy vagy több LDAP szerveren tárolt adatból épül fel az LDAP fa  az LDAP kliens egy LDAP szerverhez csatlakozik, és felteszi a kérdéseit  a szerver a válasszal reagál, vagy egy mutatóval, hol talál több információt a kliens

218 Johanyák Zsolt Csaba (c) Adatbázisok  három különböző, szabadon választható háttér adatbázis hasznláható:  LDBM, a nagy teljesítményű merevlemez alapú adatbázis  SHELL, az adatbázis interfész tetszőleges UNIX parancs vagy shell-script eléréséhez  PASSWORD, az egyszerű jelszó adatbázis

219 Johanyák Zsolt Csaba (c) Az LDBM adatbázis  4 bájtos egyedi azonosítók minden adathoz  fő indexe az id2entry, ami a bejegyzések egyedi azonosítóit (entry's unique indentifier - EID) összerendeli saját szöveges ábrázolásával  importálás és exportálás LDIF formátumban (LDAP Data Interchange Format)  a bejegyzéseket objektum orientált hiearchikus formában tárolja

220 Johanyák Zsolt Csaba (c) Internet tartomány név alapú fastruktúra  DIT: directory information tree  Hivatkozás a bejegyzésre:RFC4514, RFC4514  DN: distinguished name: uid=babs,ou=People,dc=e xample,dc=com  RDN: Relative Distinguished Name uid=babs

221 Johanyák Zsolt Csaba (c) LDIF dn: o=Nns, c=Hu o: Nns objectclass: organization dn: cn=Halász Gábor, o=Nns, c=Hu cn: Halász Gábor sn: Halász gn: Gábor mail: objectclass: person

222 Johanyák Zsolt Csaba (c) Felépítés  dn - distinguished name (megkülönböztő név) - a bejegyzés nevéből áll, megtoldva a név elérési útjával vissza a címtár hiearchia csúcsáig  alapvető objektum osztályok:  Group (csoport), független objektumok rendezetlen listája vagy objektumok csoportja  Location (elhelyezkedés), az országok nevei és leírásuk  Organization (szervezet)  People (személy)

223 Johanyák Zsolt Csaba (c) Bejegyzések  egy bejegyzés (attribútum) több objektumosztályhoz is tartozhat • cn: Halász Gábor (commonName) • givenname: Gábor • surname: Halász • mail:  a person objektumosztályban  cn és sn attribútumok szükségesek  telephoneNumber, seeAlso és userpassword jellemzők engedélyezettek, de nem szükségesek

224 Johanyák Zsolt Csaba (c) Attribútum szintaxis  minden attribútumnak meghatározott szintaxis definíciója van  bin binary (bináris)  ces case exact string (betűnagyságnak meg kell egyeznie az összehasonlítás során)  cis case ignore string (betűnagyságnak nem kell egyeznie az összehasonlítás során)  tel telephone number string (olyan, mint a cis, de a kihagyásával)

225 Johanyák Zsolt Csaba (c) Az LDAP szerver konfigurálása  hely: /usr/local/etc/openldap vagy /etc/openldap  állomány: slapd.conf  (slapd.oc.conf és slapd.at.conf)

226 Johanyák Zsolt Csaba (c) slapd.conf # megjegyzés - ezek az egész adatbázisra érv. # megjegyzés - ezek az egész adatbázisra érv. # első adatbázis # első adatbázis database database # második adatbázis database database # további adatbázis definíciók

227 Johanyák Zsolt Csaba (c) LDAP szerver indítása  önállóan (LDBM esetén ez ajánlott) $(ETCDIR)/slapd [ ]*  inetd-vel indítva

228 Accessing LDAP  Add, modify, and delete entries with ldapadd, ldapmodify, and ldapdelete  Search the LDAP database with ldapsearch  Bind as some DN or anonymously ldapsearch -D “cn=Directory Manager” -h ldaphost -b “dc=cims,dc=nyu,dc=edu” “uidNumber=9876” gecos  Access to information is controlled by an access control list, e.g. password hashes are not available through anonymous bind

229 DNFS  distributed network file system  Olyan, mint egy RAID rendszer, amit több hoszt segítségével valósítanak meg  Redhat Global File System (GFS2)  Oracle Cluster File System (OCFS2)  Cluster Storage Platform (GlusterFS) Johanyák Zsolt Csaba (c)

230 GFS  Natív kernel támogatás  gfs2-tools cman clvm  Konfig GUI: system-config-cluster  Működhet közvetlenül SAN-ról  Van egy logikai eszköz és vannak logikai kötetek, amiket a CLVM (Cluster Logical Volume Manager) kezel  cman- klaszter menedzsment Johanyák Zsolt Csaba (c)

231 GFS  dlm – distributed lock management – zárolások kezelését végző démon  /etc/cluster/cluster.conf - klaszter konfigurációs állomány  Kötetek létrehozása: clvdm démonnal + pool  Konfiguráció tesztelése - ccs-test  Indítás: cman szkripttel  Felcsatolás: gfs2-tools és mount Johanyák Zsolt Csaba (c)

232 Johanyák Zsolt Csaba (c) Tipikus hozzáférés szabályozási megoldások  DAC – Discretionary Access Control (tetszés szerinti)  Minden objektumnak tulajdonosa van, aki szabályozhatja a hozzáférést  Pl. állományok  MAC – Mandatory Access Control (kötelező)  Hozzáférés-jogosultság kiosztása előre meghatározott módon

233 Johanyák Zsolt Csaba (c) MAC implementáció Ubuntuban  AppArmor (Application Armor) – alapértelmezett  SELinux (Security Enhanced Linux)

234 Johanyák Zsolt Csaba (c) AppArmor  Név alapú MAC-et megvalósító biztonsági modul  Automatikusan feltelepül  Immunix majd Novell fejlesztés (2007-ig),  Elsősorban hálózati alkalmazások védelmére: www, ftp, Samba, CUPS, dhcpkliens  Szabályozás biztonsági házirendekkel  Csomagok: apparmor, apparmor-utils, apparmor- profiles, apparmor-doc  Minden a szabályozás alá tartozó alkalmazáshoz egy profil állomány (biztonsági házirend)

235 Johanyák Zsolt Csaba (c) AppArmor  Indítás: /etc/init.d/apparmor start|stop|restart  Kiszolgáló (pl. Apache, Samba, SQUID, Postfix) telepítésekor települ a hozzá tartozó profil  További profilok az apparmor-profiles csomagban  Üzemmódok  Enforce – kikényszerítő  Complain - figyelmeztető

236 Johanyák Zsolt Csaba (c) apparmor-utils  apparmor_status – kiírja az üzemmódot és a betöltött profilok listáját

237 Johanyák Zsolt Csaba (c)  Profil módosítása után újratöltés  cat profil | sudo apparmor_parser –r  Az összes profil újratöltése  sudo /etc/init.d/apparmor reload

238 Johanyák Zsolt Csaba (c)  enforce – kikényszerített módba helyezi az apparmort  aa_enforce alkalmazás – csak a profilt  complain – figyelmeztető módba helyezi az apparmort  aa_complain alkalmazás – csak a profilt  unconfined – kilistázza azokat az alkalmazásokat, amelyeket nem szabályoz az apparmor  autodep alkalmazás – egy alap profilt készít egy alkalmazáshoz  audit alkalmazás - naplóz

239 Johanyák Zsolt Csaba (c) Konfigurálás  Konfigurációs állományok /etc/apparmor  Profilok /etc/apparmor.d  A profilnév az alkalmazás teljes elérési útvonalát tartalmazza, /-k helyett pontokkal

240 Johanyák Zsolt Csaba (c) Könyvtárak  abstractions, tunables – olyan profil szabályokat tartalmaz, amelyeket több profil közösen használ  disable - az ide belinkelt profilok le vannak tiltva  force-complain

241 Johanyák Zsolt Csaba (c) Profil tartalma  Útvonal – milyen állományokhoz férhet hozzá az alkalmazás  Ha az útvonal *-ban végződik, akkor az adott könyvtár összes állományára vonatkozik  Jogosultságok r,w,x,l (link), stb.  /var/log/samba/log.* w, - az alkalmazás írhatja a samba könyvtár összes log. kezdetű állományát  Képesség (Capability) – milyen privilégiumokat használhat a folyamat

242 Johanyák Zsolt Csaba (c)  include – direktívával illesztik be a hivatkozásokat

243 Tűzfal  Minden be|ki csomag a Netfilter alrendszerhez kerül. Ez dönti el: elfogad|módosít|visszautasít  iptables  Tűzfal konfiguráló, menedzselő eszközök  ufw – parancssor  Firestarter – GUI Johanyák Zsolt Csaba (c)

244 Uncomplicated Firewall  Engedélyezés: sudo ufw enable|disable  Állapot: sudo ufw status [verbose]  Konfig. Állományok: /etc/default/ufw, /etc/ufw/ufw.conf  Szabályok: /lib/ufw/user.rules  Engedélyezés példák  sudo ufw allow szolgáltatásnév|port/protokoll  sudo ufw allow ftp  sudo ufw allow 137/tcp (Samba) Johanyák Zsolt Csaba (c)

245 ufw - tiltás  sudo ufw deny proto tcp from to any port 22  sudo ufw deny 22 Johanyák Zsolt Csaba (c)

246 Utasítások  Szabály törlése  sudo ufw delete allow 137/tcp  Milyen iptables utasítások keletkeznek egy ufw utasítás eredményeképpen?  sudo ufw –dry-run allow http Johanyák Zsolt Csaba (c)

247 Saját profil  Egyes alkalmazások saját profilokat telepítenek, amiben szerepel, hogy milyen portokat kell megnyitni a számukra  /etc/ufw/applications.d könyvtár Johanyák Zsolt Csaba (c)

248 Profilok  Telepített profilok listája  sudo ufw app list  Az alkalmazáshoz kapcsolódó forgalom engedélyezése  sudo ufw allow|deny cups  Profil beállításainak megtekintése  sudo ufw app info cups Johanyák Zsolt Csaba (c)

249 Naplózás  sudo ufw logging off|low|medium|high|full  Hova kerül?  /var/log/messages  /var/log/syslog  /var/log/kern.log Johanyák Zsolt Csaba (c)

250 IP álcázás NAT  Csomagtovábbítás engedélyezése  /etc/default/ufw  DEFAULT_FORWARD_POLICY="ACCEPT"  /etc/ufw/sysctl.conf  net/ipv4/ip_forward=1  NAT tábla konfigurálása  /etc/ufw/before.rules az állomány elejére a fejléc után   # nat Table rules  *nat  :POSTROUTING ACCEPT [0:0]  # Forward traffic from eth1 through eth0.  -A POSTROUTING -s /24 -o eth0 -j MASQUERADE  COMMIT  Változások érvényesítése   sudo ufw disable && sudo ufw enable Johanyák Zsolt Csaba (c)

251 /etc/default/ufw Johanyák Zsolt Csaba (c)

252 /etc/ufw/ufw.conf Johanyák Zsolt Csaba (c)

253 Firestarter  sudo apt-get install firestarter  Rendszer-Adminisztráció-Firestarter  sudo /usr/sbin/firestarter  Varázsló  Eszköz kiválasztása listából (ethx)  Internet kapcsolat megosztás engedélyezése (NAT)  Tűzfal indítása Johanyák Zsolt Csaba (c)

254 Firestarter varázsló Johanyák Zsolt Csaba (c)

255 Firestarter  Szabályok  Bejövő forgalomra  Kimenő forgalomra (alapból engedélyező|alapból tiltó)  Engedélyezés|Tiltás  Gépről  Szolgáltatás  Átirányítás Johanyák Zsolt Csaba (c)

256 Bejövő forgalom szabályai Johanyák Zsolt Csaba (c)

257 Kimenő forgalom szabályai  Fehér listás  Fekete listás Johanyák Zsolt Csaba (c)

258 Diagnosztikai eszközök tiltása Johanyák Zsolt Csaba (c)

259 Parancs futtatása más felhasználó nevében  sudo  sudo  (sudo –u root )  sudo –u  sudo –u Johanyák Zsolt Csaba (c)

260 Sudoers  /etc/sudoers  Ki milyen parancsokat futtathat kinek a nevében?  Mihez kell jelszó?  (Szerkesztő pr. Kiválasztása: sudo select-editor)  Szerkesztés: sudo visudo  Miért visudo?  A sudo indításkor kiolvassa  Szabályozások sorban érvényesülnek, a későbbi felülírhatja a korábbit  Alias (változók)  User_Alias, Runas_Alias, Host_Alias és Cmnd_Alias Johanyák Zsolt Csaba (c)

261 User_Alias példák  # Everybody in the system group "admin" is covered by the # alias ADMINS  User_Alias ADMINS = %admin  # The users "tom", "dick", and "harry" are covered by the # USERS alias  User_Alias USERS = tom, dick, harry  # The users "tom" and "mary" are in the WEBMASTERS alias  User_Alias WEBMASTERS = tom, mary  # You can also use ! to exclude users from an alias # This matches anybody in the USERS alias who isn't in # WEBMASTERS or ADMINS aliases  User_Alias LIMITED_USERS = USERS, !WEBMASTERS, !ADMINS Johanyák Zsolt Csaba (c)

262 Runas_Alias példák  # UID 0 is normally used for root  # Note the hash (#) on the following line # indicates a uid, not a comment.  Runas_Alias ROOT = #0  # This is for all the admin users similar to the # User_Alias of ADMINS set earlier # with the addition of "root"  Runas_Alias ADMINS = %admin, root Johanyák Zsolt Csaba (c)

263 Host_Alias példák  # This is all the servers  Host_Alias SERVERS = , , server1  # This is the whole network  Host_Alias NETWORK = /  # And this is every machine in the network that is not a server  Host_Alias WORKSTATIONS = NETWORK, !SERVERS Johanyák Zsolt Csaba (c)

264 Cmnd_Alias példák  Cmnd_Alias SHUTDOWN_CMDS = /sbin/shutdown, /sbin/halt, /sbin/reboot  Cmnd_Alias AGET = /usr/bin/apt-get Johanyák Zsolt Csaba (c)

265 Hogyan?  =  =  HALLGATO ALL=(ALL) NOPASSWD: SHUTDOWN_CMDS  HALLGATO ALL = (root) NOPASSWD:NOEXEC: /usr/bin/vim  %admin ALL=(ALL)NOPASSWD:/usr/bin/apt-get  %admin hera=(ALL)NOPASSWD:/usr/bin/apt-get  %admin / =(ALL)NOPASSWD:/usr/bin/ apt-get Johanyák Zsolt Csaba (c)

266 Hogyan?  %admin hera=(root)NOPASSWD:/*/sbin/*  ALL ALL=(ALL)NOPASSWD: ALL Johanyák Zsolt Csaba (c)

267 Defaults  sudo –L milyen alap beállításokat kapcsolhatunk be  sudo –l jelenleg érvényes effektív beállítások  Defaults:ALL timestamp_timeout=0 Johanyák Zsolt Csaba (c)

268 Források  https://help.ubuntu.com/community/Sudoers https://help.ubuntu.com/community/Sudoers   Minta konfiguráció: Johanyák Zsolt Csaba (c)

269 Szolgáltatások védelme Kerberos segítségével  Kerberos – Hádész háromfejű kutyája  Hálózati autentikációs protokoll  Ügyfél és kiszolgáló közötti kapcsolatok titkosított autentikációja  Az ügyfél titkosított jelszóval igazolja magát, majd a további kommunikáció is titkosítva történik  Védelem belső és külső támadások ellen Johanyák Zsolt Csaba (c)

270 Kerberos  Universe tároló  Biztonságos változatok az rsh, rcp, telnet, ftp kliensek helyett  apt-get install krb5-server krb5-clients krb5- user krb5-doc Johanyák Zsolt Csaba (c)

271 Johanyák Zsolt Csaba (c) Forrás:

272 Autentikáció 1. Bejelentkezéskor automatikusan 2. A felhasználó kezdeményezi kinit-tel Ez utóbbi menete  A Kerberos felhasználónevet elküldi az Authentication Server (AS)-hez  Az AS visszaküld egy tikett kiutaló tikettet (Ticket Granting Ticket - TGT), amit a felhasználó nyilvános kulcsával titkosít  A kinit bekéri a jelszót, dekódolja a TGT-t Johanyák Zsolt Csaba (c)

273 Autentikáció menete  A kliens program (pl. levelező ügyfél) elküldi a TGT-t a tikett kiadó szerverhez (Ticket Granting Server – TGS)  A TGS generál egy tikettet a levelező szerver szolgáltatás eléréséhez, és titkosítva elküldi az ügyfélhez  Az ügyfél ezzel a tikettel igénybe veszi a szolgáltatást  Ha a felhasználó egy másik szolgáltatást akar igénybe venni, akkor ugrás a dia első pontjához Johanyák Zsolt Csaba (c)

274 VirtualBox telepítés  Telepítési forrás megadása  /etc/apt/sources.list  deb natty contrib  A VirtualBox tároló nyilvános kulcsának letöltése és telepítése  wget -q oracle_vbox.asc -O- | sudo apt-key add - Johanyák Zsolt Csaba (c)

275 VirtualBox telepítés  Csomag adatbázis frissítése  sudo apt-get update  VirtualBox telepítés  sudo apt-get install virtualbox-4.0 dkms  A dkms biztosítja, hogy Linux kernel verzió frissítést követően a VirttualBox hoszt kernel modulok is frissüljenek Johanyák Zsolt Csaba (c)

276 Johanyák Zsolt Csaba (c) Távoli elérés biztonságosan  A telnet, rcp, rsh, rlogin titkosítás nélkül továbbítja az információt  SSH – Secure Shell  Kereskedelmi vált.: SSH Tectia  Szabad vált.: OpenSSH (main Ubuntu tároló)  Hitelesítés nyilvános/titkos kulcspáros alapú megoldással vagy egyes szolgáltatások esetén Kerberos kiszolgáló segítségével (Kerberos tikett)

277 Johanyák Zsolt Csaba (c) Hitelesítés  A kulcshozzáférést külön jelszóval is korlátozhatja  Először a hoszt hitelesítése, majd a felhasználó hitelesítése  A további információáramlás már a kiszolgáló és az ügyfél által közösen választott (vagy előre meghatározott) algoritmussal  Nyilvános kulccsal titkosít a kiszolgáló

278 Johanyák Zsolt Csaba (c) Kiszolgáló  Kiszolgáló telepítése  sudo apt-get install openssh-server  Kiszolgáló indítása, leállítása, újraindítása, állapota  sudo /etc/init.d/ssh start|stop|restart|status  A 22-es porton várja a kéréseket  Automatikus indítás asztali Ubuntunál  Rendszer/Adminisztráció/Szolgáltatások  Nyilvános kulcsot a ~/.ssh/authorized_keys állományhoz kell hozzáadni

279 Johanyák Zsolt Csaba (c) Kiszolgáló konfigurálás /etc/ssh/sshd_config  Port 22 (ez az alapért., de célszerű mást beállítani 1024… 49152, pl. 2222) ssh -P 2222  Üdvözlőszöveg, figyelmeztetés, stb.  Banner /etc/issue.net  Az autentikáció történhet jelszó vagy SSH kulcs alapon*  Jelszó alapú letiltása:  PasswordAuthentication no  Nyilvános kulcs alapú:  PubkeyAuthentication yes  RSAAuthentication yes

280 Konfigurálás  Távoli asztal, grafikus alkalmazások, stb. engedélyezése a kapcsolaton  AllowTcpForwarding yes  X11Forwarding yes  Mely felhasználói fiókok/csoportok használhatják  AllowUsers hallgato geza  Mely felhasználói fiókok/csoportok nem használhatják  DenyUsers jeno istvan Johanyák Zsolt Csaba (c)

281 Konfigurálás  ~/ssh/config  Felhasználói szintű konfiguráció  A konfigurációs állomány szegmensekre van osztva, minden szegmens egy hosztra/az összes hosztra vonatkozó beállításokat tartalmazza  Szegmens  HOST  User Xaver  Compression no  Cipher blowfish Johanyák Zsolt Csaba (c)

282 Ellenőrzés  Fut-e a démon?  ps -A | grep sshd  Fogad-e kapcsolatot?  sudo netstat --inet -lpn | grep sshd  tcp : :* LISTEN /sshd  Próbabejelentkezés lokálisan  ssh -v localhost Johanyák Zsolt Csaba (c)

283 Johanyák Zsolt Csaba (c) Ügyfélgép  Ügyfélszoftver telepítése  sudo apt-get install openssh-client  Kulcsok létrehozása RSA vagy DSA titkosítással  ssh-keygen -t RSA|DSA  Kulcsok: ~/.ssh/id_rsa.pub és ~/.ssh/id_rsa  Titkos kulcsok betöltése a memóriába  ssh-add -l

284 Johanyák Zsolt Csaba (c) Ügyfélprogramok  ssh – parancssori és grafikus (-X kapcsoló) távoli kapcsolatoknál  ssh  scp – fájlok másolása gépek között. Pl. helyi gépről távoli gépre  scp forráfájl  -r egész könyvtár másolható  sftp – a kiszolgálón sftp-server kell fusson (SSH File Transfer Protocol)  sftp gépnév  ssh-copy-id – nyilvános kulcs átmásolása a kiszolgálóra  ssh-copy-id

285 Levelezés

286 Fontos protokollok  SMTP - Simple Mail Transfer Protocol  POP3 - Post Office Protocol  IMAP - Internet Message Access Protocol  HTTP Johanyák Zsolt Csaba (c)

287 SMTP - hagyományosan Johanyák Zsolt Csaba (c) felhasználó terminálnál MUA Várakozó sor MTA Relay MTA MDA MUA Várakozó sor felhasználó terminálnál Várakozó sor Küldő gép A szervezet Internet Fogadó gép B szervezet

288 Aktuális megoldások Johanyák Zsolt Csaba (c)

289 SMTP  Application-level protocol on TCP  Mail system is performed by two agents. – MTA(mail transfer agent): Postfix, Exim, Sendmail, Qmail, Courier – MUA (mail user agent): Thunderbird, Outlook, Eudora, Evolution  Communication between two MTAs uses NVT (Network Virtual Terminal) 7 bit ASCII. – Commands are sent by the client to the server. Johanyák Zsolt Csaba (c)

290 • Typical message format – One part generated by sender’s MTA. – The other part generated by sender’s user agent. • is composed of three pieces. – Envelope : used by the MTAs for delivery. – Header : used by the user agents. – Body : the content of the message. ※ Note : each line transferred using the DATA command must be less than 1000 bytes Johanyák Zsolt Csaba (c) Received: by client.ac.kr. (4.1/SMI-4.1) id AA004303; Mon, 20, Aug 98 12:30:34 MST Message-Id: From: (Sender) Date: Mon, 20, Aug :30: Reply-To: X-Phone: X-Mailer: Mail User’s shell( /23/98) To: Subject: Just testing mail. hello, this is a testing mail. bye.. generated by sender’s MTA generated by sender’s user agent

291 Szerverek lekérdezése Johanyák Zsolt Csaba (c)

292 Limitations in SMTP  Only uses NVT 7 bit ASCII format  How to represent other data types?  No authentication mechanisms  Messages are sent un-encrypted  Susceptible to misuse (Spamming, faking sender address)

293 Solution: SMTP extensions  MIME – Multipurpose Internet Mail Extensions  Transforms non-ASCII data to NVT (Network Virtual Terminal) ASCII data  Text  Application  Image  Audio  Video RFC 1425, 1426, 1521

294 SMTP AUTH  Allows the server to provide features only to known users and limit others.  Various authentication methods may be used (PLAIN, LOGIN, CRAM- MD5, etc.)  Encryption is highly recommended if not enforced by MTA.  Ex. AUTH PLAIN  Simple  Usage: AUTH PLAIN \0 \0  Usage: AUTH PLAIN \0 \0  Authentication string is Base64 encoded RFC 1869, 2554, 2595 MTA Client MTA Server TCP Connection Establishment 220 Service Ready EHLO stimpy.cis.udel.edu 250 Hello stimpy.cis.udel.edu AUTH PLAIN AGV6cmEAYg== 235 Authentication Succeeded MAIL FROM: 250 OK RCPT TO: 250 OK Negotiate Encryption (STARTTLS)

295 can be faked… HELO stimpy.eecis.udel.edu MAIL FROM: RCPT TO: DATA From: Department Chair To: Dr. Paul Amer Subject: CISC856 Dr. Amer, By department decree all students in your CISC856 TCP/IP class are hereby to be given automatic A’s. Thank you, Department Chair.QUIT Solutions • signatures (PGP) • Sender Policy Framework (SPF)

296 MTAs and Mail Access Protocols  The MTA delivers to the user’s mailbox  Can be complex with numerous delivery methods, routers, and ACLs  Exim, Postfix, Sendmail  The Mail Access Protocols are used by the users to retrieve the from the mailbox  POP3  IMAP4

297 Post Office Protocol v3  Simple  Allows the user to obtain a list of their s  Users can retrieve their s  Users can either delete or keep the on their system  Minimizes server resources

298 Internet Mail Access Protocol v4  Has more features than POP3  User can check the header before downloading  s can be accessed from any location  Can search the for a specific string of characters before downloading  User can download parts of an  User can create, delete, or rename mailboxes on a server

299 Levelező szerver  Mail Transfer Agent – levelek fogadása és küldése (szerver)  Postfix  exim4  Levélszűrés – spam és vírus felismerés  Amavis-new  Spamassassin  Clamav  Mail Delivery Agent  Dovecot  Cyrus  Courier  Levelezési lista  Mailman Johanyák Zsolt Csaba (c)

300 Postfix  MTA – levelek küldése és fogadása  sudo apt-get install postfix Johanyák Zsolt Csaba (c)

301 Konfiguráció folytatás  sudo dpkg-reconfigure postfix Johanyák Zsolt Csaba (c)

302 További beállítások  Levelek tárolásásra szolgáló könyvtár megadása  TLS-t alkalmazó SASL hitelesítési mechanizmus beállítása (SMTP-AUTH) – egy hitlesítésszolgáltató által kiadott vagy "önaláírású" tanúsítvány szükséges  Lehetséges SASL megvalósítások: Dovecot SASL (postfix-dovecot csomag) és Cyrus SASL Johanyák Zsolt Csaba (c)

303 Biztonságos FTP szolgáltatás  vsFTPd: kis helyigény és gyorsaság  Hitelesítés: PAM+mySQL  Titkosított kommunikáció: SSL (openssl csomag)  sudo apt-get install vsftpd mysql-server openssl libpam-mysql Johanyák Zsolt Csaba (c) Forrás: Maróti Tamás : Biztonságos FTP-szolgáltatás üzemeltetése vsftpd használatávalhttp://linuxvilag.hu/content/files/cikk/50/cikk_50_48_49.pdf

304 Johanyák Zsolt Csaba (c)

305 mySQL beállítások  sudo useradd vsftpd_mysql  sudo passwd vsftpd_mysql  sudo mysql –u root -p  mysql> CREATE DATABASE vsftpd;  mysql> USE vsftpd;  mysql> CREATE TABLE felhasznalok ( nev char(16) binary, jelszo char(16) binary );  mysql> INSERT INTO felhasznalok ( nev, jelszo ) values ( ‘hallgato’, password( ‘hallgato’ ));  mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON vsftpd.* TO vsftpd_mysql;  mysql> quit Johanyák Zsolt Csaba (c)

306 PAM beállítása MySQL hitelesítéshez  /etc/pam.d/vsftpd – töröljük a tartalmát  auth required pam_mysql.so  user=vsftpd_mysql  passwd=hallgato  host=localhost  db=vsftpd  table=felhasznalok  usercolumn=nev passwdcolumn=jelszo crypt=2 Johanyák Zsolt Csaba (c)

307 SSL kulcs elkészítése  sudo openssl req -x509 -nodes -newkey  rsa:1024 -keyout vsftpd.pem -out vsftpd.pem writing new private key to 'vsftpd.pem' You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank Country Name (2 letter code) [AU]:HU State or Province Name (full name) [Some-State]:Bács-Kiskun Locality Name (eg, city) []:Kecskemét Organization Name (eg, company) [Internet Widgits Pty Ltd]:KF GAMF Organizational Unit Name (eg, section) []:KSII Common Name (eg, YOUR name) []:hallgato Address []:. Johanyák Zsolt Csaba (c)

308 Vsftpd konfigurálása  Konfig állomány: /etc/vsftpd.conf  listen=YES (önálló démonként fut, nem inetd)  anonymous_enable=NO (névtelen bejelentkezést tiltom)  local_enable=YES (helyi felhasználók - akiket a PAM hitelesít bejelentkezhetnek)  write_enable=YES (írási művelet engedélyezése)  local_umask=022 anon_upload_enable=YES  anon_mkdir_write_enable=YES Johanyák Zsolt Csaba (c)

309 Vsftpd konfigurálása  # Engedélyezzük a vendég felhasználót.  # Ez nagyon fontos, mivel ez aktiválja  # a virtuális felhasználó-kezelést.  guest_enable=YES  # Beállítjuk, hogy minden bejelentkezõ felhasználót  # a vsftpd_user felhasználóra mappeljen a szerver  guest_username=vsftpd_user  # Megadjuk a felhasználók egyéni beállításait  # tartalmazó mappa helyét a fájlrendszeren  user_config_dir=/usr/share/vsftpd/users  # Beállítjuk, hogy a vsftpd nevû PAM beállítófájlt  # használjuk az azonosítási procedúrához  pam_service_name=vsftpd Johanyák Zsolt Csaba (c)

310 Vsftpd konfigurálása  # Beállítjuk, hogy mindenki csak a saját  # könyvtárján belül mozoghasson  chroot_local_user=YES  # Itt adhatjuk meg az ftp root könyvtárat,  # de mi most elővigyázatossági okokból az  local_root=/usr/share/vsftpd/empty  # Engedélyezzük az SSL támogatást  ssl_enable=YES Johanyák Zsolt Csaba (c)

311  # Meghatározzuk a.pem fájl helyét  rsa_cert_file=/usr/share/vsftpd.pem  # Kényszerítjük-e a felhasználókat, hogy  # a bejelentkezési információkat SSL-el titkosítsák?  force_local_logins_ssl=NO  # Kényszerítjük-e a felhasználókat, hogy  # az adatfolyamatot SSL-el titkosítsák?  force_local_data_ssl=NO  # Beállítjuk a megfelelő jogosultságokat  # a feltöltött fájlokra..  anon_umask=022 Johanyák Zsolt Csaba (c)

312  sudo mkdir -p /usr/share/vsftpd/empty && chmod 500 /usr/share/vsftpd/empty  sudo mkdir /usr/share/vsftpd/users useradd –d /usr/share/vsftpd/empty vsftpd_user  sudo passwd vsftpd_user Johanyák Zsolt Csaba (c)

313 A felhasználók egyéni beállításai  A konfigurációs fájlban megadott helyen (/usr/share/vsftpd/users) létre kell hozni egy fájlt a felhasználó nevével megegyezően  sudo echo “local_root=/var/www/hallgato.hu” > /usr/share/vsftpd/users/hallgato Johanyák Zsolt Csaba (c)


Letölteni ppt "Hálózati adminisztráció Linux MIN7B6IMIN2B1. Johanyák Zsolt Csaba (c) 20102 Ajánlott irodalom Hivatalos és közösségi dokumentáció"

Hasonló előadás


Google Hirdetések