You are on page 1of 39

ROBERT ECKSTEIN

DAVID COLLIER-BROWN
PETER KELLY

Samba

ROBERT ECKSTEIN
DAVID COLLIER-BROWN
PETER KELLY

KOSSUTH KIAD

A FORDTS AZ ALBBI KIADS ALAPJN KSZLT


ROBERT ECKSTEIN, DAVID COLLIER-BROWN, PETER KELLY
USING SAMBA
OREILLY & ASSOCIATES, INC.,
101 MORRIS STREET, SEBASTOPOL, CA 95472, USA

FORDTOTTA

INOTAI LSZL
LEKTORLTK

A LINUX MAGYARORSZG KFT. MUNKATRSAI


SZAKMAI VEZET HALUSKA GYRGY

ISBN 963 09 4252 6


OREILLY & ASSOCIATES, INC., 2001. ALL RIGHTS RESERVED
KOSSUTH KIAD 2001
Jelen kiadvny kizrlag a licencben meghatrozott felttelek s kvetelmnyek szerint terjeszthet.
Ezek rszletesen megtallhatk az OReilly & Associates honlapjn a kvetkez cmen:
http://www.oreilly.com/catalog/samba/chapter/licensinfo. A knyv brmely rszlete, valamint
a knyvbl kszlt kivonat terjesztse esetn ugyancsak mindig fel kell tntetni a szrmazsi helyet.

Elsz

Reggel kilenc ra, s ppen most rkeztnk egy kellemesen taludt jszaka utn a szmtgpkzpontba. Rendszergazdaknt kellemes az letnk mirt is ne lenne az, ha kivlan mkdik a hlzatunk? Ktszz egyforma szmtgp, s mindegyiken ugyanaz az
opercis rendszer. Az sszes nyomtat bektve a hlzatba, s brmelyik brhonnan
elrhet az pleten bell. Az automata konfigurcis szkripteknek ksznheten a cg
sszes dolgozja szmra azonos mdon jelennek meg azok a megosztott lemezek, amelyeket belltottunk a szmukra. Igen, gy valban kellemes az let. Htradlnk a karosszkben, s belekstolunk az els reggeli kvba
Aztn egyszer csak riaszts zkkent ki bennnket a kellemes semmittevsbl. Csak
rossz lom lehet gondoljuk. Sajnos nem, ez a valsg! Ngy klnbz szmtgp
hrom eltr opercis rendszert futtatva ktsgbeesetten prbl meg kapcsolatot teremteni, s sznet nlkl cseng a telefon. A felhasznlink tbbsge nem rti, mirt nem tud
hozzfrni egy msik szmtgpen lv llomnyhoz, vagy mirt nem tud nyomtatni egy
tvoli nyomtatn. A naplfjlok arrl tanskodnak, hogy mr ks biztonsgi msolatokat kszteni. Valamilyen rejtlyes oknl fogva a msodik emeleten lv PC nem tallja a
szalagkiszolglt. Mit tehet ilyen nehz helyzetben egy rendszergazda?
Egyszer a vlasz: vegyen ki egy nap szabadsgot, olvassa el ezt a knyvet, s tanuljon
meg Sambzni!

A Samba
A Samba egy sor eszkzbl ll, amelyek segtsgvel a hlzaton olyan erforrsok oszthatk meg, mint a nyomtatk s a fjlok. Ezzel ugyan egy kicsit leegyszerstjk a dolgot,
de a Samba tnyleg arra hasznlhat, hogy knnyebb tegye az letnket. A Samba a Microsoft s az IBM ltal is elfogadott Server Message Block (SMB) protokollt hasznlja arra,
hogy TCP/IP hlzaton keresztl alacsony szinten adatokat cserljen Windows gyfelek
s Unix kiszolglk kztt.
A ngy kpessg, amely rendkvl vonzv teszi a Sambt:
A Samba ugyanazt az SMB protokollt hasznlja, amelyet a Microsoft s az IBM opercis rendszerei is hasznlnak a DOS 3.0 verzija ta.
A Samba klnbz platformokon futhat, belertve a Unix, az OpenVMS, az OS/2, az
AmigaDOS s a NetWare klnbz vltozatait. Ez azt jelenti, hogy a kiszolgln egyetlen program futtatsval tehetjk elrhetv a fjlokat s a nyomtatkat a PC-s kzssg szmra.

SAMBA

A Samba szabad szoftver. A Sambnak kereskedelmi forgalomban kaphat vltozatai


is lteznek, amelyek leutnozzk a Samba kpessgeit, s meglehetsen drgk. A
Samba e programok alternatvjaknt hasznlhat, s jelentsen cskkenti a kiadsainkat. A Samba a GNU General Public License (GPL) szablyai szerint terjeszthet, s a
szerzi Open Source (nylt forrskd) szoftvernek sznjk. Ms szavakkal ez azt jelenti, hogy szabadon letlthetk mind az alkalmazsai, mind a forrskdjai, st, akinek
kedve van hozz, tovbb is fejlesztheti az eredeti Samba programokat.
A Samba a kiszolglra sszpontostja a hlzat felgyelett. Nincs szksg arra, hogy
egy hajlkonylemezzel vagy CD-vel a keznkben szaladgljunk a hlzathoz csatlakoz szmtgpekhez az gyflszoftverek frisstse cljbl.
A Samba teljes megoldst knl a helyi hlzatok szmra lljanak azok akr kt otthoni
szmtgpbl, akr egy nagyvllalat tbb szz csompontjbl. A Samba knnyen telepthet s felgyelhet, s olyan tltsz hlzati krnyezetet teremt, amelyben a felhasznlk a munkjukhoz szksges sszes erforrshoz hozzfrhetnek. Miutn teleptettk
s belltottuk a Sambt, a kvetkez szolgltatsokat nyjtja:
Unix fjlokat knlhatunk fel Windows, OS/2 s ms opercis rendszereket hasznl
gyfeleknek.
Unixos gyfelek szmra elrhetv tehetjk a PC-s fjlokat.
Elrhetv tehetjk a hlzati nyomtatkat a Windows gyfelek szmra.
Nvkiszolglst knlhatunk (broadcast s WINS).
Engedlyezhetjk, hogy Windows gyfelek bngsszk a hlzati erforrsokat.
Windows munkacsoportokat vagy tartomnyokat hozhatunk ltre.
Elrhatjuk az gyfelek felhasznlnevnek s jelszavnak a hitelestst.

A knyv olvaskznsge
A szerzk a knyvet elssorban olyan Unix rendszergazdknak ajnljk, akiknek PC-ket is
kell kezelnik a hlzatban, tovbb mindazoknak, akiknek PC-s krnyezetben Unix
kiszolglra van szksgk. Ugyanakkor a szerzk nem akarjk klnbz rendszergazdai eszkzk vgelthatatlan sorval terhelni az olvast. Abbl indulnak ki, hogy
az olvas alapveten tisztban van a Unixos rendszerek felgyeletvel, de nem ttelezik
fel rluk, hogy hlzati szakemberek. Mindenesetre minden segtsget megadnak a klnbz meghatrozsok s kifejezsek megrtshez.
Mivel a szerzk azt sem felttelezik, hogy az olvasnak risi gyakorlata lenne a Microsoft Windows opercis rendszer hasznlatban, jval rszletesebben trnek ki a PC oldali teleptsi feladatokra, s mind a Windows 95/98, mind a Windows NT rendszerben
klnbz pldkat mutatnak be (a kt rendszer tbb vonatkozsban is eltr egymstl).
Unix oldalon olyan, ltalnosan hasznlt opercis rendszerekhez mutatnak pldkat,
mint amilyen a Linux 2.0 vagy a Solaris 2.6.

ELSZ

Kellkek a Samba teleptshez


Mieltt elindulnnk, a kvetkezkre lesz szksg:
a legfrissebb Samba disztribcira, ami a http://www.samba.org cmen letlthet az
internetrl, vagy egyszeren elvehet a szmtgpes lapok CD-inek gyjtemnybl;
a hlzathoz csatlakoz kiszolgl- s gyflgpek nevre s IP cmre, a hlzat hlzati maszkjra s a tartomnynv-kiszolglk (DNS) nevre s IP cmre.

A knyv felptse
A knyv durvn kt rszre oszthat. Az els rsz a Samba teleptsvel (13. fejezet), a
msodik a Samba konfigurlsval s optimalizlsval (49. fejezet) foglalkozik. Az egyes
fejezetek rvid tartalma:
1. fejezet. Ismerkeds a Sambval
Ebben a fejezetben megismerkednk a Samba sszetevivel, s rviden ttekintjk
a NetBIOS s a Windows hlzati vonatkozsait.
2. fejezet. A Samba teleptse Unix rendszerre
Ebben a fejezetben arrl olvashatunk, miknt konfigurlhatjuk, fordthatjuk le, telepthetjk s tesztelhetjk a Samba kiszolglt Unix platformon.
3. fejezet. Windows gyfelek konfigurlsa
Ez a fejezet arrl szl, hogy miknt konfigurlhatjuk a Microsoft Windows 95/98 s
az NT 4.0 gyfeleket gy, hogy csatlakozhassanak egy SMB hlzathoz. Rviden
bemutatja az SMB protokoll mkdst is.
4. fejezet. Lemezmegosztsok
Ebben a fejezetben a Samba konfigurcis fjljnak klnbz rszeivel ismerkednk meg, s megtudjuk, hogyan hozhatunk ltre lemezmegosztsokat.
5. fejezet. Tallzs s a lemezmegosztsok folytatsa
Ebben a fejezetben folyatjuk a lemezmegosztsok trgyalst, s megvizsgljuk a
tallzs belltst.
6. fejezet. Felhasznlk, biztonsg s tartomnyok
Ebben a fejezetben arrl olvashatunk, miknt konfigurlhatjuk az gyfeleket,
milyen biztonsgi intzkedseket tehetnk a Sambban, s hogyan kezelhetjk a
titkostott s titkostatlan jelszavakat. Arrl is szlunk, hogyan kszthetjk fel a Sambt arra, hogy elsdleges tartomnyvezrl legyen Windows 95/98 s NT rendszert
hasznl gyfelek szmra.
7. fejezet. Nyomtats s nvfelolds
A fejezet a nyomtatkkal s a WINS (Windows Internet Name Service) nvfelolds
hasznlatval foglalkozik.

SAMBA

8. fejezet. Klnleges Samba ismeretek


Ebben a fejezetben olyan klnleges ismereteket sajtthatunk el, mint a Samba
megosztsok konfigurlsa programozk rszre, a nemzetkzi belltsokkal kapcsolatos krdsek s a biztonsgi msolatok ksztse.
9. fejezet. Hibakeress a Sambban
Ha problmink lennnek a Samba teleptsvel, akkor ez a meglehetsen terjedelmes fejezet tletekkel szolgl a hiba kijavtshoz.
A. fggelk. A Samba konfigurlsa SSL protokollal
Ebben a fggelkben arrl olvashatunk, hogy az SSL protokollt hasznlva miknt
konfigurlhatjuk gy a Sambt, hogy biztonsgos kapcsolat jjjn ltre a kiszolgl
s az gyfelei kztt.
B. fggelk. A Samba teljestmnynek finomhangolsa
Ez a fggelk klnbz eljrsokat mutat be a Samba teljestmnynek optimalizlshoz.
C. fggelk. A Samba konfigurcis belltsainak gyors ttekintse
Ez a fggelk az smb.conf fjlban hasznlhat belltsokat tekinti t.
D. fggelk. A Samba dmonjainak s parancsainak sszefoglalsa
Ez a fggelk ttekinti a Samba kszletbe tartoz dmonokat s eszkzket, tovbb felsorol nhny olyan tkrkiszolglt, ahonnan letlthet a Samba.
E. fggelk. A Samba letltse CVS-sel
Ebben a fggelkben arrl tjkozdhatunk, miknt tlthetjk le CVS rendszer
segtsgvel a Samba legfrissebb verzijt.
F. fggelk. Minta konfigurcis fjl
A fggelk egy terjedelmes konfigurcis fjlra mutat pldt, amit akr egy nagyobb
cgnl is hasznlhatunk. A ritkbban hasznlt belltsok szerept megjegyzsekben tesszk rthetv.

