12. Fájlszerver: SAMBA

Az Internet-megosztás mellett kiszolgálónk másik nagyon fontos feladata a fájlszerver szolgáltatás. Linux operációs rendszeren ezt a Samba nevű programcsomaggal valósítjuk meg. A Samba szabad szoftver, és használatával egy kis vagy közepes intézmény számára állomány- és nyomtatószervert alakíthatunk ki.
Ebben a fejezetben beállítjuk a kiszolgálót, hogy a felhasználóknak bármelyik kliensről hozzáférhető, saját tárhelyet biztosítson. Az adatokat a /home könyvtárban tárolja a kiszolgáló, és a munkaállomásokról felhasználói név és jelszó beírásával elérhető. Munkaállomások operációs rendszereként a Windows XP-t és a Windows 7-et tárgyaljuk.
 
    12.1. A Samba beállítása
 
A Samba programcsomag felkerült a rendszerre telepítéskor, viszont az alapbeállítás szerint nem indul rendszerindításnál. A következő paranccsal ellenőrizhetjük, hogy a program melyik változata van feltelepítve:
 
[root@centos5 ~]# rpm -qa | grep samba
system-config-samba-1.2.41-5.el5
samba-common-3.0.33-3.15.el5_4.1
samba-client-3.0.33-3.15.el5_4.1
samba-3.0.33-3.15.el5_4.1
 
A service smb status parancs pedig a szolgáltatás állapotát árulja el:
 
[root@centos5 ~]# service smb status
smbd is stopped
nmbd is stopped
 
A Samba két démonja, az smb és a nmb segítségével működik. Az smb hitelesíti a felhasználókat és az adatok átvitelét végzi, az nmb pedig a névszolgáltatás.
A Samba konfigurációs állománya az /etc/samba/smb.conf. Ebben az állományban nem csak a # karakterrel, hanem a pontosvesszővel kezdődő sorok is megjegyzéseknek minősülnek. Az mc editorával megváltoztathatjuk az állományt, de még mielőtt módosítanánk, készítsünk másolatot a /root/conf.orig könyvtárba:
 
[root@centos5 ~]# cp /etc/samba/smb.conf /root/conf.orig/
 
A konfigurációs állomány több egységre tagolható. A [global] részben a szolgáltatás egészére vonatkozó beállításokat találjuk. A [homes] részben a /home könyvtárra, vagyis a felhasználók könyvtáraira vonatkozó bejegyzések vannak. A [homes] részhez hasonlóan létrehozhatunk bejegyzéseket, amelyek megosztásként jelennek meg majd a hálózaton.
A http://kmf.uz.ua/centos/gui/server5.zip csomagban megtaláljuk az általam javasolt konfigurációs állományt. Mielőtt átmásolnánk ezt az /etc/samba könyvtárba, hozzunk létre néhány könyvtárat:
 

[root@centos5 ~]# mkdir /home/tanari
[root@centos5 ~]# mkdir -p /megoszt/inst/munkaallomasra
[root@centos5 ~]# mkdir /megoszt/inst/kep
[root@centos5 ~]# mkdir -p /megoszt/oktat/oktatif
 
A következő lépés előtt térjünk vissza a felhasználói fiókokhoz. Emlékezzünk vissza, hogy a szerver hálózati szolgáltatásait csak azok a felhasználók vehetik igénybe, akiket az uj_felhasznalo.scp szkripttel hoztunk létre. Tehát a telepítésnél létrehozott felhasználó (itt pferi) sem. Említettem már, hogy biztonsági szempontból ez jobb, ha így is marad. A hálózati hozzáféréshez létrehoztam az uj_felhasznalo.scp szkriptet használva egy pf nevű fiókot.  Ez a felhasználó a tanar csoport tagja és kap belépési jogosultságot is. Az 5.3. fejezetben leírtak szerint a quotát kikapcsoltam (a soft és hard szavak alatt 0). Ezzel a felhasználói névvel a kiszolgálón is be tudok jelentkezni és munkaállomásokról az Internetet és a HOME könyvtár is elérhető.
 
Módosítsuk a tanarioktat és inst könyvtárak tulajdonságait:
 
[root@centos5 ~]# chown pf:tanar /home/tanari
[root@centos5 ~]# chmod 770 /home/tanari
[root@centos5 ~]# chown -R pf:pf /megoszt/inst
[root@centos5 ~]# chown -R pf:pf /megoszt/oktat
 
A pf felhasználói név helyett sajátunkat írjuk.
 
A következő smb.conf segítségével beállított Samba működését vizsgáljuk meg a gyakorlatban. Az eredeti állományból nem töröltem ki a megjegyzéséket és a mintabeállításokat tartalmazó sorokat, későbbi módosításoknál még szükség lehet rájuk. A következő paranccsal kilistázhatjuk az állományt üres sorok, valamint "#" és ";" karakterekkel kezdődő sorok nélkül:
 
[root@centos5 ~]# cat /etc/samba/smb.conf | sed '/^#/d; /^;/d; /^ *$/d; /^. *#/d;'
 
A parancs kimeneteként csak azok a sorok jelennek meg a képernyőn, amelyek ténylegesen befolyásolják a Samba működését.