Tipogrfiai jellsek
A knyvben az albbi tipogrfiai jellseket hasznljuk:
Dlt bets
Ezzel jelljk a fjlneveket, a fjlnevek kiterjesztst, az internetes cmeket, a vgrehajthat fjlok s parancsok nevt, s a klnleges fogalmakat.
Azonos betszlessg
gy jelljk a Samba konfigurcis belltsait, a szvegben megjelen egyb kdokat, s azokat a parancssori adatokat, amelyeket bethven kell berni a kpernyn.
Flkvr s azonos betszlessg
Ezzel jelljk a felhasznl ltal berand parancsokat s azokat az j konfigurcis
belltsokat, amelyekre fel akarjuk hvni az olvas figyelmt.

ELSZ

Dlt s azonos betszlessg


A kdok s a parancssori informcik megvltoztathat rszeit jelli.

A bagoly szimblummal jellt szvegrsz a krnyezetvel kapcsolatos valamilyen fontos megjegyzst tartalmaz.

A pulyka szimblummal megjellt szvegrsz a krnyezetvel kapcsolatban


valamilyen figyelmeztetst tartalmaz.

A szerzk krsei
E knyv szerzi a legjobb kpessgeik szerint teszteltk s ellenriztk a knyvben lertakat, de elfordulhat, hogy idkzben megvltoztak bizonyos belltsok (de maguk a
szerzk is hibzhattak). Krjk, rtestsenek bennnket brmely hibrl, tovbb vrjuk
az olvask javaslatait a tovbbi kiadsokhoz. Cmnk:
OReilly & Associates, Inc.
101 Morris Street
Sebastopol, CA 95472
1-800-998-9938 (az USA-ban s Kanadban)
1-707-829-0515 (nemzetkzi/helyi)
1-707-829-0104 (FAX)
A kiad elektronikus levlben is elrhet. A levelezlistra val feliratkozshoz vagy katalgus krshez az albbi cmre vrjuk az elektronikus leveleket:
info@oreilly.com
Mszaki jelleg krdseket vagy a knyvvel kapcsolatos megjegyzseket az albbi cmre
krjk:
bookquestions@oreilly.com
A kiad egy webhelyet is ksztett ehhez a knyvhz, ahol pldk, hibajavtsok s a tovbbi kiadsokkal kapcsolatos tervek tekinthetk meg. A webhely az albbi cmen rhet el:
http://www.oreilly.com/catalog/samba/
Tovbbi tudnivalk errl s ms knyvekrl az OReilly albbi webhelyn tallhatk:
http://www.oreilly.com
A magyar kiad webhelye, ahol a knyv szvege is megtallhat:
http://www.kossuth.hu

Ismerkeds a Sambval

Ha az olvas tipikus rendszergazda, akkor tudhatja, mit jelent mindenesnek lenni. Nap
mint nap azzal telik a munkaideje, hogy vg nlkl bajldik a hardverek inkompatibilitsi
problmival, a rendszerek elavulsval, az adatok biztonsgi mentsvel s a felhasznlk aggd seregvel. Ezrt nmi fenntartssal fogadhatja azt, hogy jabb programmal
bvtse az amgy is sokrt eszkztrt, amelynek a karbantartsrt felelssggel tartozik. Ha viszont gy dnt, hogy cskkenteni kvnja a szmtstechnikai krnyezetnek
bonyolultsgt, valamint a programok zkkenmentes futtatshoz szksges feladatait,
akkor taln pont a Samba lehet az, amire szksge van.
Egy kis magyarzat: e knyv egyik rjnak rendszergazdaknt az volt a feladata, hogy
70 UNIX fejleszt munkjrl gondoskodjon, akik 5 Unix kiszolgln osztoztak. A szomszdjnak 20 Windows 3.1 felhasznl s 5 OS/2 s Windows NT kiszolgl volt a gondjaira bzva. Errl az emberrl igazn elmondhat, hogy mindenes volt. Amikor kilpett a
cgtl, s az sszes gpet kzs hlzatba kellett kapcsolni, a Samba jelentette a megoldst. A szerznk gyorsan lecserlte a Windows NT s az OS/2 kiszolglkat egy Sambt
futtat Unix kiszolglra, s a cg fejleszti szmra PC-ket vsrolt. Ez utbbi miatt azonban nem vett fl egy j, PC-s rendszergazdt; a rendszergazda most t elosztott PC helyett
egyetlen, kzponti Unix alkalmazsbl kezeli a teljes rendszert.
Ha nnek problmi vannak a hlzatval, s biztos abban, hogy van jobb megolds,
akkor btran fogjon hozz ennek a knyvnek az olvasshoz. Ha pedig mr hallott valamit a Sambrl, s szeretn tudni, miben segthet nnek, akkor szintn ajnlhat ez a
knyv. Mindenekeltt azrt, mert megismerteti az olvasival a Samba hasznlatt s a
kpessgeit. Rvid idn bell Unix szolgltatsokkal tudja elltni az sszes Windows
alap gpt anlkl, hogy klnsebben sok pnzt vagy idt kellene ldoznia erre. Csbtan hangzik? Nos, ha igen a vlasz, akkor vgjunk is bele!

Mi a Samba?
A Samba olyan Unix alkalmazsok gyjtemnye, amelyek az SMB (Server Message Block
= kiszolgli zenetblokk) protokollt hasznljk. Szmos opercis rendszer, kztk a
Windows s az OS/2 ezt az SMB protokollt hasznlja az gyflkiszolgl tpus hlzatokban. Azzal, hogy a Samba tmogatja ezt a protokollt, lehetv teszi, hogy munkba
lljanak a Unix kiszolglk, s ugyanazt a hlzati protokollt hasznljk, mint amit a Microsoft Windows alkalmazsok. gy egy Sambval felszerelt Unix gp lczott kiszolglknt
jelenhet meg az n Microsoft hlzatban, s a kvetkez szolgltatsokat nyjthatja:

12

SAMBA

egy vagy tbb fjlrendszer megosztsa;


mind a kiszolgln, mind az gyfelein teleptett nyomtatk megosztott hasznlata;
gyfelek segtse a Hlzatok ablak tallzsval;
Windows tartomnyba bejelentkez gyfelek hitelestse;
a WINS nvkiszolgl hasznlata.

A Samba Andrew Tridgell szellemi gyermeke, aki jelenleg a Samba fejleszti csoport vezetje az ausztrliai Canberrban. A projekt 1991-ben indult el, amikor Andrew a helyi hlzathoz olyan fjlkiszolgl programot ksztett, ami a Digital Pathworks brmelyik DEC
protokolljt tmogatta. Abban az idben azonban nem tudhatta, hogy a ksbbiek sorn
ebbl alakul ki az SMB protokoll. Nhny vvel ezutn bvtette a testre szabott kiszolgljt, s SMB Server nven terjeszteni kezdte az interneten a termkt. Andrew azonban
nem tarthatta meg ezt a nevet idkzben ugyanis mr egy msik cg termknek neve
lett , ezrt megprblkozott az albbi Unix tnevezsi ksrlettel:
grep -i s. *m. *b

/usr/dict/words

Az erre rkezett vlasz ez volt:


salmonberry
samba
sawtimber
scrable

A legjobban a ,,Samba nv tetszett.


Jelenleg a Samba csomag mkdse kt Unix dmon krl forog, amelyek megosztott
erforrsokat vagy ms szval megosztsokat knlnak a hlzatba kapcsold SMB
gyfeleknek. (A megosztsokat helyenknt szolgltatsoknak is nevezik.) A kt dmon:
smbd
Ez a dmon lehetv teszi fjlok s nyomtatk megosztst SMB hlzatban, s az
SMB gyfelek azonossgnak s jogosultsgnak vizsglatt.
nmbd
Ez a dmon a WINS (Windows Internet Name Service, Windows internet nvkiszolgl) kezelsrl gondoskodik, s segtsget nyjt a tallzsban.
A Sambt jelenleg egy nkntesekbl ll csoport tartja karban s bvti Andrew Tridgell
aktv felgyelete alatt. A Linux opercis rendszerhez hasonlan a Sambt is nyitott forrs szoftvernek (OSS) tekintik a szerzi, s a GNU General Public License (GPL) szablyai
szerint terjesztik. A Samba kifejlesztst kezdetektl fogva rszben az Ausztrl Nemzeti
Egyetem tmogatja, ahol Andrew Tridgell megszerezte a Ph.D. doktori cmt. Emellett
bizonyos fejlesztseket fggetlen cgek is tmogattak, mint pldul a Whistle s az SGI. A
Sambnak jl jtt az a trekvs, hogy mind a kereskedelmi, mind a civil szervezetek
kszek anyagilag is segteni a nylt forrskd programok kifejlesztst.

1. FEJEZET. ISMERKEDS A SAMBVAL

13

A Microsoft is hozzjrult a fejlesztshez anyagilag azzal, hogy felknlta a sajt SMB


defincijt s az internetes nyelvet ,,beszl kzs internetes fjlrendszert (Common
Internet File System, CIFS), mint nyilvnos RFC-t (Request for Comments), vagyis a szabvnyos dokumentcijt. A CIFS protokoll nem ms, mint az SMB protokoll jvbeli verziinak Microsofttl szrmaz tnevezse, amelyet a Windows termkeiben fognak hasznlni ezrt ez a kt fogalom, az SMB s a CIFS felvltva szerepel ebben a knyvben is,
vagy gyakran olvashat egyms mellett (,,SMB/CIFS alakban) a protokoll neveknt.

Mit nyjthat szmunkra a Samba?


Amint az elzekbl kitnt, a Samba a Windows s a Unix gpek egyms mellett ltezst
segti ugyanazon a hlzaton. Emellett klnleges okai is lehetnek, hogy mirt szeretnnk
Samba kiszolglt telepteni a hlzatunkra:
Nem szeretnnk vagy nem engedhetjk meg magunknak, hogy fizetni kelljen egy minden extrval felszerelt Windows NT kiszolglrt, ugyanakkor szksgnk van azokra
a funkcikra, amelyeket a kiszolgl knl.
Kzs terletet kvnunk az adat- vagy felhasznli knyvtrak szmra, hogy t lehessen lpni egy Windows kiszolglbl egy Unix kiszolglba vagy fordtva.
Szeretnnk megosztani a nyomtatkat mind a windowsos, mind a unixos munkallomsok kztt.
Azt szeretnnk, hogy Unix kiszolglbl is elrhessnk NT fjlokat.
Tegynk egy kpzeletbeli stt, hogy lssuk, miknt mkdik a Samba. Tegyk fel, hogy
alapveten a kvetkez hlzati konfigurcival dolgozunk: van egy Sambt rt Unix
gpnk, amelyhez a hydra nevet rendeljk, s van kt Windows gyfelnk, melyek a
phoenix, illetve a chimaera nevet kaptk, k helyi hlzatban (LAN) vannak sszektve.
Ttelezzk fel tovbb, hogy a hydra gphez hozz van kapcsolva egy lp nev helyi
tintasugaras nyomtat, tovbb egy network nev megosztott lemez, s mindkt eszkzhz a msik kt gp is hozzfrhet. A hlzati elrendezst az 1.1. bra szemllteti.

1.1. bra. Samba kiszolglra pl egyszer hlzat

14

SAMBA

Ebben a hlzatban az sszes szmtgp ugyanannak a munkacsoportnak a rsze. A


munkacsoport egyszeren egy nvvel azonostott tetszleges gpcsoport, amelyben a
tagszmtgpek s azok erforrsai SMB hlzaton keresztl kapcsoldnak egymshoz.
A hlzatban tetszleges idben klnbz munkacsoportok ltezhetnek, de a mi alapvet hlzati pldnkban csak egyetlen, SIMPLE nev munkacsoport tallhat.

Lemezszolgltatsok megosztsa
Ha mindent jl lltottunk be, akkor a phoenix gp Asztaln a Network Neighborhood
(Hlzat) ablakban ltnunk kell a hydra nev Samba kiszolglt. Az 1.2. brn a phoenix
gpnek ez az ablaka lthat, amelyben valban fel van sorolva a SIMPLE munkacsoporthoz tartoz sszes szmtgp, kztk a hydra is. Figyeljk meg, hogy a lista elejn az
Entire Network (Teljes hlzat) ttel ll. Amint elbb emltettk, egy SMB hlzatba brmely idben egynl tbb munkacsoport is tartozhat. Ha a felhasznl rkattint az Entire
Network ikonra, felsorolst lthat a hlzatban ppen ltez sszes munkacsoportrl.

1.2. bra. A Network Neighborhood ablak


Kzelebbrl is szemgyre vehetjk a hydra kiszolglt, ha ktszer rkattintunk az ikonjra. Ekkor a hydra sajt magval lp kapcsolatba, s bekri megosztott erforrsainak listjt azokat a fjl- s nyomtat-erforrsokat, amelyekkel a gp fel van szerelve. Esetnkben ez a kiszolglhoz kapcsold lp nyomtat s a network nev megosztott lemez,
amint az 1.3. brn lthat. Vegyk szre, hogy a Windows a gazdanevek megjelentsekor vegyesen hasznl kis- s nagybetket (Hydra). A gazdanevekben nincs jelentsge a
kis- s nagybetk hasznlatnak, gy a klnbz ablakokban a hydra, Hydra s a HYDRA
rsmdokkal is tallkozhatunk, de mindegyik ugyanazt az egyetlen rendszert jelenti. A
Sambnak ksznheten a Windows 98 a Unix kiszolglt rvnyes SMB kiszolglnak
ltja, s ugyangy frhet hozz a network mapphoz, mintha egyszeren csak egy msik
rendszermappa lenne.

1. FEJEZET. ISMERKEDS A SAMBVAL

15

1.3. bra. A hydra kiszolgln elrhet megosztsok a phoenix gpbl nzve


A Windows 95/98/NT egyik npszer kpessge lehetv teszi, hogy a Windows Intz
Hlzati meghajt csatlakoztatsa parancsnak vlasztsval meghajtazonost betjelet
rendeljnk egy ismert hlzati knyvtrhoz*. Miutn ezt megtettk, alkalmazsaink egy
norml meghajtbetjellel rhetik el a mappt a hlzaton keresztl. gy ebben a mappban adatokat trolhatunk, programokat telepthetnk s futtathatunk, st mg jelszval is
megvdhetjk a nemkvnatos ltogatkkal szemben. Az 1.4. bra arra mutat pldt,
miknt rendelhetnk meghajtbetjelet egy hlzati knyvtrhoz.

1.4. bra. Windows meghajtbetjel hozzrendelse hlzati meghajthoz

* Azt is megtehetjk, hogy az egr jobb oldali gombjval rkattintunk egy megosztott erforrsra, majd a
menben a Hlzati meghajt csatlakoztatsa parancsot vlasztjuk.

16

SAMBA

Vessnk egy pillantst az 1.4. brn lthat ablak Path (Elrsi t) bejegyzsre. Egy hlzatban lv gpen hasonlkppen jelenthet meg egy knyvtr gy, hogy kt fordtott
trtjel (backslash) utn berjuk a hlzati gp nevt, majd egy jabb fordtott trtjel utn a
hlzati gp knyvtrt, amint itt lthat:
\\hlzati szmtgp\knyvtr

A Windows vilgban ez a nvmegads UNC (Universal Naming Convention) megadsknt ismert. gy pldul az 1.4. bra prbeszdablakban a hydra kiszolgl hlzati
knyvtrt az albbi megads azonostja:
\\HYDRA\network

Ha nmikpp ismersnek tnik ez a nvmegads, akkor valsznleg az URL (Uniform


Resource Locator) megadsra gondolunk, amit webes bngszk, pldul a Netscape
Navigator vagy az Internet Explorer hasznl az internethez kapcsold gpek neveinek
feloldshoz. gyeljnk arra, hogy ne keverjk ssze a ktfle megadst: a webbngszk rendszerint a norml trtjelet hasznljk a fordtott trtjel helyett, tovbb az els
trtjel eltt megkvnjk az adattviteli protokoll jellst is (gy mint ftp, http), valamint
utna egy kettspontot. Az URL-eknek s az UNC-knek a valsgban semmi kzk egymshoz.
Miutn csatlakoztattuk a hlzati meghajtt, a Windows s a programjai gy tekintik a
hlzati knyvtrat, mintha egy merevlemezes meghajt lenne. Ha brmely olyan alkalmazsunk van, amely tmogatja a tbbfelhasznls mkdst egy hlzaton, akkor ezeket a programokat a hlzati meghajtra is telepthetjk.* Az 1.5. brn lthat az gy ltrejtt hlzati meghajt, ami a Windows 98 gyfl ablakban pontosan gy jelenik meg,
mint brmely ms troleszkz. Figyeljk meg a G: meghajt ikonja eltti csvezetk
szimblumot! Jelzi, hogy az illet meghajt valjban nem merevlemez, hanem hlzati
meghajt.
A chimarea nev Windows NT munkallomsunkbl nzve a Samba majdnem pontosan gy lthat, mint a Windows 98-as gpbl. Az 1.6. brn a Windows NT 4.0 Network Neighborhood prbeszdablakban ugyangy jelenik meg a hydra kiszolgl. A
Windows NT Workstation 4.0-s gpen ugyangy rendelhetnk betjelet a hlzati meghajthoz, amint azt az elbbiekben tettk.

Nyomtat megosztsa
szrevehettk, hogy az 1.3. bra prbeszdablakban a hydra gpen elrhet megosztsok kztt az lp jel nyomtat is megjelenik. Ez azt jelenti, hogy a Unix kiszolgln olyan
nyomtat is tallhat, amelyhez a munkacsoportba tartoz klnbz SMB gyfelek hozzfrhetnek. Brmely gyfl adatokat kldhet a nyomtatra, amelyeket a Unix kiszolgl
nyomtatsi sorba llt, s az rkezsk sorrendjben kinyomtat.
* Ne feledkezznk meg arrl, hogy szmos vgfelhasznli engedly tiltja egy program olyan teleptst
a hlzatra, amely lehetv tenn tbb gyfl szmra a hozzfrst. Nzznk utna a licencszerzdsben, hogy biztosak legynk a dolgunkban.

1. FEJEZET. ISMERKEDS A SAMBVAL

17

1.5. bra. A network knyvtrhoz az gyfl gpn a G: meghajtbetjel van


hozzrendelve

1.6. bra. A hydra kiszolgln elrhet megosztsok (a chimarea gpbl nzve)


Egy megosztott nyomtatnak a Windows oldali teleptse mg egyszerbb, mint egy
lemezmegoszts elksztse. Kettt kattintva a nyomtatra, majd a gyrtjt s a tpust
kivlasztva telepthetjk a Windows gyflgpre a nyomtat illesztprogramjt. A
Windows ekkor az illet nyomtatnak megfelel formtumban tudja az informcikat a
hlzati nyomtatra kldeni, amelyet gy rhet el, mint egy helyileg teleptett nyomtatt
(a fejezet ksbbi rszben bemutatjuk ezt a mveletet). Az 1.7. brn a Windows 98-as
gp Printers (Nyomtatk) ablakban ltjuk a hlzati nyomtatt. Figyeljk meg, hogy a
nyomtat ikonja fltt is megjelenik a csvezetk szimbluma, jelezve, hogy az illet
nyomtat a hlzaton keresztl rhet el.
A dolgok a Unix oldalrl nzve
Amint korbban emltettk, a Samba a Unix krnyezetben dmonprogramok gyjtemnyeknt jelenik meg. Ezeket a dmonokat a Unix ps s netstat parancsaival tekinthetjk meg, az ltaluk ltrehozott zeneteket pedig egyni debug fjlokon keresztl vagy a
Unix syslog segtsgvel, a belltstl fggen. A konfigurlst a Samba egyetlen,
smb.conf nev konfigurcis fjljban vgezhetjk el. Ha ezen fell mg az egyes dmonok mkdst is ltni szeretnnk, akkor a Samba smbstatus programjt kell futtatnunk,
ami szp sorjban mindent megjelent.

18

SAMBA

1.7. bra. A hydra kiszolgln elrhet hlzati nyomtat


(a chimarea gpbl nzve)
me a mkdse:
# smbstatus
Samba version 2.0.4
Service uid
gid
pid
machine
-------------------------------------network davecb davecb 7470 phoenix (192.168.220.101) Sun May 16
network davecb davecb 7589 chimaera (192.168.220.102) Sun May 16
Locked files:
Pid
DenyMode
R/W
Oplock
Name
----------------------------------------------7589 DENY_NONE
RDONLY EXCLUSIVE+BATCH /home/samba/quicken/inet/
common/system/help.bmp
Sun May 16 21:23:40 1999
7470 DENY_WRITE RDONLY NONE
/home/samba/word/office/
findfast.exe
Sun May 16 20:51:08 1999
7589 DENY_WRITE RDONLY EXCLUSIVE+BATCH /home/samba/quicken/
lfbmp70n.dll
Sun May 16 21:23:39 1999
7589 DENY_WRITE RDWR
EXCLUSIVE+BATCH /home/samba/quicken/inet/
qdata/runtime.dat
Sun May 16 21:23:41 1999
7470 DENY_WRITE RDONLY EXCLUSIVE+BATCH /home/samba/word/office/
osa.exe
Sun May 16 20:51:09 1999
7589 DENY_WRITE RDONLY NONE
/home/samba/quicken/
qversion.dll
Sun May 16 21:20:33 1999
7470 DENY_WRITE RDONLY NONE
/home/samba/quicken/
qversion.dll
Sun May 16 20:51:11 1999
Share mode memory usage (bytes):
1043432(99%)free+4312(0%)used+832(0%)overhead = 1048576(100%)total

1. FEJEZET. ISMERKEDS A SAMBVAL

19

Az eredmnyben hrom adatcsoportban jelenik meg a Samba llapota, melyek mindegyike klnll szakaszokbl ll. Az els szakasz azt mondja meg, hogy milyen rendszerek kapcsoldnak a Samba kiszolglhoz, megadva mindegyik gyflgp nevt
(phoenix s chimarea) s IP cmt. A msodik szakasz felsorolja azon fjlok nevt s
llapott, amelyek a kiszolgl megosztsain ppen hasznlatban vannak, belertve
rs/olvassi llapotukat s a fjlok esetleges zrolsait is. Vgl a harmadik szakasz annak
a memrinak a mrett adja meg, amelyet a Samba az ltala felgyelt megosztsokhoz
aktulisan kiosztott, belertve azt a mretet is, amelyet a megosztsok aktvan hasznlnak,
plusz a tovbbi fejlcet. (Vegyk figyelembe, hogy ez nem ugyanaz a memriamret, mint
amit az smbd vagy az nmbd eljrsai teljes memriaterletknt hasznlnak.)
Ne aggdjunk, ha most nem rtennk ezeket a statisztikkat ahogyan elre haladunk
a knyvben, knnyebben meg fogjuk rteni ket.

Ismerkeds egy SMB/CIFS hlzattal


Miutn befejeztk a Sambban tett rvid stnkat, szenteljnk nmi idt arra, hogy megismerkedjnk a Samba vlasztott krnyezetvel: egy SMB/CIFS hlzattal. Az SMB krnyezetben foly hlzati munka lnyegesen klnbzik egy Unix krnyezetben folytatott,
TCP/IP alap hlzati munktl, mert szmos j koncepcival s informcival kell megismerkednnk. Elszr az SMB hlzathoz tartoz alapvet koncepcikat tekintjk t, azt
kveten megismerkednk nhny Microsoftos megvalstsval, vgl megtudjuk, hol
illeszthet be egy Samba kiszolgl a kpbe, s hol nem.