Az smb.conf állomány:
 

[global]
        workgroup = SULI
        server string = File Server
        netbios name = HUBA
        interfaces = lo eth1 192.168.55.0/24
        hosts allow = 127. 192.168.55.
        map to guest = bad user
        security = user
        passdb backend = tdbsam
        wins support = yes
        load printers = yes
        load printers = no
        cups options = raw
[homes]
        comment = Home Directories
        path = %H/Dokumentumok
        browseable = no
        writable = yes
        create mask = 0644
        directory mask =0755
        valid users = %S
[printers]
        comment = All Printers
        path = /var/spool/samba
        browseable = no
        guest ok = no
        writable = no
        printable = yes
[admhome]
        comment = Csak admin
        path = /home
        valid users = pf hrobi
        public = no
        writable = no
        share modes = no
        browseable = no
[inst]
        comment = Csak olvas
        path = /megoszt/inst
        guest ok = yes
        writable = no
        share modes = no
[oktat]
        comment = oktatasi anyagok inditofajljai
        path = /megoszt/oktat/oktatif
        guest ok = yes
        writable = no
        share modes = no
[tanari]
        comment = tanaroknak irhato
        path = /home/tanari
        valid users = @tanar
        public = no
        writable = yes
        share modes = no
        browseable = no


A [global] részben beállítjuk a munkacsoport nevét: workgroup = SULI. Ezt módosíthatjuk, de nem tartalmazhat szóközt és speciális karaktereket. Lehetőleg az intézményre utaló szó legyen. Ezt majd minden Windows munkaállomáson be kell állítani.
A netbios name = HUBA, a kiszolgáló nevét adja meg. Módosíthatjuk, vagy maradhat a HUBA is. A következő sorok azt a hálózati interfészt határozzák meg, melyiken működjön a Samba, esetünkben ez az eth1. A belső hálózatunk IP tartományának megadása következik: 192.168.55.1 - 192.168.55.254. Ha szükséges, módosítsuk.
 
A [home] részben meghatároztuk, hogy minden felhasználó könyvtárában lévő Dokumentumok könyvtárat kapják meg a felhasználók saját megosztásként. Ez a könyvtár a felhasználói könyvtárakban ott van, mivel az /etc/skel könyvtárban létrehoztuk. Azért nem a teljes könyvtárat adjuk meg, hogy a felhasználó könyvtárában lévő ponttal kezdődő állományok ne legyenek a munkaállomásokról elérhetőek.
A create mask = 0644 sor beállítja, hogy milyen jogosultságokkal jöjjön létre állomány a kiszolgálón, ha munkaállomásról a HOME könyvtárunkba mentünk. A következő sor ugyanezt állítja be könyvtárra.
 
A következő [admhome] részben beállíthatjuk, hogy bizonyos felhasználók (pl. az informatika-tanárok) olvasási joggal hozzáférhessenek a diákok home könyvtárához is. Ehhez a valid users = pf hrobi sort módosítsuk. Azoknak a tanároknak a felhasználói nevét írjuk ide, akiknek ezt a lehetőséget biztosítani akarjuk. A tájékoztatón a tanulók figyelmét hívjuk fel erre. Ha nem akarjuk használni ezt a megosztást, töröljük a sorokat vagy a sorok elé írjunk # karaktert.
 
Az [inst] részben létrejön egy megosztás, ami mindenki számára olvasható lesz. Az /inst könyvtárba olyan programokat másolhatunk, amelyek a munkaállomások beállításához szükségesek. A browseable = yes sor tallózhatóvá teszi ezt a megosztást. A fenti adminhome megosztásra ez nem igaz, azt csak úgy érhetjük el, ha pontosan hivatkozunk rá: \\huba\admhome.
 
Az [oktat] részben meghatározott megosztásban oktatási anyagok indítófájljai kerülnek a későbbiekben. Tulajdonságai megegyeznek az inst megosztásáéval.
 
Az utolsó [tanari] részben egy speciális megosztást hozunk létre. Lehetőséget teremtünk vele, hogy a tanárok állományokat oszthassanak meg egymással. Ez is csak pontos hivatkozással érhető el, és csak a tanar csoportba tartozó felhasználók férhetnek hozzá. Mivel ez a megosztás is a /home könyvárban jön létre, a tanárok által ide másolt állományaira is érvényes lesz a tárkorlátozás.
 
A Samba elindtása előtt a testparm paranccsal ellenőrizzük le hogy az smb.conf nem tartalmaz-e hibákat:
 

[root@centos5 ~]# testparm
Load smb config files from /etc/samba/smb.conf
Processing section "[homes]"
Processing section "[printers]"
Processing section "[admhome]"
Processing section "[inst]"
Processing section "[oktat]"
Processing section "[tanari]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions

[global]
        workgroup = SULI
        netbios name = HUBA
        server string = File Server
        interfaces = lo, eth1, 192.168.55.0/24
        map to guest = Bad User
        passdb backend = tdbsam
        load printers = No
        wins support = Yes
        hosts allow = 127., 192.168.55.
        cups options = raw

[homes]
...

Indítsuk el a Samba-t és állítsuk be, hogy automatikusan induljon:
 