Rviden a NetBIOS-rl
Elszr menjnk vissza egy keveset idben. 1984-ben az IBM elksztett egy egyszer
alkalmazsprogramozsi felletet (API) a szmtgpeinek hlzati mkdtetshez,
aminek a Network Basic Input/Output (NetBIOS) nevet adta. A NetBIOS API kezdetleges
eszkzt knlt ahhoz, hogy egy alkalmazs hozzfrhessen ms szmtgpekhez, s adatokat osszon meg velk.
A NetBIOS API jrszt gy tekinthet, mint a szabvnyos BIOS API hvsok hlzati
kiegsztse. A BIOS csak arra alkalmas, hogy minden egyes alacsony szint hvs a helyi
gp hardverre korltozdjon, s semmifle segtsget nem nyjt ahhoz, hogy egy hvs
rendeltetsi helyt megvltoztathassuk. Ezzel szemben a NetBIOS eredeti rendeltetse az volt, hogy IBM PC-s vagy Token Ring hlzatokban a szmtgpek kicserlhessk
egyms kzt az utastsokat. Ezrt szksg volt egy alacsony szint szlltsi protokoll
megvalstsra, amin keresztl krseket lehetett kldeni az egyik szmtgpbl a
msikba.
Az 1985-s v vge fel az IBM kiadott egy ilyen protokollt, amit sszeolvasztott a NetBIOS API-val, s az gy ltrejtt termknek a NetBIOS Extended User Interface (NetBEUI)
nevet adta. A NetBEUI protokollt kisebb helyi hlzatokhoz (LAN) terveztk, lehetv
tve, hogy a hlzatba kttt mindegyik gpnek sajt neve legyen (max. 15 karakteresig).
A ,,kisebb hlzat itt olyan hlzatot jelent, amelyik 255-nl kevesebb csompontbl ll
1985-ben ez mg sszer korltozsnak volt tekinthet.

20

SAMBA

A NetBEUI protokoll nagyon npszer volt a hlzati alkalmazsokban, belertve azokat is, amelyek Windows for Workgroups alatt futottak. A ksbbiekben a NetBIOS olyan
vltozatai kerltek eltrbe, melyek a Novell IPX hlzati protokolljain valsultak meg, s
ezek a NetBEUI-val versengtek. Az akkoriban fejldsnek indult internetes kzssg a
meglv hlzati protokollok kzl azonban TCP/IP-t s a UDP/IP-t vlasztotta, ezrt
hamarosan elengedhetetlenn vlt a NetBIOS API megvalstsa ezeken a protokollokon.
Emlkezznk arra, hogy a TCP/IP szmokat hasznl a szmtgpek megcmzshez,
olyanokat, mint pldul 192.168.220.100, a NetBIOS pedig neveket hasznl. Ez jelentette
az egyik f problmt a kt protokoll sszegyrsakor. Az Internet Engineering Task
Force (IETF) 1987-ben RFC 1001 s 1002 jellssel kiadott egy sor szabvnyost dokumentumot, melyekben krvonalaztk, hogy a NetBIOS mikppen volna kpes mkdni
egy TCP/UDP hlzaton. Ez a dokumentumcsomag szablyozza mg ma is az sszes ltez megvalstst, belertve azokat is, amelyeket a Windows hasznl a sajt opercis
rendszereiben, valamint a Samba szoftverkszlett is.
Azta a szban forg dokumentumcsomag ltal szablyozott szabvny NetBIOS over
TCP/IP vagy rviden NBT nven vlt ismertt. Az NBT szabvny (RFC 1001/1002) jelenleg
a szolgltatsok albbi hrmast vzolja egy hlzatban:
nvkiszolgl;
kt kommunikcis szolgltats, nevk:
datagrams (vagy datagram szolgltats);
sessions (vagy session szolgltats).
A nvkiszolgl az elbb emltett, nvvel s cmmel kapcsolatos problmt oldja meg:
lehetv teszi, hogy a hlzatban mindegyik szmtgp deklarljon egy r jellemz
nevet, ami aztn lefordthat egy, a szmtgpek ltal rthet IP cmre, nagyon hasonlan ahhoz, ahogyan ezt az interneten a DNS teszi. A datagram s a session szolgltatsok
msodlagos kommunikcis protokollok, amelyeknek az a feladata, hogy adatokat tovbbtsanak a hlzatba kttt NetBIOS szmtgpek kztt.

Nv ignylse
Egy emberi lny viszonylag knnyen ignyelhet magnak nevet. Ugyanez azonban egy
NetBIOS hlzatba kapcsolt gp esetn mr nem ennyire egyszer. Lssunk nhny rszletet!
Amikor a NetBIOS vilgban egy szmtgp bejelentkezik a hlzatba, s szeretne
nevet kapni magnak, ezt nvregisztrlsnak nevezik. Ugyanabban a munkacsoportban
azonban nem ignyelheti kt gp ugyanazt a nevet, mert ez vg nlkli zavarokhoz vezethet, amikor brmelyik msik gp kommuniklni szeretne a kt gp egyikvel. A problma
elkerlsnek kt megkzeltse van:
A NetBIOS nvkiszolgl (NetBIOS Name Server, NBNS) hasznlatval nyomon kell
kvetni, hogy mely gazdagpek regisztrltak maguknak NetBIOS nevet.
Lehetv kell tenni, hogy a hlzatba kapcsolt mindegyik gp megvdje a sajt nevt,
amikor egy msik gp megprblja hasznlni az nevt.
Az 1.8. bra kt (sikertelen) nvregisztrlst mutat be: egyet a NetBIOS nvkiszolgl
segtsgvel, egyet anlkl.

1. FEJEZET. ISMERKEDS A SAMBVAL

21

1.8. bra. Nvregisztrls NBNS ignybevtelvel s anlkl


Ezen kvl kell mg valamilyen mdot tallni arra, hogy egy NetBIOS nv talakthat
legyen specifikus IP cmm, amint errl mr volt sz. Ezt a mdot nvfeloldsnak nevezik.
Az NBT-nl erre ktfle megolds ltezik:
Minden egyes gp jelentse vissza az IP cmt, amikor broadcast (zenetszrsos) hvs
kri be a gp NetBIOS nevt.
Az NBNS segtse a NetBIOS nevek feloldst IP cmekk.
Az 1.9. bra szemllteti a nvfeloldsnak ezt a kt mdjt.
Amint vrhat, az NBNS nvkiszolgl meglte a hlzaton nagyon sokat segthet. Azrt,
hogy pontosan lssuk, hogyan trtnhet ez, tekintsk t az NBNS nlkli esetet.
Ilyenkor, ha bejelentkezik egy gyflgp, sztkld egy zenetet, amelyben kijelenti,
hogy a sajt, specifikus NetBIOS nevt akarja regisztrlni. Ha tbbszri regisztrlsi ksrletet kveten sincs senkinek kifogsa a nv hasznlata ellen, akkor a gp megtartja a
nevet. Ha viszont a helyi alhlzatban valamelyik gp mr hasznlja a szban forg nevet,
egy zenetet kld vissza a nvignyl gyflnek, amelyben kzli, hogy a nv mr foglalt.
Ezt a gazdanv megvdsnek nevezik. Az ilyen mdszer akkor jhet jl, ha egy gyfl
vratlanul kilp a hlzatbl: ekkor ugyanis egy msik gp problma nlkl megkaphatja
a nevt. Msrszt viszont rendkvli mdon megnne a hlzat forgalma, ha mg az olyan
egyszer mveleteket is, mint a nvregisztrls, az egsz hlzatot rinten kellene lebonyoltani.

22

SAMBA

1.9. bra. Nvfelolds NBNS ignybevtelvel s anlkl


Az NBNS hasznlata esetn ugyanez trtnik azzal a klnbsggel, hogy a kommunikci
csak az ignyl gpre s az NBNS kiszolglra korltozdik. Amikor az gyflgp bejelenti az ignyt egy nv regisztrlsra, a regisztrlsi krelem az gyfltl kzvetlenl az
NBNS kiszolglra kerl, s az NBNS kiszolgl vlaszol, hogy a nv foglalt-e mr vagy
sem. Ezt ponttl-pontig kommunikcinak nevezik, s klnsen azoknl a hlzatoknl
elnys, amelyeknek egynl tbb alhlzatuk van. Ennek oka, hogy a forgalomirnytk
gyakran eleve gy vannak konfigurlva, hogy blokkoljk a broadcast csomagokat.
Ugyanezek az elvek alkalmazhatk a nvfeloldknl is. Az NBNS nlkl a NetBIOS nv
feloldsa szintn a ,,sztszrsos mechanizmussal trtnne. Az sszes ignybejelent
csomag eljutna a hlzat sszes szmtgphez, abban a remnyben, hogy egyetlen,
esetleg rintett gp kzvetlenl vlaszol a kr gpnek. Ennyibl mr vilgosan rthet,
hogy egy NBNS kiszolgl s a ponttl-pontig kommunikci hasznlata sszehasonlthatatlanul kisebb mrtkben terheli le a hlzatot, mint az az radat, amit az sszes gpnek
elkldend nvfeloldsi krelmek sokasga idzne el.

Csomponttpusok
Hogyan tudnnk megmondani, hogy a hlzatunkban lv egyes gyfelek milyen stratgit hasznlnnak a nevk regisztrlshoz s feloldshoz? Egy NBT hlzat minden
egyes gpe a kvetkez jellsek egyikt kapja, attl fggen, hogy miknt kezeli a nv-

1. FEJEZET. ISMERKEDS A SAMBVAL

23

regisztrlst s -feloldst: b-csompont, p-csompont, m-csompont s h-csompont. Az


egyes csomponttpusok viselkedst az 1.1. tblzat foglalja ssze.
1.1. tblzat. A NetBIOS csomponttpusai
Tpus

Jelents

b-csompont
p-csompont
m-csompont

Csak broadcast regisztrlst s feloldst hasznl.


Csak ponttl-pontig regisztrlst s feloldst hasznl.
Broadcast eljrst hasznlt a regisztrlshoz. Ha ez sikeres,
akkor rtesti az eredmnyrl az NBNS kiszolglt. Broadcast
eljrst hasznl a feloldshoz; NBNS kiszolglt hasznl, ha a
broadcast sikertelen.
NBNS kiszolglt hasznl a regisztrlshoz s a feloldshoz;
broadcast eljrst hasznl, ha az NBNS kiszolgl nem vlaszol
vagy nem mkdik.

h-csompont (hibrid)

Windows gyfelek esetben ltalban azt tapasztaljuk, hogy ezek h-csompontokknt


vagy hibrid csompontokknt vannak felsorolva. Mellesleg szlva a h-csompontokat
mint hibatrbb tpust a Microsoft fejlesztette ki ksbb, s gy nem szerepel az RFC
1001/1002 dokumentciban.
Egy Windows 95/98-as gprl gy tudhatjuk meg, hogy milyen tpus csompontot
kpvisel, hogy a futtatsi parancssorba berjuk a winipcfg parancsot, s a megnyl prbeszdablakban a Tovbbi informci (More Info) gombra kattintunk. Windows NT
gpen rjuk be az ipconfig /all parancsot, majd keressk meg a Csomponttpus
(Node Type) sort.

Mit tartalmaz egy nv?


A NetBIOS ltal hasznlt nevek elgg klnbznek a felteheten ismers DNS nevektl.
Elszr is a NetBIOS nevek beti folyamatosan helyezkednek el a szmukra adott helyen.
Msknt fogalmazva ez azt jelenti, hogy a neveknek nincsenek olyan, a gazdagp nevtl
ponttal elvlasztott toldalkai, mint amilyenek pldul az ora.com vagy a samba.org
nevekben tallhatk. Minden egyes szmtgpet r jellemz egyetlen nv azonost.
Msodszor, a NetBIOS nevek maximum 15 karakterbl llhatnak, nem kezddhetnek csillaggal (*), tovbb csak az (angol) szabvnyos alfanumerikus karaktereket (az, AZ, 09)
s a kvetkez specilis jeleket tartalmazhatjk:
!@#$%^&()-{}.~
Br a pont (.) karakter hasznlata engedlyezett, mgsem tancsos hasznlni, mert nem
garantlhat, hogy az ezt tartalmaz nevek a TCP/IP-re pl NetBIOS jvbeli vltozataiban is mkdni fognak.
Nem vletlen egybeess, hogy az sszes rvnyes DNS nv egyttal rvnyes NetBIOS
nv is. A valsgban gyakran elfordul, hogy egy Samba kiszolgl DNS neve egyttal a
kiszolgl NetBIOS neveknt is szolgl. Ha pldul van egy phoenix.ora.com nev

24

SAMBA

gpnk, akkor ennek a NetBIOS neve felteheten PHOENIX lenne (amely utn nyolc
res hely ll).
Erforrsok nevei s tpusai
Egy szmtgp a NertBIOS rvn nem csak kzli msokkal a jelenltt, hanem arrl is
tjkoztatja a tbbieket, hogy milyen tpus szolgltatsokat knl. gy pldul a phoenix
gp jelezheti, hogy nem csupn egy munkalloms, hanem egyttal fjlkiszolgl is, s
kpes WinPopup zenetek fogadsra. Ezt azzal teheti meg, hogy egy 16. bjtot gynevezett erforrstpus-jelzst fz a gp (erforrs) nevnek vgre (lsd az 1.10. brt), s
egynl tbbszr regisztrlja a nevt.

1.10. bra. A NetBIOS nevek felptse


Az egy bjtos erforrstpus-jelzs azt a szolgltatst jelzi, amelyet a megnevezett gp nyjtani kpes. Ebben a knyvben gyakran tallkozhatunk erforrstpusokkal, amelyek
hegyes zrjelek (<>) kztt llnak a NetBIOS nv utn, pldul gy:
PHOENIX<00>

Megnzhetjk, hogy egy adott NBT gphez milyen nevek vannak regisztrlva, ha a
Windows parancssorba az NBTSTAT parancsot berva futtatjuk ezt a segdprogramot. Mivel
a szolgltatsok egyediek (vagyis egynl tbb nem lehet regisztrlva), az eredmnylistban
UNIQUE tpusakknt listzdnak ki. Az albbi rszlet pldul a hydra kiszolglt rja le:
D:\>NBTSTAT -a hydra
NetBIOS Remote Machine Name Table
Name
Type
Status
------------------------------------------HYDRA
<00> UNIQUE
Registered
HYDRA
<03> UNIQUE
Registered
HYDRA
<20> UNIQUE
Registered
...

A listbl kiolvashat, hogy a gp (munkalloms) neve hydra NetBIOS nvknt van


regisztrlva, kpes WinPopup zenetek fogadsra, tovbb fjlkiszolgl. Az 1.2. tblzat
a nv lehetsges attribtumai kzl sorol fel nhnyat.

1. FEJEZET. ISMERKEDS A SAMBVAL

25

1.2. tblzat. A NETBIOS Unique erforrstpusai


Megnevezett erforrs

A bjt hexadecimlis rtke

Szabvnyos munkalloms szolgltatsai


zenetkld szolgltats (WinPopup)
RAS kiszolgl szolgltats
Tartomny-ftallz szolgltats (az elsdleges tartomnyvezrlvel trstva)
Ftallz neve
NetDDE szolgltats
Fjlkiszolgl (belertve a nyomtatkiszolglt)
RAS gyfl szolgltats
Hlzati monitor kzvettprogram
Hlzati monitor segdprogram

00
03
06
1B
1D
1F
20
21
BE
BF

Figyeljk meg, hogy mivel a DNS neveknek nincsenek erforrstpusaik, a tervezk szndkosan a 20-as hexadecimlis rtket (egy ASCII szkzt) tettk a fjlkiszolgl tpusnak alapbelltsv.
Csoportnevek s tpusok
Az SMB a csoportok fogalmt is hasznlja, amivel a gpek regisztrlhatjk magukat.
Korbban mr emltettk, hogy a pldnkban a gpek egy munkacsoporthoz tartoznak,
ami ugyanannak a hlzatnak valamely gpcsoportjt jelenti. gy egy hlzatban knnyen
lehet pldul egy EXPORT s egy IMPORT nev munkacsoport, melyek mindegyike klnbz kiszolglkbl s nyomtatkbl llhat. A Windows vilgban egy munkacsoport
s egy SMB csoport ugyanazt jelenti.
Folytatva az NBTSTAT pldnkat, a hydra Samba kiszolgl egyttal a SIMPLE munkacsoport tagja is (a csoport GROUP attribtuma hexa 00), s ftallzknt is vlaszthat
(1E csoport-attribtum). Az NBTSTAT kimenetnek fennmarad rsze:
NetBIOS Remote Machine Name Table, continued
Name
Type
Status
--------------------------------------------SIMPLE
<00> GROUP
Registered
SIMPLE
<1E> GROUP
Registered
.._ _MSBROWSE_ _.<01> GROUP
Registered

Az 1.3. tblzat azokat a lehetsges csoport-attribtumokat sorolja fel, amelyekkel egy gp


rendelkezhet. Tovbbi informcik a Windows NT in a Nutshell cm OReilly-knyvben
olvashatk, amelynek szerzje Eric Pearce. (Az OReilly hasonl tmj knyvei kzl
Aelen Frisch Windows NT rendszeradminisztrci cm ktete jelent meg magyar nyelven a Kossuth Kiadnl, s ugyancsak rszletesen foglalkozik a csoportok krdseivel a
szerkeszt megjegyzse.)

26

SAMBA

1.3. tblzat. A NETBIOS csoport-erforrstpusai


Megnevezett erforrs

A bjt hexadecimlis rtke

Szabvnyos munkalloms csoport


Logon Server
Ftallz neve
Norml csoportnv (a tallz megvlasztsnl hasznlt)
Internet csoportnv (rendszergazda)
<01><02>_ _MSBROWSE_ _<02>

00
1C
1D
1E
20
01

Az utols bejegyzs, az _ _MSBROWSE_ _, arra szolgl, hogy bejelentse magt egy csoport
a tbbi ftallznak. A nvben a nem nyomtatd karakterek az NBTSTAT nyomaton
pontokknt jelennek meg. Ne aggdjunk, ha nem rtjk az sszes erforrs- s csoporttpust. Kzlk egyeseket nem kell hasznlnunk a Sambhoz, msokrl pedig a knyvben mshol rszletesebben olvashatunk. Itt csak az a fontos, hogy az elnevezsi mechanizmus logikjt rtsk.

Datagram s session
Ezen a ponton tegynk egy kis kitrt, s ismerkedjnk meg az NBT msik feladatkrvel,
nevezetesen kt NetBIOS gp kztti kommunikcis szolgltatsokkal. A TCP/IP alap
NetBIOS kt szolgltatstpust knl: a datagram szolgltatst s a session szolgltatst. A
Samba hasznlathoz e kt szolgltats mkdsnek megrtse nem lnyeges, de arra
azrt j, hogy kpet kapjunk az NBT mkdsrl, valamint arrl, hogy miknt kereshetnk hibt a Sambban, ha nem mkdne.
A datagram szolgltats nem ltest lland kapcsolatot az egyik s a msik gp kztt.
Az egyik gp egyszeren kikldi az adatcsomagokat egy vagy tbb msik gpnek anlkl,
hogy tekintettel lenne a rendeltetsi llomsra rkezsk sorrendjre, vagy hogy figyelne
arra, hogy egyltaln megrkeznek-e a csomagok. A datagramok kldse kevsb terheli
ugyan a hlzatot, mint a session szolgltats, ennek ellenre kpes lefagyasztani a hlzatot, ha nem kell gondossggal hasznljk (emlksznk a broadcast nvfeloldsra az
elz rszbl?). Ezrt a datagramok elssorban azt a clt szolgljk, hogy gyorsan elkldjenek egyszer blokkokat egy vagy tbb gpre. A datagram szolgltats az 1.4. tblzatban
felsorolt egyszer primitveket hasznlja a kommuniklshoz.
1.4. tblzat. Datagram primitvek
Primitv

Lers

Datagram kldse

Elkld egy datagram csomagot egy gpre vagy gpcsoportra.


Datagram kldse mindazon gpekre, amelyek egy datagram broadcast vtelvel vrakoznak.
Fogad egy datagramot egy gptl.
Vrakozik egy broadcast datagramra.

Datagram broadcast kldse


Datagram vtele
Datagram broadcast vtele

1. FEJEZET. ISMERKEDS A SAMBVAL

27

A session szolgltats ennl bonyolultabb. A session olyan kommunikcis eljrst


jelent, ami elvileg lehetsget nyjt kt NetBIOS alkalmazs kztti problmk vagy
mkdskptelen kapcsolatok szlelsre. Az NBT session megrtst segti, ha gy
tekintjk, mint egy telefonhvst.* A hv s a hvott gp kztt teljes duplex kapcsolat
ltesl, aminek a beszlgets egsz idejn nyitottnak kell maradnia. Mindkt fl tudja,
hogy ki a hv s ki a hvott, s az 1.5. tblzatban felsorolt egyszer primitvek segtsgvel beszlhetnek egymssal.
1.5. tblzat. A session primitvjei
Primitv

Lers

Hvs

Session kezdemnyezse egy gppel, amely egy adott


nven figyel.
Hvst vr egy ismert vagy brmely ms hv fltl.
Kilps egy hvsbl.
Adatokat fogad egy msik gptl.
Informcikat kap a krt sessionrl.

Figyels
Lettel
Klds
Session llapota

A session az erforrsok megosztsnak alapja egy NBT hlzaton. Tipikusan arra hasznljk ket, hogy tarts kapcsolatok jjjenek ltre az gyflgpek s a kiszolgl lemezvagy nyomtatmegosztsai kztt. Az gyfl ,,felhvja a kiszolglt, s informcikat kld
arra vonatkozan, hogy mely fjlokat akarja megnyitni, mely adatokat akarja kicserlni
stb. A hvsok hossz ideig tarthatnak rkig vagy akr napokig , s mindez egyetlen
kapcsolat keretben zajlik. Ha hiba lpne fel, akkor a session szoftvere (TCP) jra elkldi
az adatokat mindaddig, amg azok rendben meg nem rkeznek, ellenttben a datagram
szolgltats (UDP) ,,kldd el s fohszkodj tpus mdszervel.
A valsgban azonban mikzben azt felttelezzk, hogy a session kpes a problematikus kommunikcis kapcsolatok kezelsre nem mindig ilyen j a helyzet. Amint taln
mr tapasztalhattuk, a Windows hlzatok hasznlatakor komoly problmk merlhetnek fel. Ha a kapcsolat valamilyen oknl fogva megszakad, a kt szmtgp kztt megnyitott session informcik knnyen rvnytelenn vlhatnak. Ha ez trtnik, akkor a
session informcik jbli megszerzsnek csak egyetlen mdja marad: ugyanaz a kt
szmtgp jra hvja egymst, s ellrl kezdik a kapcsolat felptst.
Aki tovbbi tudnivalkat szeretne olvasni errl a kt szolgltatsrl, annak ajnlhat az
RFC 1001-es dokumentci tanulmnyozsa. Itt mindssze kt fontos dologra hvjuk fel
mg a figyelmet:
A session mindig kt NetBIOS szmtgp kztt jn ltre, nem kevesebb, s nem tbb
gp kztt. Ha egy session szolgltats megszakad, akkor a kapcsolat felttelezi, hogy
az gyfl elegend llapotinformcit trol ahhoz, hogy jbl megteremtdjenek a
kapcsolatok. A gyakorlatban azonban ez ritkn fordul el.
A datagramok tbb gpre is elkldhetk (broadcast), viszont megbzhatatlanok. Ms
szavakkal ez azt jelenti, hogy a kld fl semmilyen mdon nem kpes megtudni,
vajon a kldtt datagramok tnyleg megrkeztek-e a rendeltetsi helykre.
* Amint lthatjuk az RFC 1001-ben, a telefonos hasonlat egyrtelm volt az NBT szolgltats elksztst
tekintve.

28

SAMBA

Microsoft implementcik
Ennyi httrismeret birtokban most mr megnzhetjk, miknt valstotta meg a Microsoft a bemutatott koncepcikat a CIFS/SMB hlzatokon. Amint vrhat volt, a gyakorlati
kivitelezs sorn nhny bonyolult bvtsre is sor kerlt, melyekkel szintn megismerkednk.

Windows tartomnyok
Emlkezznk vissza, hogy egy munkacsoport olyan SMB szmtgpek egyttese, amelyek mindegyike egy alhlzatban van, s ugyanahhoz az SMB csoporthoz tartozik. Egy
Windows tartomny (domain) ennl egy lpssel tovbb lp: ez a tartomny az SMB
gpek olyan csoportjt jelenti, amelyben van egy kiszolgl is, amely a tartomnyvezrl
szerepkrt tlti be. Ahhoz, hogy egy munkacsoport Windows tartomnny vljk, a
munkacsoportban kell lennie egy tartomnyvezrlnek.* Ellenkez esetben csak egy
SMB munkacsoportrl van sz (lsd az 1.11. brt).