[root@centos5 ~]# service smb start
[root@centos5 ~]# chkconfig --levels 235 smb on


    12.2. Tartomány vagy munkacsoport?

Amennyiben a munkaállomások operációs rendszere Windows XP Professional vagy Windows 2000, Windows tartományt is használhatunk. Vagyis a Samba képes alapvető tartományvezérlői feladatokat ellátni: felhasználók képesek bejelentkezni a munkaállomásokra saját felhasználói nevükkel és jelszavukkal, úgy, hogy a munkaállomást előzőleg tartományba léptetjük. Akár mozgó profilt (roaming profile) is kialakíthatunk. Ha az összes munkaállomás operációs rendszere ilyen, és a kiszolgálót is nagy teljesítményű és megbízhatóan működő számítógépre telepítettük, megfontolandó a tartomány kialakítása.
 
Én mégsem ezt a módszer fogom bemutatni. Ennek több oka is van. Először is a legtöbb iskolában igen vegyes Windows változatok vannak, és az XP Home Edition változata sem képes tartományban működni. Másod sorban, ha egy gépet több tucat felhasználó is használ - és általában ez a helyzet iskolákban - a munkaállomásokon a Documents and Settings mappában előbb-utóbb minden tanulónak megjelenik a felhasználói profilja. A tartományba lépéskor ugyanis a munkaállomáson létrejön a felhasználó könyvtárba, amit a kiszolgálóra másol kijelentkezéskor. Másik gépre bejelentkezve, ezt ott is létrehozza, a szerverről letöltve az adatokat. Nem beszélve a hálózati forgalomról, amit pl. 20 tanuló bejelentkezése generál akár több 100 megabájtos profilokkal. A használat során a felhasználók túlléphetik a kiszolgálón beállított tárhely korlátot és ilyenkor figyelmeztető üzeneteket kapnak kijelentkezéskor.
 
A roaming profile-t ki is kapcsolhatjuk, akkor viszont a felhasználók fogják nehezen megtalálni a dokumentumaikat, hiszen amikor a gépen dolgoznak, valóban van egy „saját” könyvtáruk. Azt tudom javasolni, hogy olvassunk szakirodalmat a tartományvezérlőként való használatról, és csak akkor alkalmazzuk, ha megvannak hozzá a feltételek. Én azt tapasztaltam, hogy oktatási intézményben, ha valóban saját felhasználói azonosítókat biztosítunk a tanulóknak, több problémát vet fel a használata, mint amennyit megold.
 
Az általam javasolt módszer a következő: munkacsoport és minden kliens számítógépen létrehozunk egy korlátozott jogosultságú felhasználót, és ennek a felhasználónak a jelszava is mindenki számára publikus. Vagyis bárki használhatja az operációs rendszert, bárki beléphet, viszont ez a felhasználó nem módosíthatja az alapvető rendszerbeállításokat, nem telepíthet programokat, nem módosíthatja a jelszavát. Az NTFS jogosultságok beállításával egyszerűen megoldható, hogy az Asztal és a Start menü tartalmát sem módosíthatja ez a felhasználó. A gpedit.msc programmal (Start / Futtatás / gpedit.msc) beállítható a helyi biztonsági házirend. Ennek a felhasználónak a jogosultságával a tanulók hozzáférnek a hálózat mindenki számára elérhető megosztásaihoz. A személyes HOME könyvtáruk pedig, egy program segítségével, saját felhasználói nevük és jelszavuk beírásával érhető el. A tanulók tudnak ideiglenes állományokat a munkaállomásra is menteni, de hamar megtanulják, hogy csak amit a Z: meghajtóra mentenek el, azt érhetik el bármelyik gépről. Kijelentkezve a munkaállomásról a HOME könyvtárukhoz más nem férhet hozzá.
 
Az is e megoldás mellett szól, hogy bármilyen Windows verzióval működik és a hálózat vagy a kiszolgáló meghibásodása esetén a munkaállomások ugyanúgy használhatóak, csak a hálózat nem érhető el. Valamint a tanulók úgy is használhatnak bizonyos szolgáltatásokat, például multimédiás oktatóanyagot a hálózatról, hogy nincs felhasználói azonosítójuk a kiszolgálón.
 
    12.3. A munkaállomás beállítása. Windows XP
  
Rendszergazdai jogosultságú azonosítóval jelentkezzünk be és ellenőrizzük a helyi kapcsolat tulajdonságait. A fájl- és nyomtatómegosztást kapcsoljuk ki (12. 1. ábra). Ezzel megakadályozzuk, hogy a munkaállomáson mappákat, meghajtókat megosszanak a felhasználók. A QoS csomagütemezőre sem lesz szükség.
 
fm
12.1. ábra
 
A Sajátgép tulajdonságainál (vagy Vezérlőpult / Rendszer) adjuk meg a Munkacsoport nevét és egyedi számítógépnevet. A Munkacsoport minden számítógépnél ugyanaz legyen: az amit megadtunk az smb.conf állományban a workgroup sorban megadtunk (12.2. ábra).
 
mcs
12.2. ábra
 
Indítsuk újra számítógépet és adjuk ki a következő parancsokat a parancssor ablakában:
 