1.11. bra. Egy egyszer Windows tartomny


Jelenleg egy tartomnyvezrl (logon kiszolgl) kt klnll protokollt hasznl: egyet
a Windows 95/98-as gpekkel val kommunikcihoz, egyet pedig a Windows NT
gpekkel val kommunikcihoz. Mivel a Samba jelenleg csak a Windows 95/98-as gpek
tartomnyvezrl protokolljt valstja meg (ami lehetv teszi, hogy tartomnyvezrlknt mkdjn Windows 9x gpek krben), mg nem tmogatja teljes kren a
Windows NT gpekhez szksges ilyen protokollt. Ugyanakkor a Samba fejleszt csapata
gretet tett arra, hogy a jvbeli Samba 2.1-es vltozat a Windows NT tartomnyvezrl
protokollt is tmogatni fogja.

* A Windows tartomnyokat a Microsoft ,,Windows NT tartomnynak nevezi, mert felttelezi, hogy a


tartomnyvezrl szerept Windows NT gpek tltik be. Mivel azonban ezt a szerepet egy Samba gp is
betltheti, a flrertsek elkerlse vgett az ilyen csoportokat egyszeren Windows tartomnynak
nevezzk.

1. FEJEZET. ISMERKEDS A SAMBVAL

29

Mi az oka ezeknek a nehzsgeknek? Az a protokoll, amit a Windows tartomnyvezrlk az gyfeleikkel s ms tartomnyvezrlkkel val kommunikcihoz
hasznlnak, a cg tulajdont kpezi, s a Microsoft mg nem tette kzz. Ez arra
knyszertette a Samba fejleszt csoportjt, hogy visszafejtsk a tartomnyvezrl
protokollt, hogy lssk, milyen kdok hajtjk vgre az egyes specilis feladatokat.

Tartomnyvezrlk
A tartomnyvezrl egy Windows tartomny idegkzpontja, ahhoz hasonlan, amikpp
egy NIS kiszolgl is az idegkzpontja egy Unix hlzati informciszolgltatsnak. A tartomnyvezrlk klnbz feladatokrt felelnek. Az egyik ilyen felelssgi kr, amellyel
foglalkoznunk kell, az gynevezett hitelests. A hitelests az az eljrs, amellyel megadhat vagy megtagadhat egy felhasznltl a hozzfrs egy megosztott erforrshoz vagy
msik hlzati gphez, tipikusan jelsz hasznlata rvn.
Minden egyes tartomnyvezrl hasznl egy biztonsgos fikkezelt (SAM), amellyel
karbantartja a felhasznlnvjelsz kombincit. A tartomnyvezrl ezutn elkszti a
felhasznli nevekhez kapcsolt jelszavak kzponti trt (felhasznlnknt egy jelsz),
ami sokkal hatkonyabb, mintha kln-kln tartan nyilvn az egyes gyfeleket s a rendelkezsre ll hlzati erforrsokhoz tartoz jelszavak szzait.
Amikor egy Windows tartomnyban egy nem hitelestett gyfl hozz szeretne frni a
kiszolgl megosztsaihoz, a kiszolgl a tartomnyvezrlhz fordul, s megkrdezi
tle, hitelestve van-e az adott felhasznl. Amennyiben igen, akkor a kiszolgl ltrehoz
egy kapcsolatot azokkal a hozzfrsi jogokkal, amelyekkel a felhasznl az adott megoszts vonatkozsban rendelkezik. Amennyiben nem, akkor megtagadja a kapcsolat ltrehozst. Miutn a tartomnyvezrl elvgezte a felhasznl hitelestst, visszakld a
felhasznlnak egy specilis hitelest jelzst, gyhogy a felhasznlnak nem kell ismt
bejelentkeznie ugyanezen tartomny ms erforrsaihoz. Ettl a pillanattl kezdve gy
tekinthet, hogy a felhasznl ,,bejelentkezett magba a tartomnyba (lsd az 1.12. brt).

1.12. bra. Tartomnyvezrl hasznlata a hitelestshez

30

SAMBA

Elsdleges s tartalk tartomnyvezrlk


A Windows tartomny egyik alapvet elve a redundancia. Azt a tartomnyvezrlt, amelyik egy tartomnyban ppen aktv, elsdleges tartomnyvezrlnek (PDC) nevezik. A tartomnyban e mellett lehet mg egy vagy tbb tartalk tartomnyvezrl (BDC) is, amelyek tvehetik az elsdleges tartomnyvezrl szerept, ha az meghibsodna vagy elrhetetlenn vlna. A BDC-k srn szinkronizljk a SAM adatokat az elsdleges tartomnyvezrlvel, gy ha felmerl az igny, akkor brmelyikk tveheti a az elsdleges tartomnyvezrl (PDC) szerept anlkl, hogy zavart okozna az gyfelek krben. Tudjunk persze,
hogy a BDC-k a SAM adatoknak csak egy olvashat msolatval rendelkeznek, ezrt ezeket az adatokat gy frissthetik, hogy szinkronizljk ket a PDC-vel. Egy Windows tartomnyban egy kiszolgl brmelyik elsdleges vagy tartalk tartomnyvezrl SAM-jt
hasznlhatja annak a felhasznlnak a hitelestshez, aki megprbl hozzfrni az erforrsaihoz, s be akar jelentkezni a tartomnyba.
Vegyk szre, hogy egy Windows munkacsoport s egy Windows tartomny viselkedse szmos tekintetben tfedi egymst. Ez nem vletlen, hiszen a Windows tartomnyok
koncepcija csak a Windows NT 3.1 bevezetst kveten alakult ki, s a Windows tartomnyokat szndkosan gy terveztk meg, hogy megtartsk a kompatibilitsukat a
Windows for Workgroups 3.1 vltozatban meglv munkacsoportokkal. A lnyeg nagyjbl gy foglalhat ssze, hogy egy Windows tartomny egyszeren olyan Windows munkacsoportot jelent, amely kiegszl egy vagy tbb tartomnyvezrlvel.
A Samba minden problma nlkl elsdleges tartomnyvezrlknt mkdhet
Windows 95/98-as gpek kztt. Ugyanakkor a Samba 2.0 mint elsdleges tartomnyvezrl csak hitelestsi feladatokat tud elltni; jelenleg ms feladatokat nem kpes tvenni
egy PDC-tl. (A knyv olvassnak idejn taln mr ltezik a Samba 2.1 vltozat, amivel a
Sambt NT gyfelek krben is hasznlhatjuk PDC-knt.) Tovbb, mivel a Microsoft ltal
a SAM adatok szinkronizlshoz hasznlt protokoll zrt protokoll, a Samba jelenleg tartalk tartomnyvezrlknt sem hasznlhat.

Tallzs
A tallzs ebben a szvegsszefggsben magas szint vlaszt jelent az olyan felhasznli
krdsre, mint hogy ,,Milyen gpek vannak ebben a Windows hlzatban?. gyeljnk
arra, hogy ennek a tallzsnak semmi kze sincs a World Wide Weben val bngszshez, eltekintve attl, hogy a tallzs azt is jelenti: lssuk, mit is fedezhetnk fel a krnyezetnkben. s van mg egy kzs sajtossguk: akrcsak a weben, egy hlzatban is megvltozhat valami minden kln rtests nlkl.
A tallzs hasznlata nlkl a felhasznlnak ismernie kell annak az adott szmtgpnek a nevt, amelyhez a hlzaton keresztl kapcsoldni akar, majd egy alkalmazsban
vagy fjlkezelben kzzel be kell rnia egy albbihoz hasonl UNC-t (Universal Naming
Convention), hogy kapcsoldhasson a hlzatra:
\\HYDRA\network\

A tallzssal viszont egy szabvnyos felhasznli illesztfelletet (GUI) hasznlva, pldul egy Windows gyfl Hlzatok ablakban egy egrkattintssal megvizsglhatjuk a
szmtgp tartalmt.

1. FEJEZET. ISMERKEDS A SAMBVAL

31

Tallzsi szintek
Amint a fejezet elejn mr emltettk, egy SMB/CIFS hlzatban a tallzs ktfle szintjvel tallkozhatunk:
tallzs a szmtgpek listjban (megosztott erforrsokkal rendelkez gpek);
tallzs egy adott gp megosztott erforrsaiban.
Nzzk elszr az els szintet. Minden egyes Windows munkacsoport (vagy tartomny)
alhlzatban van egy szmtgp, amely a hlzaton aktulisan elrhet gpek listjnak
karbantartsrt felel. Ennek a szmtgpnek helyi ftallz a neve, az ltala karbantartott listt pedig tallzlistnak nevezik. Az alhlzatban lv gpek ezt a tallzlistt hasznljk, hogy cskkenthet legyen a tallzs okozta hlzati forgalom nagysga. Ahelyett,
hogy minden egyes szmtgp dinamikusan lekrdezn az ppen rendelkezsre ll
szmtgpek listjt, az illet gp a helyi ftallzhoz fordul, amelytl megkapja a teljes
frisstett listt.
Ahhoz, hogy egy felhasznl egy gp aktulis erforrsai kztt tallzhasson, kapcsoldnia kell az adott szmtgphez a gpen lv informcikat a tallzlistbl nem
tudja megkapni. Valamely gpen elrhet erforrsok listjban gy tallzhat, hogy a
Windows 95/98 vagy a Windows NT Hlzatok ablakban rkattint az illet gp ikonjra.
Amint a fejezet elejn lttuk, a gp erre megjelenti a rajta elrhet megosztott erforrsok
listjt, miutn a felhasznl sikeresen tesett a hitelestsen.
Egy Windows munkacsoportban a kiszolglk mindegyiknek miutn regisztrlta a
NetBIOS nevt be kell jelentenie a jelenltt a helyi ftallznak, s (elmletileg) azt is,
hogy kijelentkezik a munkacsoportbl, amikor befejezi a mkdst. A helyi ftallz
feladata, hogy feljegyezze, mit jelentettek be a kiszolglk. Hozztesszk, hogy a helyi
ftallznak nem kell felttlenl ugyanannak a gpnek lennie, mint amelyik a korbban
trgyalt NetBIOS nvkiszolgl (NBNS).

A Windows Hlzatok ablak (Network Neighborhood) furcsn viselkedhet:


addig, amg nem vlasztunk ki tallzsra egy adott szmtgpet, a Hlzatok
ablakban elavult adatok is megjelenhetnek. Ez azt jelenti, hogy olyan gpek is
lehetnek, amelyek lefagytak, s hinyozhatnak olyanok, amelyeket korbban
nem vettnk szre. Rviden szlva: csak akkor bzhatunk abban, hogy a megjelen megosztsok s nyomtatk valban ,,lnek a hlzaton, ha kijelltnk
egy kiszolglt s megteremtettk hozz a kapcsolatot.

A korbban ltott szerepektl eltren szinte brmilyen Windows gp (NT kiszolgl, NT


munkalloms, 98, 95 vagy Windows 3.1 for Workgroups) betltheti a helyi ftallz szerept. A tartomnyvezrlkhz hasonlan a helyi ftallznak is lehet egy vagy tbb tartalka a helyi alhlzatban, amely meghibsods vagy elrhetetlensg esetn tveszi a szerept. A folyamatos mkds biztostsa cljbl a helyi tartalktallzk gyakorta szinkronizljk a listjukat a helyi ftallz listjval. Bvtsk ki az eddigi Windows tartomnyunk rajzt egy helyi ftallzval s egy helyi tartalktallzval. Az eredmny az 1.13.
brn lthat.

32

SAMBA

1.13. bra. Egy Windows tartomny helyi ftallzval s helyi tartalktallzval


kiegsztve
Az albbiak szerint szmthatjuk ki azoknak a tartalktallzknak a minimlis szmt,
amelyeket el kell helyezni egy munkacsoportban:
Ha a hlzatban a Windows NT munkallomsok szma 1 s 32 kztt van, vagy a
Windows 95/98-a gpek szma 1 s 16 kztt van, akkor a helyi ftallz mell egy
tartalktallzt kell telepteni.
Ha a Windows NT munkallomsok szma 33 s 64 kztt van, vagy ha a Windows
95/98 munkallomsok szma 17 s 32 kztt van, akkor a helyi ftallz mell kt
tartalktallzt kell telepteni.
Minden tovbbi, 32 NT munkalloms-csoporthoz vagy 16 Windows 95/98 gpcsoporthoz eggyel tbb tartalktallzt kell telepteni a helyi ftallz mell.
Jelenleg nincs fels hatra a helyi ftallz mell telepthet tartalktallzk szmnak.
Tallz kivlasztsa
A tallzs brmely Windows munkacsoportban nagyon lnyeges mvelet. A hlzatokon
azonban nincs mindig minden rendben. Tegyk fel pldul, hogy egy kis cg fnknek
asztaln ll Windows NT kiszolgl jtssza a helyi ftallz szerept a hlzatban mindaddig, amg a fnk ki nem kapcsolja a gpt, s el nem megy ebdelni. Megegyezs
szerint ekkor az alkatrszraktrban lv Windows NT munkalloms veszi t a helyi ftallz szerept. Igen m, csakhogy ezen a gpen ppen egy gyengn megrt program fut,
ami teljes mrtkben ignybe veszi a processzor erejt, s nem tud megbirkzni az jabb
feladattal. Ebbl levonhatjuk azt a kvetkeztetst, hogy a tallzsnak igen nagyfok trelmet kell tanstania a jv, men kiszolglk irnt. Mivel szinte brmely Windows gp
alkalmas a tallz szerepkr betltsre, lennie kell egy eljrsnak, hogy brmikor eldnthet legyen, melyik gp vegye t ezt a feladatot. Ennek a dntshoz eljrsnak kivlaszts (election) a neve.
A kivlaszts algoritmusa majdnem az sszes Windows opercis rendszerbe be van
ptve, teht ezek megegyezhetnek egymssal, hogy melyikk legyen a helyi ftallz, s
melyikk a helyi tartalktallz. A vlaszts brmikor kiknyszerthet. Visszatrve az

1. FEJEZET. ISMERKEDS A SAMBVAL

33

elz pldhoz, tegyk fel, hogy a fnk befejezte az ebdjt, s jraindtja a kiszolgljt.
Amikor a kiszolgl felled, bejelenti a jelenltt a hlzaton, vgbemegy egy kivlasztskrs, hogy lssa, mg mindig az a gp-e a ftallz, amelyik az alkatrszraktrban van.
Miutn elkld egy kivlasztskrst, minden egyes gp datagramokon keresztl sztkldi (broadcast) a magra vonatkoz informcikat. Ezek az informcik a kvetkezket tartalmazzk:
a hasznlt kivlasztsi protokoll verzija;
a gpen fut opercis rendszer;
az gyfl ltal a hlzaton eltlttt id tartama;
az gyfl gazdaneve.
Ezek az rtkek hatrozzk meg, hogy melyik opercis rendszernek van elsbbsge, s
melyik tltheti be a helyi ftallz szerepkrt. (A Felhasznlk, biztonsg s tartomnyok cm 6. fejezet rszletesebben is foglalkozik a kivlasztsi folyamattal.) A kivlaszts
programozstechnikai megvalstsa nem tl elegns, s biztonsgi problmk is rontjk
a helyzetet. Mg egy tallz tartomny integrlhat tartomnyi biztonsggal, addig a
vlasztsi algoritmus nem veszi figyelembe, hogy mely szmtgpekbl lettek tallzk.
Ezrt a tallz szolgltatst futtat brmely szmtgp gy regisztrlhatja magt, mint
amelyik rszt vesz a tallz kivlasztsaban, majd (miutn gyztt) kpes lesz a tallzlista mdostsra. Ennek ellenre a tallzs a windowsos hlzati munka egyik kulcseleme, s a kompatibilits fenntartsa irnti ignyek azt is biztostjk, hogy a kvetkez vekben is hasznlatban maradjon.

Felbonthat egy Windows munkacsoport


tbb alhlzatra?
Igen, br azok kzl, akik ezt megtettk, sokaknak nem kis fejfjst okozott. A tbb alhlzatra val bonts lehetsgt a Windows NT 3.5 vagy a Windows for Workgroups fejleszti eredetileg nem terveztk be. Ezrt az a Windows tartomny, amely kt vagy tbb
alhlzatra van felbontva, a valsgban inkbb kt vagy tbb egymshoz ,,ragasztott
munkacsoportnak tekinthet, amelyek ugyanazon a nven osztoznak. J hr azonban,
hogy tovbbra is hasznlhat egy elsdleges tartomnyvezrl a hitelestsre minden
egyes alhlzatban. Rossz hr viszont, hogy a tallzs mr nem annyira egyszer dolog.
Amint korbban emltettk, minden egyes alhlzatban kell lennie egy sajt helyi ftallznak. Amikor egy Windows tartomny tbb alhlzatra bomlik, a rendszergazdnak a
gpek egyikt tartomny-ftallzv kell kijellnie. Ez a tartomny-ftallz tartja nyilvn
a tallzlistt a teljes Windows tartomnyra vonatkozan. E tallzlista gy kszl, hogy
minden egyes helyi ftallz tallzlistja rendszeres idkznknt szinkronizldik a
tartomny-ftallz listjval. A szinkronizlst kveten a helyi ftallznak s a tartomny-ftallznak egymssal azonos bejegyzseket kell tartalmaznia. Erre az 1.14. bra
mutat pldt.

34

SAMBA

1.14. bra. Egynl tbb alhlzatra bontott munkacsoport


Jl hangzik? Azrt ez mg nem egszen a nirvna, a kvetkez okok miatt:
Ha ltezik elsdleges tartomnyvezrl, akkor az egyttal mindig a tartomny-ftallz is. A Microsoft tervei szerint a kett mindig ugyanazon a NetBIOS erforrstpuson
(1B) osztozik, s (sajnos) nem vlaszthat szt.
A Windows 95/98-as gpekbl nem lehet tartomny-ftallz, st mg kapcsolatba
sem lphetnek ilyennel. A Samba fejlesztcsoportja gy gondolja, hogy ez egy marketingfogs a Microsoft rszrl, amely gy akarja knyszerteni a felhasznlkat, hogy a
tbb alhlzatbl ll munkacsoport minden egyes alhlzatban legalbb egy
Windows NT munkalloms (vagy Samba kiszolgl) legyen.
Minden egyes alhlzat helyi ftallzja tovbbra is karbantartja az alhlzatra vonatkoz tallzlistt, s az alhlzatban ez lesz a hiteles lista. gy ha egy szmtgp szeretn
ltni a sajt alhlzatn belli kiszolglk listjt, akkor ennek az alhlzatnak a helyi ftallzjt krdezi le. Ha egy szmtgp az alhlzatn kvli kiszolglk listjt szeretn
megtekinteni, akkor is csak a helyi ftallzt kell megkeresnie. Erre azrt van lehetsg,
mert az alhlzat helyi ftallzjnak hiteles listja adott idkznknt szinkronizldik a
tartomny-ftallzjval, ami viszont szinkronizldik a tartomnyban lv tbbi alhl-

1. FEJEZET. ISMERKEDS A SAMBVAL

35

zat helyi ftallzival. Ennek a mveletnek a tallzlista tovbbadsa (browse list propagation) a neve.
Amennyiben szksges, a Samba betltheti a tartomny-ftallz szerept egy
Windows tartomnyban. Emellett mg helyi ftallzknt is mkdhet egy Windows
alhlzatban, s szinkronizlhatja a sajt tallzlistjt a tartomny-ftallzval.

A Windows Internet Name Service (WINS)


A Windows Internet Name Service (Windows internetes nvszolgltats, WINS) a NetBIOS nvkiszolgl (NBNS) Microsoft ltali megvalstsa. Mint ilyen, a WINS a NetBIOS
szmos jellemzjt rklte. Elszr is a WINS egyszer neveket hasznl a szmtgpek
s a munkacsoportok azonostsra: egy gphez pldul a fred, egy munkacsoporthoz
pedig a CANADA nv rendelhet. Emellett a WINS dinamikus: amikor egy gyfl elszr
kezdemnyezi a kapcsolatfelvtelt, meg kell adnia a gazdanevt, a cmt s a helyi WINS
kiszolglban lv munkacsoportjnak a nevt. A WINS kiszolgl mindaddig fenntartja
a kapcsolatot, amg az gyfl rendszeres idkznknt frissti a WINS regisztrlst, jelezve, hogy mg kapcsolatban van a hlzattal. Jegyezzk meg, hogy a WINS kiszolglk
nem egy tartomny vagy egy munkacsoport jellegzetessgei, hanem brhol lehetnek, s
brkit kiszolglhatnak.
Tbb WINS kiszolgl bellthat gy, hogy megadott id eltelte utn egymst szinkronizljk. Ez lehetv teszi, hogy a hlzatra belp vagy onnan kijelentkez gpeket az
egyik WINS kiszolgl egy msikhoz kldje. Mg elmletben ez hatkonynak tnik, hamar
zavaross vlhat a helyzet, ha tbb WINS kiszolgl fedi le a hlzatot. Mivel a WINS
kiszolglk keresztl-kasul jrhatnak tbb alhlzatban (vagy fixen bekdoljuk egy WINS
kiszolgl cmt minden egyes gyfelnkbe, vagy DHCP tjn juthatunk a cmhez), gyakran hatkonyabb, ha a Windows tartomnyok szmtl fggetlenl minden egyes
Windows gyflhez ugyanazt a WINS kiszolglt rendeljk. Ilyen mdon csak egyetlen
hiteles s a helyes informcikat tartalmaz WINS kiszolglnk lesz, s nem tbb, amelyek kzl mindegyik igyekezne folyamatosan szinkronban tartani magt a legutols vltozsokkal.
Az ppen aktv WINS kiszolglt elsdleges WINS kiszolglnak nevezik. E mell egy
msodlagos WINS kiszolgl is telepthet, amely az elsdleges WINS kiszolgl meghibsodsa vagy elrhetetlenn vlsa esetn tveszi annak a szerept. Jegyezzk meg,
hogy itt nincs lehetsg olyan vlasztsra, amellyel meghatrozhatnnk, hogy melyik gpbl legyen elsdleges vagy tartalk WINS kiszolgl a WINS kiszolglk megvlasztsa
statikus, s a rendszergazdnak elre el kell dntenie, hogy melyik legyen az. Mind az
elsdleges, mind brmelyik tartalk WINS kiszolgl rendszeres idkznknt szinkronizlja a cmadatbzisait.
A Windows opercis rendszerek csaldjn bell csak egy NT munkalloms vagy egy
NT kiszolgl tltheti be a WINS kiszolgl szerept. A Samba is mkdtethet elsdleges
WINS kiszolglknt, msodlagos WINS kiszolglknt viszont nem.

Mire kpes a Samba?


Az Olvas felteheten soha nem gondolta volna, hogy ennyire bonyolultak lehetnek a
Microsoft hlzatok. Nos, akkor lssuk, hogy miben segthet neknk a Samba! Az 1.6. tb-

36

SAMBA

lzat felsorolja azokat a szerepkrket, amelyeket a Samba egy Windows NT tartomnyban vagy Windows munkacsoportban betlthet, illetve nem tlthet be. Lthat, hogy
mivel az NT tartomny protokolljainak j rsze a Microsoft tulajdonban van, s mg nem
dokumentltk ket, a Samba nem tudja helyesen szinkronizlni az adatait egy Microsoft
kiszolglval, s szmos helyen nem alkalmazhat tartalkgpknt. Ugyanakkor a Samba
2.0 vltozata korltozott mrtkben mr tmogatja az elsdleges tartomnyvezrl hitelestsi protokolljait, s naponta jabb s jabb funkcikkal gyarapszik.
1.6. tblzat. A Samba ltal betlthet szerepkrk (a 2.0.4b vltozat szerint)
Szerepkr

Betlthet?

Fjlkiszolgl
Nyomtatkiszolgl
Elsdleges tartomnyvezrl
Tartalk tartomnyvezrl
Windows 95/98 hitelest
Helyi ftallz
Helyi tartalktallz
Tartomny-ftallz
Elsdleges WINS kiszolgl
Msodlagos WINS kiszolgl

Igen
Igen
Igen (Samba 2.1 vagy jabb ajnlott)
Nem
Igen
Igen
Nem
Igen
Igen
Nem

A SAMBA disztribci ttekintse