c:\net view
c:\net view \\huba
 
Az első parancs megmutatja a hálózati kiszolgáló nevét, a második a megadott kiszolgáló megosztásait. A 12.3. ábrán látjuk, hogy csak a tallózható megosztásokat mutatja. Azokat, amelyeknél az smb.conf állomány tartalmazza a browseable = yes sort

nv
12.3. ábra
 
A Hálózati helyek rendszermappát megnyitva kattintsunk a Munkacsoport számítógépeinek megjelenítése ikonra. Itt meg kell jelennie a kiszolgálónak. Megnyitva látjuk a két megosztást (12.4. ábra).
 
huba
12.4. ábra
 
Hozzuk létre azt a korlátozott felhasználói fiókot a munkaállomásokon, amelyikkel a tanulók bejelentkezhetnek a rendszerbe. Ezt megtehetjük a Vezérlőpult / Felhasználói fiókok ablakában. Ugyanitt a gyors felhasználóváltást és az üdvözlőképernyő használatát kapcsoljuk ki. Bármilyen felhasználói nevet választhatunk, de arra ügyeljünk, hogy ilyen nevű azonosító ne legyen a kiszolgálón. Én a tanulo felhasználói nevet választottam. A jelszó is bármi lehet, akár megegyezhet a felhasználói névvel is. A Felügyeleti eszközök / Számítógép-kezelés / Helyi felhasználók és csoportok / Felhasználók ablakban, a tanulo felhasználó tulajdonságainál állítsuk be, hogy a jelszavát ne változtathassa meg (12.5. ábra).
 
tp
12.5. ábra
 
Ez az azonosító és a hozzá tartozó jelszó legyen publikus, segítségével bárki használhatja a szaktanterem számítógépeit.
 
Az XP Professional operációs rendszeren Vezérlőpult / Mappa beállításai / Nézetablakban kapcsoljuk ki az „Egyszerű fájlmegosztás használata” négyzet jelölését. Ezután már mappákra és állományokra is módosíthatjuk az engedélyeket. Ajánlatos beállítani, hogy a rendszerpartíció gyökérkönyvtárban ne hozhasson létre a tanulo felhasználó mappákat és állományokat. Legjobb, ha csak a C:\Dokuments and Settings\tanulo\Dokumentumok könyvtár írható számára. XP Home Edition esetén már nem ilyen egyszerű helyzet, itt az egyszerű fájlmegosztás mindig be van kapcsolva. Megtalálhatjuk a megoldást, ha rákeresünk az Interneten a következő kifejezésre: „Windows XP Home NTFS Security Shell Extension”. A néhány kilobájtos kiegészítés telepítése után a Professional-hoz hasonlóan beállítható.
A Vezérlőpult / Mappa beállításai / Nézet ablakban kapcsoljuk ki az Hálózati mappák és nyomtatók automatikus keresése és az Ismert fájltípusok kiterjesztésének elrejtése előtti jelöléseket is.
Indítsuk el a Csoportházirendobjektum-szerkesztőt: Start / Futtatás / gpedit.msc. A 12.6. ábrán látható módon tiltsuk le a kapcsolat nélküli fájlok használatát.
 
kn
12.6. ábra
 
Bár nem a hálózati beállításokhoz tartozik, de az egyre több pendrive-on terjedő vírus miatt kapcsoljuk ki az automatikus indítást (12.7. ábra)
 
ai
12.7. ábra
 
Beállíthatunk állandó, a felhasználó által nem módosítható tapétát a munkaállomásokon. Ehhez engedélyezzük az Active Desktop-ot és a 12.8. ábrán látható módon állítsuk be a tapéta tulajdonságait. A háttérkép elérési útja a kiszolgáló megoszására mutat, tehát a Windosw indulásakor a kiszolgálón elhelyezett képet fogja háttérképnek beállítani. A tapétának kiválasztott képet másoljuk a kiszolgáló /megoszt/inst/kep könyvtárába hatter.jpg néven. Így minden munkaállomáson módosítani tudjuk a hatterképet egyetlen állomány cseréjével a kiszolgálón.
 
 tapeta
12.8. ábra
 
Mivel a tanulo felhasználó bejelentkezésekor a munkaállomás a kiszolgáló órájához próbálja igazítani a saját óráját, a helyi biztonsági házirendben (Start / Beállítások / Felügyeleti eszközök / Helyi biztonsági házirend) engedélyezzük a rendszeridő megváltoztatását a tanulo felhasználónak. Ehhez a válasszuk a Felhasználó vagy csoport hozzáadását és írjuk be a felhasználó nevet (12.9. ábra).
 
rend ido
12.9. ábra
 
 
 
    12.4. A HOME könyvtár csatlakozatatása

A http://kmf.uz.ua/centos/gui/server5.zip csomagban lévő alábbi állományokat másoljuk a /megoszt/inst/munkaallomasra könyvtárba:
 
home.cmd
home.hta
indul.cmd
DisablePasswordCaching.vbs

Ezt a könyvárat a munkaállomásról is elérjük az inst megoszás mappájaként. Rendszergazdaként bejelentkezve másoljuk home.cmd és a home.hta állományokat a C:\Windows mappába. Az Asztalon hozzunk létre parancsikont a home.hta állományhoz. A neve legyen HOME, az ikonját módosítsuk (12.10. ábra).

ikon
12.10. ábra
 
Az elkészült parancsikont helyezzük át a C:\Documents and Settings\All Users\Asztal mappába és készítsünk róla másolatot is a C:\Documents and Settings\All Users\Start Menu\Programs\Indítópult mappába. Ez utóbbi mappába másoljuk az indul.cmd állományt is.
Az indul.cmd állomány egy parancsfájl ami a felhasználók bejentkezésekor lefut és lebontja az esetlegesn csatolt hálózati meghajtókat és a munkaállomás óráját a kiszolgáló órájához igazítja.
 
@echo off
net use * /d /y
net time \\huba /set /yes
 
Ezzel elértük, hogy minden hálózati számítógépünk órája pontos lesz: a kiszolgáló internetes idő kiszolgálókhoz igazítja óráját, a munkaállomások pedig a kiszolgálóhoz.
Jelentkezzünk ki a munkaállomáson majd jelentkezzünk be tanulo felhasználó névvel. Mivel a HOME parancsikont az Indítópult mappába is bemásoltuk, elindul a home.hta program. A megjelenő ablakba írjuk be az egyik tanar csoportban lévő felhasználónk jelszavát (12.11. ábra).
 
hta
12.11. ábra
 
A jelszó beírásakor a karakterek szimbólummal helyettesítődnek. A mezők között egérrel vagy a TAB billentyűvel válthatunk. Az OK gombra kattintva, vagy a TAB-al kiválasztva és az Enter billentyűt leütve létrejön a Z: meghajtó és az intéző ablaka is megnyílik e meghajtó tartalmával. Ez a HOME könyvtárunk, jelen esetben nagypeti HOME könyvtára. Mivel ő a tanar csoportba tartozik a meghajtó kapacitása 490 Mbájt (12.12. ábra).
 
z
12.12. ábra
 
A meghajtó a kiszolgáló /home/nagypeti/Dokumentumok könyvtára. A Z: meghajtó írható-olvasható, más, a jelszó ismerete nélkül, nem férhet hozzá. Bármelyik (a leírtak szerint beállított)
számítógépről is jelentkezünk be, mindíg a saját HOME könyvtárunkat kapjuk Z: meghajtóként. Munkánkat befejezve mindíg jelentkezzünk ki a munkaállomásokon. Erre hívjuk fel a tanulók és a tanárok figyelmét is.

A home.hta állomány:

<html lang = "hu">
<head>
<body onload="window.resizeTo(455,330)">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta content="text/html; charset=UTF-8" http-equiv="content-type">
<title>SULI Home könyvtár</title>
</head>

<script language="VBScript">
    <!--
        Sub OKButton_OnClick
            driveletter = "Z:"
            name = UserNameBox.value
            name = Trim(name)
            pswd = PasswordBox.value
            pswd = Trim(pswd)
                UserNameBox.value = ""
                PasswordBox.value = ""
                Set WshShell = CreateObject("Wscript.Shell")
                WshShell.Run "net use z: \\huba\homes /PERSISTENT:NO " & pswd & " /user:" & name,,True
                WshShell.Run "explorer z:"
         End Sub

    '-->
</script>
<body bgcolor="#66FFCC">

<p></p>
<p align="center"> <font face="Arial">
<b>HOME könyvtár csatlakoztatása</b></font></p>
<p align="left" style="margin-top: 0; margin-bottom: 0">
<font face="Arial" size="2">Home könyvtára <b>Z:</b> meghajtóként megjelenik a Sajátgépben. </font>
</p> <p align="left" style="margin-top: 0; margin-bottom: 0"> <font face="Arial"
size="2"> A meghajtó alapértelmezett mérete 200 Mb. Mielőtt elhagyja a gépet, mindenképp jelentkezzen ki!</font></p>
<p><b>Írja be felhasználói nevét: </b>
<input TYPE="text" Name="UserNameBox" size="20"> </p>
<p><b>Írja be jelszavát: </b>
<input TYPE="password" Name="PasswordBox" size="20"> </p><p>
<input NAME="OKButton" TYPE="BUTTON" VALUE="OK"> </p><p></p>
</body>
</body>
</html>

 
A módszer hibájaként meg kell említeni, hogy ha huzamosabb ideig dolgozunk tanulo felhasználóként a gépen, és ezután próbáljuk a Z: meghajtót csatlakoztatni, a kapcsolat nem épül fel, hibaüzenetet kapunk. Kijelentkezve és ismét bejelentkezve már használhatjuk a HOME könyvtárat. Azért indul automatukusan bejelentkezéskor a home.hta, hogy figyelmeztesse a felhasználót, a HOME könyvtárhoz más hálózati helyek megnyitása előtt kell csatlakoznia.
 
Ismételten elindítva programot hiába írunk másik felhasználói nevet és jelszót, a Z: meghajtó az első bejelentkezett felhasználó home könyvtárát mutatja. Kijelentkezéskor a kapcsolat megszakad, tanulo-ként újra bejelentkezve, nincs hálózati meghajtó csatlakoztatva. A felhasználókat figyelmeztessük, hogy munkájuk végeztével jelentkezzenek ki, vagy kapcsolják ki gépet, hogy a személyes adataikhoz más ne férhessen hozzá.