Amint korbban mr emltettk, a Samba klnbz programokbl ll, amelyek klnfle, de egymssal kapcsolatban ll feladatokat vgeznek. Ismerkedjnk meg rviden
ezekkel, s lssuk, miknt mkdnek egytt egymssal. A Samba disztribciban tallhat programok tbbsge a kt dmonja kr csoportosthat. Nzzk meg egy kicsit kzelebbrl az egyes dmonok feladatt:
smbd
Az smbd dmon a Samba kiszolgl gp s az gyfelei kztti megosztott erforrsok kezelsrt felels. Ez a dmon fjl-, nyomtat- s tallzszolgltatsokat knl
az SMB gyfelek szmra egy vagy tbb hlzaton keresztl. Az smdb kezeli a
Samba kiszolgl s a hlzati gyfelei kztti sszes rtestst, tovbb ez felel a
felhasznl hitelestsrt, az erforrsok zrolsrt s az adatok SMB protokollon
keresztli megosztsrt.
nmbd
Az nmbd dmon egy egyszer nvkiszolgl, lemsolja a WINS s a NetBIOS nvkiszolgl funkciit, amint ez vrhat is, amikor a LAN Manager csomagjval tallkozunk. Ez a dmon figyel a nvkiszolgl krseire, s a felhvsakor rendelkezsre
bocstja a megfelel informcikat. Ugyancsak ez a dmon adja t a hlzatnak a
tallzlistkat, s vesz rszt a tallz kivlasztsban.

1. FEJEZET. ISMERKEDS A SAMBVAL

37

A Samba disztribci emellett mg nhny kisebb Unix parancssori eszkzt is tartalmaz:


smbclient
FTP-szer Unix gyfl, ami Samba megosztsokhoz val kapcsoldshoz hasznlhat.
smbtar
Megosztsokban lv adatok biztonsgi msolatnak ltrehozshoz hasznlhat
program, hasonl a Unix tar parancshoz.
nmblookup
TCP/IP alap NetBIOS nvkeresseket vgz program.
smbpasswd
Ez a program a rendszergazda szmra lehetv teszi a Samba ltal hasznlt titkostott jelszavak megvltoztatst.
smbstatus
Ez a program jelentst kszt azokrl az aktulis hlzati kapcsolatokrl, amelyek
egy Samba kiszolgln lv megosztsokat clozzk.
testparm
Egyszer program a Samba konfigurcis fjljnak vizsglathoz.
testprns
Ez a program azt teszteli, hogy szlelte-e a klnbz nyomtatkat az smbd dmon.
A Samba minden jelentsebb kiadst alapos tesztelsnek teszik ki a bejelentst megelzen. Emellett a kibocstst kveten gyorsan frisstik, ha valamilyen problmt vagy
nemkvnatos mellkhatst fedeznek fel benne. A knyv rsnak idejn a legfrissebb stabil disztribci a Samba 2.0.5, a Samba 2.0 rgta vrt legjabb verzija. Ez a knyv a ma
mr elavultnak tekinthet 1.9.x verzik helyett a Samba 2.0 ltal tmogatott funkcikra
sszpontost.
(Amint a szerzk rjk, knyvk akkor kszlt, amikor a Samba fejleszti a 2.0.5 sz.
verzit bocstottk tjra. A magyar kiads idejn a Samba a 2.2.0 verzinl tart, a forgalomban lv Debian stabil [potato] s ms disztribcik azonban mg tartalmazzk a
2.0.7-est, aminek kvetkeztben nagyon sok felhasznl bizonyra ezt a ,,rgebbi verzit
hasznlja. Mindazonltal az OReilly knyvnek rtkt alapveten nem a verziszmok
hatrozzk meg. A knyv sszes informcija, tmutatsa rendkvl aktulis s hasznos
a hazai Linux-trsadalom szmra. Elssorban azrt, mert mg nem jelent meg magyar
nyelven ennyire tfog s ilyen nvj Samba-szakknyv. s persze hiba volna a verziszm jelentsgnek eltlzsa azrt is, mert az jabb s jabb Samba-fejlesztseket sokszor pusztn a Windows-forrskdok megszerzsnek nehzkessge, a kdvisszafejts
elhzdsa knyszerti ki, aminek a kvetkezmnyeivel viszont e ktet szerzi is foglalkoznak a lektor megjegyzse.)

38

SAMBA

Hogyan szerezhet be a Samba?


A Sambnak mind a binris, mind a forrskdja az interneten keresztl klnbz tkrkiszolglkrl szerezhet be. A Samba elsdleges helye a http://www.samba.org/ cmen
rhet el.
Aki viszont nem akar arra vrni, hogy felttlenl Ausztrlibl rkezzenek meg a csomagok, az az internet klnbz helyein is megtallja a Samba tkrzseit. A tkrzsek
listja a Samba elsdleges honlapjn tallhat meg.

A Samba 2.0 jdonsgai


A Samba 2.0 vltozatt nagy vrakozs elzte meg. Legfbb jdonsga az NT tartomnyok
sokkal ersebb tmogatsa, valamint az j Samba webadminisztrcis eszkz (Samba
Web Administration Tool, SWAT), mely utbbi egy, a Samba konfigurlsra hasznlhat,
bngsz alap segdprogram. Ezek mellett az 1998 nyarn s szn bevezetett javtsok
kzl mg sok ms is bekerlt ebbe a vltozatba.

NT tartomnyok
A Samba NT tartomnyok tmogatsa (a 2.0.x verzitl kezdden) jelents javulst eredmnyezett: ez lehetv teszi, hogy az SMB kiszolglk hasznljk a hitelest mechanizmusukat, ami nagyon lnyeges a jvbeli NT-kompatibilits miatt, s tmogassk az NT
tartomnyi bejelentkezseket. A tartomnyi bejelentkezsek lehetv teszi, hogy egy felhasznl bejelentkezzen egy Windows NT tartomnyba, s a tartomnyban lv sszes
szmtgpet hasznlhassa anlkl, hogy egyenknt be kellene jelentkeznie ezekre a
gpekre. A Samba 2.0.0 verzijt megelz verzik ugyan tmogattk a Windows 95/98
bejelentkezsi szolgltatsait, de az NT tartomnyba val bejelentkezseket nem. A tartomnyi bejelentkezsek tmogatsa ugyan mg nem teljes a Samba 2.0-ban, de rszben
mr megvalstsra kerlt.

Az adminisztrls knnytse
A SWAT, a Samba webadminisztrcis eszkze lehetv teszi egy kiszolgl egyszer teleptst s a konfigurcijnak mdostst anlkl, hogy le kellene mondani az egyszer,
szveg alap konfigurcis fjlrl. A SWAT grafikus illesztfelletet knl azokhoz az erforrsokhoz, amelyeket a Samba megoszt az gyfeleivel. Emellett a Samba nem kevs
ksrletezsi s emlkezetre hagyatkoz munkt is megtakart a hlzaton keresztli teleptssel s a konfigurcis mdostsokkal kapcsolatban. Mg azt is megtehetjk, hogy a
SWAT segtsgvel elvgznk egy indul teleptst, majd a konfigurcis fjlt ksbb kzi
ton mdostjuk, vagy fordtva. A Samba nem fog panaszkodni.
Ami a forrsprogramok lefordtst illeti, a GNU autoconf parancst hasznlhatjuk
most arra, hogy knnyebben legyen elvgezhet a kezdeti fordts s a telepts, s gyorsabban eljuthassunk a SWAT-hoz.

1. FEJEZET. ISMERKEDS A SAMBVAL

39

Teljestmny
A Samba j vltozatban jelentsen megntt a teljestmny s a sklzhatsg: a kdot
tszerveztk, s alaposan trtk az nmbd-t (a Samba nvkiszolgl dmonjt):
A nv/tallz szolgltats most megkzeltleg 35 000 egyidej gyfelet tmogat.
A fjl- s nyomtatszolgltatsok 500 egyidej felhasznlt tmogatnak egyetlen, kzepes mret kiszolglrl, a teljestmny szrevehet cskkense nlkl.
Ugyanazon a hardveren a Linux/Samba jobb teljestmnyt nyjt, mint egy NT kiszolgl. s ami mindenek fltt a legjobb: a Samba egyre javul.
A javtott zrol mechanizmusok lehetv teszik, hogy az gyflgpek helyileg teljes
fjlokat gyorstsanak, aminek ksznheten jelentsen javul a sebessg anlkl, hogy
a gyorstott fjlok ki lennnek tve a vletlen fellrs kockzatnak.

Tovbbi jellemzk
A felsoroltakon kvl a Samba 2.0 mg tovbbi tulajdonsgokkal is rendelkezik. A Sambhoz most ugyanazon a gpen mr tbb l-Sambt is elkszthetnk, melyek mindegyike
kln kiszolglnak tettetheti magt, hasonlan a modern webkiszolglk virtulis gazdihoz. Ez lehetv teszi egy gazda szmra, hogy tbb rszleget vagy csoportot szolgljon ki, vagy norml felhasznlnv/jelsz kombincit hasznlva lemezmegosztsokat
knljon, mg a nyomtatkat klnsebb biztonsgi korltozsok nlkl brki szmra
hozzfrhetv tegye. A nyomtats knnyebb vlt a Unix System V tulajdonosai szmra: a Samba most automatikusan megtallja a rendelkezsre ll nyomtatkat a Berkeleystlus nyomtatshoz hasonlan. Emellett a Samba kpes tbbfle kdlap kezelsre, gy
pldul Eurpn kvli nyelvek is hasznlhatk, tovbb a Secure Socket Layer (SSL) hasznlatval kpes az interneten elkldtt sszes adatnak, s nemcsak a jelsznak a titkostsra.

Kompatibilitsi javtsok
A Samba kpessgeinek nvekedsvel egytt ntt a Windows NT-vel fennll kompatibilits foka. A Samba mindig is tmogatta a jelszavak Microsoft stlus titkostst. Most
olyan eszkzkkel is rendelkezik, amelyekkel tvlthat a Microsoft-fle titkostsra, s
szinkronizlhatja egymssal a Unix s a Microsoft jelszfjlokat. Vgl a Samba ftallzja
utasthat arra, hogy klnbz helyi hlzatokon lv ms SMB kiszolglkkal szinkronizlja magt, lehetv tve, hogy az SMB zkkenmentesen mkdjn tbb hlzaton
keresztl. A Samba ehhez ms eljrst hasznl, mint a Microsoft, mely utbbi nincs dokumentlva.

Smbwrapper
Vgl ltezik egy teljesen j vltozat Unix gyfl, az gynevezett smbwrapper. Egy kernel modul helyett, amely lehetv teszi, hogy a Linux Samba gyflknt viselkedjen, most
egy parancssori bejegyzssel betlthet az a knyvtr, ami teljes SMB fjlrendszert bocst
bizonyos Unix vltozatok rendelkezsre. Miutn betltdtt a knyvtr, az ls /smb
parancs kiadsval kilistzhat a munkacsoportban lv sszes gp, s az /smb/kiszol-

40

SAMBA

glnv/megosztsnv parancs bersval eljuthatunk egy adott megosztshoz (megosztott knyvtrhoz), hasonlan a hlzati fjlrendszerhez (Network File System, NFS).
A knyv rsnak idejn az smbwrapper Linux, Solaris, SunOS 4, IRIX s OSF/1 opercis
rendszereken fut, s a kzeli jvben vrhatan tovbbi opercis rendszereken is futni
fog.

Ez mg nem minden
A Samba csodlatos eszkz, amelynek a kpessge a legkisebb SMB/CIFS hlzatokon is
megmutatkozik. Ebben a fejezetben bemutattuk a Sambt, s ami ennl is fontosabb, azt
is, hogy miknt illeszthet be egy Windows hlzatba. A kvetkez fejezetekben megismerkednk azzal, hogy miknt telepthetjk a Sambt egy Unix kiszolglra, ahol a kt
dmonja elhelyezkedik, tovbb azzal, hogy miknt konfigurlhatjuk a Windows 95, 98 s
NT gyfeleket a Sambval val egyttmkdshez. Hamarosan rezni fogjuk, hogy a
vegyes sszettel hlzatokkal kapcsolatos gondjaink s bajaink mr a mlt lesznek.
dvzljk nt a Samba csodlatos vilgban!

You might also like