A Home könyvtár csatlakozatásának második módja az elsőnél lényegesen egyszerűbb. A home.cmd parancsfájlt a Windows könyvtárba másoltuk, ezért bárhol kiadva home parancsot, az operációs rendszer végrehajtja a home.cmd-t. A home.cmd tartalma a következő:
 
net use z: /user:%1 \\huba\homes /PERSISTENT:NO
explorer z:
 
tanulo felhasználói névvel újra bejelentkezve a Start / Futtatás ablakba írjuk be a home parancsot és paraméternek a felhasználói nevet (12.13. ábra)
 
hcmd
12.13. ábra
 
Megnyílik a parancssor ablaka, ahol meg kell adni a felhasználói jelszót (12.14. ábra). A jelszó karakterei nem jelennek meg az ablakban.
 
dj
12.14. ábra
 
Meg kell jegyeznünk, hogy ha a munkaállomáson létrehozunk egy fiókot ugyanolyan felhasználói névvel és jelszóval mint a kiszolgálón, akkor ennek a felhasználónak nem kell megani a jelszavát a hálózati kapcsolatokhoz. A Windows az ő jelszavát (amivel bejelentkezett) automatikusan továbbítja a kiszolgálónak. A net use z: \\huba\homes parancs létrehozza a meghajtót. Bizonyos gépek esetén ennek a módszernek is van létjogosultsága (pl. igazgató, titkárnő gépe).

 
A \\huba\inst\munkaallomasra helyen található DisablePasswordCaching.vbs szkript lefuttatásával érhetjük el, hogy az Internet Explorer ne ajálja fel a jelszó mentését. A Windows registry több bejegyzését is módosítja a szkript, tanulo felhasználóként bejelentkezve futtassuk le. 
 
 
    12.5. Az OKTAT, a TANARI és az ADMHOME megosztások


Rendszergazdaként hozzunk létre az Asztalon egy parancsikont OKTAT néven ami a \\huba\oktat megosztást nyitja meg (12.15. ábra).

o1
12.15. ábra
 
Módosítsuk a parancsikon tulajdonságait. A tanulo felhasználónak adjunk olvasás és végrehajtás jogot: gyorsmenü / tulajdonságok / Biztonság / Hozzáadás (2.16. ábra).
 
o2
2.16. ábra
 
Figyeljük meg a tanulo jogait a 2.17. ábrán. Csak olvasni és végrejatani tudja a parancsikont. Törölni, módosítani nem.
 
o3
2.17. ábra
 
Az elkészült parancsikont helyezzük át a C:\Documents and Settings\All Users\Asztal mappába.
 
A TANARI megosztást a tanar csoportba tartozó felhasználók használhatják. Közös tárhelyet biztosíthatunk vele a tanároknak. Az alábbi, tanari.cmd nevű  parancsfájl létrehoz egy T: meghajtót, ahol a tanárok létrehozhatnak mappákat fájlokat. A mások által itt létrehozott tartalmak olvashatóak, de nem módosíthatóak és törölhetőek. Törölni mindenki csak a saját állományait tudja. Ezzel a tanárok dokumentumokat tudnak egymással megosztani, ami megkönnyíti, hogy közös projekten dolgozzanak.

net use t: \\huba\tanari /PERSISTENT:NO
explorer t:
 
A parancsfájl nem kér jelszót, ha előzőleg tanar csoport tagságú azonosítóval bejelentkeztünk a HOME könyvtárba. Figyeljük meg a T: meghajtó tulajdonságait (12.18. ábra).
 
ti
12.18. ábra
 
Amennyiben szükséges, az is megoldható, hogy az ide létrehozott dokumentumok minden tanár által módosíthatóak legyenek. Az smb.conf állományban megadhatjuk, hogy milyen jogosultsággal jöjjenek létre állományok és könyvtárak. A [tanari] részbe írjuk a következő sorokat:
 
        create mask = 0664
        directory mask =0775
 
Azokon a gépeken, amelyeket tanárok is használnak, hozzunk létre parancsikont az asztalra TANARI néven, ami a tanari.cmd parancsfájlt indítja el.
 
Az admhome megosztást a tanari megosztéshoz hasonlóan használhatjuk, de csak akkor, ha előzőleg olyan felhasználói névvel jelentkeztünk be a HOME könyvtárba, amit taralmaz az smb.conf állomány valid users sora az [admhome] részben. Az alábbi parancs X: meghajtóként csatolja fel a kiszolgáló /home könyvtárát.
 
net use x: \\huba\admhome /PERSISTENT:NO
 
Megnyitva az X: meghajtót látjuk mindenkinek a HOME könyvtárát. A tanulókét meg tudjuk nyitni, de csak olvasásra. A tanárok könyvtárára kattintva hibaüzenetet kapunk, a kiszolgáló megtagadja a hozzáférést. Ezzel a módszerrel a tanárok ellenőrizhetik a tanulóik munkáit.
 
 
    12.6. Oktatási anyagok a kiszolgálón
 
A kiszolgálón elhelyezhetünk oktatási és ismeretterjesztő anyagokat, ami minden munkaállomásról elérhető lesz. Az Interneten sok szabadon használható oktatási anyagot találhatunk különböző témakörökben.
A http://www.szoftverbazis.hu oldalról, az Oktatóprogramok kategóriából letölthető „Manómatek 4 ” program példáján mutatom be a rendszer működését.
 
Vázlatosan a rendszer a következőképpen működik:
 
1.    Létrehozunk egy alkönyvtárat a kiszolgáló /megoszt/oktat könyvtárában
2.    Ebbe a könyvtárba másoljuk a programot
3.    Az smb.conf állományban egy megosztást hozunk létre erre a könyvtárra
4.    Készítünk egy kötegfájlt, amit elhelyezünk a már megosztott és minden munkaállomás asztaláról elérhető /oktat/oktatási_anyagok könyvtárban
5.    A kötegfájl leválasztja az esetleg létező W: meghajtót, (ha előtte egy másik oktatóanyagot használtunk) W: meghajtóként csatlakoztatja az új megosztást a munkaállomáshoz és elindítja az oktatási anyagot.

Ennek a módszernek az az előnye, hogy az oktatási anyag közzétételéhez nem kell semmit sem módosítani a munkaállomásokon.
 
A kiszolgálón letöltjük a zip állományt, kitömörítjük a létrehozott /oktat/manomatek4d könyvtárba.
Az smb.conf állományt bővítjük a következő sorokkal:
 
[manomatek4]
        comment = Manomatek 4
        path = /megoszt/oktat/manomatek4d
        guest ok = yes
        writable = no
        share modes = no
        browseable = no
 
Újraindítjuk a Sambát:
 
[root@centos5 ~]# service smb restart
 
Az /oktat/oktatif könyvtárba létrehozzuk a manomatek4.bat állományt:
 
net use w: /delete /yes
net use w: \\huba\manomatek4
w:
start.exe
 
Az állományt Windows-on hozzuk létre és a Z: meghajtó segítségével másoljuk a szerverre, hogy a sorvégi karakterek megfelelőek legyenek (12.19. ábra).

m1
12.19. ábra
 
Megnyitva az OKTAT parancsikont az Asztalon, látjuk a kötegfájlt (12.20. ábra). Elindítva létrejön a W: meghajtó, és elindul a program.
 
m2
12.20. ábra

Nemcsak programokhoz használhatjuk, hanem minden esetben, amikor könnyen elérhetővé kell tenni dokumentumokat, képeket, prezentációkat vagy akár hanganyagokat, oktatófilmeket. Ebben az esetben a bat állomány csak két soros: leválasztja az esetleg létező W: meghajtót és a megfelelő megosztást felcsatolja W: meghajtóként. Esetleg kibővíthetjük egy explorer w: sorral. A felhasználók a meghajtó tartalmát a munkaállomásokról nem módosíthatják.

 
    12.7. Zárthelyi dolgozatok begyűjtése program segítségével
 
Informatika órákon gyakran problémát okoz, hogy a tanulók által készített munkákat nem egyszerű összegyűjteni a tanároknak. A megfelelően beállított munkaállomás és a HOME könyvtár használata biztosítja, hogy a tanulók nem cserélhetnek állományokat egymással. A következő rövid program segítségével a tanár másolatot készíthet az adott osztály tanulóinak munkáiról. A program lefuttatása után a tanulók már hiába módosítják munkáikat, a javítandó másolatok már a tanár könyvtárában vannak.
A program működéséhez nincs szükség root jogosultságra. A tanárok közül bárki használhatja, akinek belépési jogot biztosítottunk a kiszolgálóra.

A dolgozat.scp program:

#!/bin/bash
clear
TANAR=pf
DATE=`date +'%Y_%m_%d-%k_%M'`
echo "A tanulók önalló munkainak másolása"
echo "Add meg az osztaly csoportazonosítóját"
echo
read CSOPORT
if test -s /etc/squid/csoportok/"$CSOPORT".txt
then
echo "Ennek az osztalynak tanulói:"
for i in `cat /etc/squid/csoportok/"$CSOPORT".txt`
do
cat /etc/passwd | echo -n " " `grep -w $i | cut -d":" -f5 `
done
echo
echo '? (y/n)'
read B
    if test $B = "y"
    then
    mkdir /home/$TANAR/Dokumentumok/dolgozat_"$DATE"_"$CSOPORT"
    echo "Add meg a könyvtár nevét amit a tanulók létrehoztak:"
    read DIR
    for j in `cat /etc/squid/csoportok/"$CSOPORT".txt`
    do
    NEV=`cat /etc/passwd | grep -w $j | cut -d":" -f5 `
    mkdir /home/$TANAR/Dokumentumok/dolgozat_"$DATE"_"$CSOPORT"/"$NEV"
    rsync -agE /home/"$j"/Dokumentumok/"$DIR"/ /home/$TANAR/Dokumentumok/dolgozat_"$DATE"_"$CSOPORT"/"$NEV"
    done
fi
exit 0
else
echo "nincs ilyen csoport!"
fi
 
A programot másoljuk a home könyvtárunkba, és azoknak a tanároknak a home könyvtárába, akiknek adtunk belépési jogot a kiszolgálóra. A harmadik sorban változtassuk meg a felhasználói nevet.
A programban itt pf szerepel.
A program futtatásához a ./dolgozat.scp parancsot kell kiadni, és beírni az osztály csoportazonosítóját. A képernyőn megjelenő osztálynévsor alapján leellenőrizhetjük, hogy megfelelő osztályt választottunk. Ezután be kell írni annak a könyvtárnak a nevét, amit a tanulók létrehoztak a Z: meghajtón a dolgozat megírásához, és amelyikbe mentették dokumentumaikat. Fontos, hogy e könyvár neve pontosan megegyezzen az általunk megadottal (kis- és nagybetű és egy szóköz is számít).
 
A program ellenőrzéséhez a g2002a csoport felhasználói neveivel bejelentkeztem különböző munkaállomásokra és a Z: meghajtón létrehoztam a 0420 nevű könyvtárat. Ebbe a könyvtárba elmentettem egy vagy több dokumentumot minden munkaállomáson. ssh-val bejelentkezve a kiszolgálóra lefuttattam a programot. A következő néhány sorban látjuk a program működését. A félkövérrel kiemelt sorokat be kell írni.
 
[pf@centos5 ~]# ./dolgozat.scp
A tanulók önalló munkainak másolasa
Add meg az osztaly csoportazonositóját:

g2002a
Ennek az osztalynak tanulói:
  Szabo Hajnalka  Szegedi Pal  Ligeti Lajos  Nagy Piroska
? (y/n)
y
Add meg a könyvtár nevét amit a tanulók létrehoztak:
0420
[pf@server ~]$
 
A 12.21. ábrán látjuk, hogy a Z: meghajtón létrejött egy mappa, amelynek nevében szerepel az aktuális dátum és a csoportazonosító.
(A program módosítása után a dátum mellett az idő is szerepel) Ebben minden tanuló nevével létrejön egy könyvtár, benne az átmásolt tartalmakkal.
 
 
zh1
12.21. ábra
 

 
 
    12.8. A munkaállomás beállítása. Windows 7
 
 
Az újabb Microsoft Windows operációs rendszerek közül a Windows 7 professional-al ellenőriztem a kiszolgáló működését. Mivel a beállítása sok szempontból megegyezik a Windows XP-vel, csak néhány jellegzetes momentumot mutatok be. Az IP beállításait a Vezérlőpult / Minden vezérlőpultelem / Hálózati és megosztási központ / Helyi kapcsolat -ra kattintva végezhetjük el. Az ablakban több elemet látunk, de itt is elég ha csak az IPv4 és a MN ügyfél aktív (12.22. ábra).
 

7ip
12.22. ábra
 
A számítógép és a munkacsoport nevének megadása a Vezérlőpult / Minden vezérlőpultelem / Rendszer ablakban a Beállítások módosítása segítségével  történik (12.23. ábra). A megjelenő ablak ugyan az mint XP esetén.
 
w7nev
12.23. ábra
 
Hozzuk létre a tanulo felhasználót általános jogú felhasználóként. A Felügyeleti eszközök / Számítógép-kezelés / Helyi felhasználók és csoportok / Felhasználók ablakban, a tanulo felhasználó tulajdonságainál állítsuk be, hogy a jelszavát ne változtathassa meg
 
A Vezérlőpult / Mappa beállításai / Nézet ablakban kapcsoljuk ki az A megosztásvarázsló használata és az Ismert fájltípusok kiterjesztésének elrejtése előtti jelöléseket. A Rejtett fájlok, mappák és meghatók megjelenítését kapcsoljuk be.
 
Indítsuk el a Csoportházirendobjektum-szerkesztőt: Start / Futtatás / gpedit.msc. A 12.24. ábrán látható módon tiltsuk le az Offline fájlok használatának engedélyezését. Ugyanitt A "Legyen elérhető offline módban" beállítás eltávolitását engedélyezzük.


off
12.24. ábra
 
Az automatikus indítás kiakpcsolása, az állandó háttér beállítása, az OKTAT parancsikon létrehozása az Asztalon és a felhasználói jogok kiosztása (rendszeridő megváltoztatása) az ugyanúgy történik mint XP esetén.
 
Rendszergazdai jugusultsággal másoljuk a másoljuk home.cmd és a home.hta állományokat a C:\Windows mappába. Az Asztalon hozzunk létre parancsikont a home.hta állományhoz. A neve legyen HOME, az ikonját módosítsuk. A tanulo felhasználónak adjunk olvasás és végrehajtás jogot. Másoljuk a parancsikont a tanulo Asztalára és a 
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup mappába is. Másoljuk ugyanebbe a mappába az indul.cmd állományt. Ezzel beállítottuk, hogy bejelentkezéskor elindul a home.hta parogram és lefut az indul.cmd kötegfájl (12.15., 12.26. ábrák)
A Rejtett fájlok, mappák és meghatók megjelenítését kapcsoljuk ki.
 
7h1
12.25. ábra
 
w7h2
12.26. ábra