Tartalomjegyzék
Kivonat
A Samba segítségével egy UNIX-gép beállítható fájl- és nyomtatókiszolgálóként Mac OS X, Windows és OS/2 gépekhez is. A Samba mára egy teljes szolgáltatáskörrel bíró és precízen beállítható hálózati termékké fejlődött. Samba beállítása YaST, SWAT (webes felület) vagy konfigurációs fájl kézi szerkesztésével lehetséges.
Néhány, a Samba-dokumentációban és a YaST-modulban gyakran használt kifejezés:
A Samba a NetBIOS szolgáltatásokra épülő SMB (server message block, kiszolgáló-üzenetblokk) nevű protokollt használja. A Microsoft széles körben elérhetővé tette a protokollt, így más szoftvergyártók is kapcsolatot létesíthetnek egy Microsoft-tartománnyal. A Samba esetében az SMB protokoll a TCP/IP-protokollokra épül, tehát a TCP/IP-protokollcsaládot az összes kliensen telepíteni kell.
A CIFS (common Internet file system) a Samba által támogatott másik protokoll. A CIFS egy szabványos távoli fájlrendszer-elérési protokollt ad meg hálózati használathoz, amely lehetővé teszi a felhasználók csoportjának együttműködését és dokumentumok megosztását a hálózaton.
A NetBIOS, a számítógépek közötti névszolgáltatás biztosítására kialakított szoftvercsatoló (API). Ez lehetővé teszi, hogy a hálózatra csatlakoztatott gépek neveket foglaljanak le maguknak. A név lefoglalása után a gépek név alapján címezhetők. Nincs központi folyamat, amely ellenőrizné a neveket. A hálózat bármely gépe tetszőleges számú nevet foglalhat le, ha azok még nem használtak. A NetBIOS-csatoló többféle hálózati architektúrán is megvalósítható. Egy megvalósítás, amely viszonylag szorosan együttműködik a hálózati hardverrel, a NetBEUI, de sokszor és sokan ezt értik NetBIOS alatt. Létezik a Novell IPX protokolljára és TCP/IP-re épülő NetBIOS is (TCP/IP-n keresztüli NetBIOS).
A TCP/IP-n keresztül küldött NetBIOS-neveknek semmi közük sincs az /etc/hosts fájlban, illetve a DNS által használt nevekhez. A NetBIOS saját, teljesen független névkonvenciót használ. Az adminisztráció leegyszerűsítése érdekében célszerű azonban a DNS-gépnevekkel megegyező neveket, vagy magát a DNS-t használni. Éppen ezért a Samba által használt alapértelmezett beállítás is ez.
A Samba-kiszolgáló SMB/CIFS szolgáltatásokat és NetBIOS over IP elnevezési szolgáltatást biztosít a kliensek számára. A Linuxon a Samba-kiszolgáló három démonból áll: smnd az SMB/CIFS szolgáltatásokhoz, nmbd a névszolgáltatásokhoz és a winbind a hitelesítéshez.
A Samba-kliens a Samba-kiszolgáló Samba-szolgáltatásait SMB protokollon keresztül igénybe vevő rendszer. Az összes elterjedt operációs rendszer – például a Mac OS X, a Windows és az OS/2 is – támogatja az SMB protokollt. A TCP/IP protokollt az összes számítógépen telepíteni kell. A Samba a UNIX-változatok alá biztosít SMB-klienst. Linuxhoz egy külön kernelmodul is készült az SMB-hez, amely lehetővé teszi az SMB-erőforrások rendszerszintű integrációját. A Samba-klienshez nem kell démont futtatni.
Az SMB-kiszolgálók úgynevezett megosztásokon keresztül biztosítanak erőforrásokat a kliensek számára. A megosztás a kiszolgáló egyik könyvtárát és ennek alkönyvtárait tartalmazza. Ezt a kiszolgáló név alapján ajánlja ki (exportálja) és e név alapján érhető el. A megosztásnév tetszőleges lehet – nem kell megegyeznie az exportált könyvtár nevével. A nyomtatókhoz is van név rendelve. A kliensek a nyomtatót szintén név alapján tudják elérni.
A domain controller (DC) egy kiszolgáló, amely a felhasználói információkat kezeli a tartományban. Az adatreplikációhoz, a tartományon belül további tartomány lehet.
A Samba-kiszolgáló telepítéséhez indítsa el a YaST-ot és válassza ki a + menüpontot. Válassza ki a + lehetőséget, majd a mintát. A telepítési folyamat befejezéséhez erősítse meg a kívánt csomagok telepítését.
A Samba-kiszolgáló (a rendszerindítás során) automatikusan leállítható és elindítható, később pedig manuálisan. Az indítási és leállítási irányelv a YaST Samba kiszolgáló konfigurációjának része (lásd: 27.4.1. - Samba-kiszolgáló beállítása YaST segítségével).
A Samba szolgáltatások leállításához és elindításához a YaST segítségével, használja a + modult és ellenőrizze a winbind, smb és nmb szolgáltatásokat. Parancssorból a Samba futtatásához szükséges szolgáltatások az rcsmb stop && rcnmb stop paranccsal állíthatók le, illetve az rcnmb start && rcsmb start paranccsal indíthatók el; szükség esetén az rcsmb foglalkozik a winbind-dal.
A Samba-kiszolgáló openSUSE® rendszeren kétféleképp állítható be: a YaST segítségével és kézzel. A kézi beállítás részletesebb lehet, de a YaST GUI használata jóval kényelmesebb.
A Samba-kiszolgáló beállításához indítsa el a YaST programot és válassza ki a + menüpontot.
A modul első indításakor megjelenik a ablak, és feltesz néhány alapkérdést a kiszolgáló felügyeletével kapcsolatban. A beállítások végén meg kell adni a Samba adminisztrátori jelszavát (). A többi indítás esetén a jelenik meg.
A két lépésből és további beállításokból áll:
A legördülő menüből válasszon ki egy meglévő munkacsoportot/tartományt vagy adjon meg egy újat és nyomja meg a gombot.
A következő lépésben adja meg, hogy a kiszolgálónak kell-e CD/PDC-ként (elsődleges tartományvezérlőként) viselkednie, majd nyomja meg a gombot.
Kapcsolja be, amennyiben el kívánja indítani a vagy , majd nyomja meg az gombot. Majd az utolsó felugró ablakon adja meg a .
Ezek a beállítások később is módosíthatók a ablak ,, , és lapjain.
A Samba-kiszolgáló modul első indításakor a ablak jelenik meg közvetlenül az első két lépést követően a 27.4.1.1. - Kezdeti Samba beállítások részben leírtak szerint. Ennek segítségével adhatók meg a Samba-kiszolgáló beállításai.
A beállítások módosítása után az gomb megnyomásával lehet elmenteni a beállításokat.
Az lapon állítsa be a Samba-kiszolgáló indítási lehetőségeit. Ha a szolgáltatást minden rendszerindításkor el kívánja indítani, akkor válassza a lehetőséget. A manuális indítás aktiválásához válassza a lehetőséget. A Samba-kiszolgáló indításával kapcsolatos további információ: 27.3. - Samba indítása és leállítása.
Ezen a lapon a tűzfal portjait is megnyithatja. Ehhez válassza ki a menüpontot. Ha több hálózati csatolóval rendelkezik, akkor a Samba-szolgáltatásokhoz tartozó kiválasztásához kattintson a menüpontra, válassza ki a kívánt csatolót, majd kattintson az gombra.
A lapon adja meg az aktiválandó Samba-megosztásokat. Léteznek előre meghatározott megosztások, mint például a saját könyvtárak és a nyomtatók. Az menüpont segítségével válthat az és állapot között. Nyomja meg a gombot az új megosztások felvételéhez, illetve a lehetőségre a kiválasztott megosztás törléséhez.
engedélyezi az tagjainak, hogy megosszák saját könyvtárukat más felhasználók számára. Például users a helyi hatáskörben, vagy DOMAIN\Users a tartományi hatáskörben. A felhasználónak arról is meg kell bizonyosodnia, hogy a fájlrendszer jogosultságai engedélyezik a hozzáférést- A korlátozza a létrehozható megosztások számát. Ahhoz, hogy hitelesítés nélkül lehetővé tegye a megosztásokhoz való hozzáférést, használja a beállítást.
Az lapon adható meg a tartomány, amelyhez a gép rendelve van () és az, hogy használjon-e alternatív gépnevet a hálózatban (). Lehetséges a Microsoft Internet Name Service (WINS) használata is a névfeloldáshoz. Ehhez be kell állítani a ,és szükség esetén a lehetőséget is. Szakértői globális beállítások megadásához vagy felhasználói hitelesítés beállításához válassza ki a menüpontot.
Más tartományok felhasználóinak ehhez a tartományhoz való hozzáférésének engedélyezéséhez, állítsa be a megfelelő beállításokat a lapon. Új tartomány hozzáadásához nyomja meg a gombot. A kiválasztott tartomány eltávolításához nyomja meg a gombot.
Az lapon meg kell adni a hitelesítéshez használni kívánt LDAP-kiszolgálót. Az LDAP-kiszolgálóval kialakított kapcsolat ellenőrzéséhez nyomja meg a gombot. A szakértői LDAP beállítások megadásához, vagy az alapértelmezett beállításokhoz nyomja meg a lehetőséget.
További információ az LDAP beállításával kapcsolatban: Chapter LDAP—A Directory Service (↑Security Guide).
A SWAT (Samba Web Administration Tool) a Samba-kiszolgáló adminisztrációjára szolgáló alternatív eszköz. Ez egyszerű webes felületet biztosít a Samba-kiszolgáló beállításához. A SWAT használatához nyissa meg a http://localhost:901 címet a webböngészőben, és jelentkezzen be root felhasználóként. Ha nincs speciális Samba root fiókja, akkor használja a rendszer root fiókot.
![]() | A SWAT aktiválása |
|---|---|
A Samba-kiszolgáló telepítése után a SWAT még nincs aktiválva. Az aktiválásához nyissa ki a YaST + menüpontját, engedélyezze a hálózati szolgáltatások beállítását, válassza ki a táblázat pontját és kattintson az (be vagy ki) menüpontra. | |
Ha a Sambát kiszolgálóként kívánja használni, akkor telepítse a samba csomagot. A Samba fő konfigurációs fájlja az /etc/samba/smb.conf. Ez a fájl két fő logikai részre oszlik. A[global] rész a központi és általános beállításokat tartalmazza. A [share] rész pedig az egyedi fájl- és nyomtatómegosztásokat írja le. E megközelítés segítségével a megosztások jellemzői megadhatók megosztásonként eltérően, vagy a [global] részben egységesen. Ez javítja a konfigurációs fájl strukturális áttekinthetőségét.
A [global] rész alábbi paramétereit a saját hálózati beállításokhoz kell igazítani, hogy a gépek SMB-n keresztül hozzá tudjanak férni a Samba-kiszolgálóhoz Windows környezetben.
workgroup = TUX-NET
Ez a sor a Samba-kiszolgálót egy munkacsoporthoz rendeli. A TUX-NET helyére a hálózati környezet megfelelő munkacsoportját kell írni. A Samba-kiszolgáló a DNS-neve alatt jelenik meg, hacsak ez a név nem lett hozzárendelve a hálózat valamelyik másik gépéhez. Ha a DNS-név már foglalt, akkor a netbiosname= sorhoz hasonló módon adja meg a kiszolgáló nevét. Ezzel a paraméterrel kapcsolatos további információ az EZANEVEMsmb.conf man oldalon található.
os level = 20
Ez a paraméter azt szabályozza, hogy a Samba-kiszolgáló megpróbáljon-e LMB-vé (local master browser, helyi master böngésző) válni a munkacsoportban. A Samba 3 sorozatban, ritkán van szükség az alapértelmezett beállítás felülírására (20). Nagyon alacsony értéket válasszon, mint például a 2, hogy megkímélje a meglévő Windows-hálózatot a rosszul beállított Samba-kiszolgáló okozta zavaroktól. Ezzel a témával kapcsolatban további érdekes információt találhat angol nyelven a Samba 3 Howto dokumentum Network Browsing fejezetében: 27.7. - További információk .
Ha nincs más SMB-kiszolgáló jelen a hálózatban (például egy Windows 2000 kiszolgáló) és azt kívánja, hogy a Samba-kiszolgáló tárolja a helyi környezetben jelen lévő összes rendszer listáját, akkor állítsa az os level értékét nagyobbra (például 65-re). A Samba-kiszolgáló ezután LMB-ként kiválasztásra kerül a helyi hálózathoz.
A beállítás módosításakor gondosan mérlegelje a változásnak a meglévő windowsos hálózati környezetre gyakarolt hatását. Először próbálja ki a módosításokat egy elszigetelt hálózatban vagy a nap nem kritikus időszakában.
wins support és wins server
Ha a Samba-kiszolgálót aktív WINS-kiszolgálót működtető Windows-hálózatba kívánja integrálni, akkor használja a wins server beállítást és az értéke legyen a WINS-kiszolgáló IP-címe.
Ha a windowsos gépek külön alhálózatokhoz csatlakoznak, de tudniuk kell egymásról, akkor van szükség WINS-kiszolgálóra. A Samba-kiszolgáló is képes ellátni a WINS-kiszolgáló feladatait. Ehhez használja a wins support = Yes beállítást. Ügyeljen rá, hogy a hálózat csak egyetlen Samba-kiszolgálóján legyen engedélyezve ez a beállítás. A wins server és a wins support beállítás egyszerre nem használható az smb.conf fájlban.
Az alábbi példák bemutatják, hogyan tehető elérhetővé a CD-ROM meghajtó és a felhasználói saját könyvtárak (homes) az SMB-kliensek számára.
A CD-ROM véletlen megosztását az alábbi sorok megjegyzésekké tételével (ebben az esetben pontosvesszők beírásával) lehet letiltani. A CD-ROM Sambán keresztüli megosztásához törölje az első oszlopban lévő pontosvesszőket.
27.1. példa - CD-ROM megosztás (deaktivált)¶
;[cdrom] ; comment = Linux CD-ROM ; path = /media/cdrom ; locking = No
[cdrom] és comment
A [cdrom] bejegyzés a megosztás neve, amelyet az SMB-kliensek látnak a hálózaton. A megosztás további leírásához azonban megadható egy további megjegyzés (comment).
path = /media/cdrom
A path exportálja a /media/cdrom könyvtárat.
Egy nagyon megszorító alapértelmezett konfiguráció miatt ez a megosztás csak a rendszeren jelen lévő felhasználók számára elérhető. Ha ezt a megosztást mindenki számára elérhetővé kell tenni, akkor a konfigurációhoz adja hozzá a guest ok = yes sort. Ez a beállítás olvasás jogosultságot biztosít mindenkinek a hálózaton. Ezt a paramétert körültekintően kell kezelni. Ez különösen érvényes, ha a paramétert a [global] részben használjuk.
[homes]
A [homes] megosztásnak különös jelentősége van itt. Ha a felhasználó egy érvényes azonosítóval és jelszóval rendelkezik a Linux-fájlkiszolgálóhoz és a saját könyvtárához, akkor csatlakozni tud hozzá.
27.2. példa - [homes] megosztás¶
[homes] comment = Home Directories valid users = %S browseable = No read only = No create mask = 0640 directory mask = 0750
Ha nincs másik megosztás, amely az SMB-kiszolgálóhoz csatlakozó felhasználó megosztás nevét használná, akkor a megosztás a [homes] megosztási utasítások segítségével dinamikusan létrehozásra kerül. A megosztás eredményül kapott neve a felhasználónév.
valid users = %S
A %S helyére a megosztás konkrét neve kerül, amint a kapcsolat sikeresen létrejött. A [homes] megosztás esetén ez mindig a felhasználó neve. Ennek következményeképp a felhasználó megosztását csak a felhasználó érheti el.
browseable = No
Ez a beállítás láthatatlanná teszi a megosztást a hálózati környezetben.
read only = No
A Samba alapértelmezés szerint a read only = Yes paraméterrel letiltja az exportált megosztás írási hozzáférését. Egy megosztás írhatóvá tételéhez a read only = No értéket kell beállítani, amelynek hatása egyébként megegyezik a writable = Yes paraméterével.
create mask = 0640
A nem MS Windows NT-re épülő rendszerek nem foglalkoznak a UNIX-jogosultságokkal, így egy fájl létrehozásakor nem rendelnek hozzá jogosultságokat. A create mask paraméter ezért meghatározza az újonnan létrehozott fájlok hozzáférési jogosultságait. Ez természetesen csak az írható megosztásokra érvényes. A gyakorlatban ez a jogosultságérték azt jelentené, hogy a tulajdonos olvasási és írási, a tulajdonos elsődleges csoportjának tagjai pedig olvasási jogosultsággal rendelkeznek. A valid users = %S paraméter azonban letiltja a csoport olvasási hozzáférését, hiába rendelkezik a csoport olvasási jogosultsággal. Ahhoz, hogy a csoport rendelkezzen olvasási vagy írási hozzáféréssel, kapcsolja ki a valid users = %S sort.
A biztonság növelése érdekében minden megosztási hozzáférés védhető jelszóval. Az SMB használatával a következő módokon lehet ellenőrizni a jogosultságokat:
security = share)A megosztáshoz szigorúan hozzátartozik egy jelszó. Csak a jelszót ismerő személyek férhetnek hozzá a megosztáshoz.
security = user)A változat kapcsán először foglalkozunk a felhasználó fogalmával az SMB-n belül. Minden felhasználónak saját jelszóval kell bejelentkeznie a kiszolgálóhoz. Regisztráció után a kiszolgáló az egyes megosztásokhoz a felhasználói névtől függően biztosít hozzáférést.
security = server)
A kliensek felé a Samba úgy működik, mintha felhasználói szintű módban futna. A valóságban azonban az összes jelszólekérdezést átadja egy másik felhasználói szintű kiszolgálónak, amely a hitelesítést végzi. Ehhez a beállításhoz szükség van egy további password server paraméterre.
security = ADS)Ebben a módban a Samba tartománytagként viselkedik az Active Directory környezetben. Ehhez a módhoz a gépen futó Samba szolgáltatásnak szüksége van telepített és beállított Kerberosra. A Samba használatában csatlakoztatni kell a gépet a az ADS tartományhoz (realm). Ezt a YaST moduljában lehet megtenni.
security = domain)
Ez a mód akkor működik megfelelően, ha a gép Windows NT Domain környezethez csatlakozik. A Samba átadja a felhasználónevet és a jelszót az Elsődleges vagy Tartalék Windows NT tartományvezérlőnek. Pontosan úgy, ahogy azt a Windows NT Server teszi. Ehhez az encrypt passwords paramétert yes értékre kell állítani.
A megosztási, felhasználói, kiszolgáló- és tartományszintű biztonság közötti különbség, hogy az utóbbi a teljes kiszolgálóra érvényes. A kiszolgáló egyedi megosztásai már nem védhetők külön megosztásonkénti vagy felhasználói szintű biztonsággal. Megteheti azonban, hogy a rendszer minden beállított IP-címéhez külön Samba-kiszolgálót futtat.
A tárggyal kapcsolatos további információt a Samba 3 HOWTO-gyűjtemény tartalmaz. Ha egy rendszeren több kiszolgáló van, akkor az interfaces és bind interfaces only beállításra is figyeljen.
A kliensek a Samba-kiszolgálót csak TCP/IP-n keresztül érik el. A NetBEUI és a NetBIOS IPX-en keresztül nem használható Sambával.
Állítson be egy Samba-klienst a Samba-kiszolgálón található erőforrások (fájlok vagy nyomtatók) használatához. A + menüpontban adja meg a tartományt vagy munkacsoportot. Ha aktiválja az menüpontot, akkor a felhasználói hitelesítés a Samba-kiszolgálón keresztül történik. Az összes beállítás megadása után a befejezéshez kattintson a gombra.
A túlnyomórészt Windows-klienseket tartalmazó hálózatban gyakran igény, hogy a felhasználók csak érvényes azonosítóval és jelszóval regisztrálhassák magukat. Windows alapú hálózatban ezt a feladatot az elsődleges tartományvezérlő (primary domain controller, PDC) kezeli. A Windows NT kiszolgáló beállítható PDC-ként, de a feladat Samba-kiszolgálóval is elvégezhető. Az smb.conf [global] részébe beírandó bejegyzéseket a 27.3. példa - Az smb.conf globális része mutatja be.
27.3. példa - Az smb.conf globális része¶
[global]
workgroup = TUX-NET
domain logons = Yes
domain master = Yes
Amennyiben titkosított jelszavakat használnak, a Samba-kiszolgálónak ellenőrzés céljából tudnia kell ezeket kezelni. A [global] encrypt passwords = yes bejegyzése kapcsolja ezt be (a Samba 3-as verziójában már ez az alapértelmezés). Ezenfelül a felhasználói azonosítókat és jelszavakat a Windowsnak megfelelő titkosított formátumban kell előkészíteni. Ez az smbpasswd -a name paranccsal hajtható végre . Hozza létre a számítógépek tartományazonosítóját (ezt a Windows tartomány igényli) az alábbi parancsokkal.
useradd hostname\$ smbpasswd -a -m hostname
Az useradd parancs használatakor egy dollárjelet kell beírni. Az smbpasswd ezt automatikusan beszúrja a -m paraméter használata esetén. A megjegyzéssel ellátott konfigurációs példa (/usr/share/doc/packages/samba/examples/smb.conf.SUSE) tartalmazza a feladatot automatizáló beállításokat is.
add machine script = /usr/sbin/useradd -g nogroup -c "NT Machine Account" \
-s /bin/false %m\$
Annak érdekében, hogy a Samba parancsfájl megfelelően fusson, válassza ki a megfelelő adminisztrátori jogokkal rendelkező Samba felhasználót és adja hozzá a az ntadmin csoporthoz. Ezután a Linux-csoporthoz tartozó összes felhasználóhoz Tartományadminisztrátor állapot rendelhető a következő paranccsal:
net groupmap add ntgroup="Domain Admins" unixgroup=ntadmin
A témakörrel kapcsolatos információt a Samba 3 HOWTO-gyűjtemény (/usr/share/doc/packages/samba/Samba3-HOWTO-Collection.pdf) 12. fejezete tartalmaz.
A digitális dokumentáció részletes információkat tartalmaz a Sambáról. Parancssorban adja ki az apropos samba parancsot néhány kézikönyvoldal (man) megjelenítéséhez, vagy ha a Samba már telepítve van, akkor böngésszen bátran az /usr/share/doc/packages/samba könyvtárban, ahol többféle online dokumentum és példa is található. Egy megjegyzésekkel ellátott példakonfiguráció az (smb.conf.SUSE) található az examples alkönyvtárban.
A Samba 3 csapat által biztosított Samba HOWTO-gyűjtemény a hibajavítással kapcsolatos részt tartalmaz. Ezen felül a dokumentum V. része a konfiguráció ellenőrzésével kapcsolatos részletes útmutatót tartalmaz. A samba-doc csomag telepítése után az /usr/share/doc/packages/samba/Samba3-HOWTO-Collection.pdf fájlban keresse meg a HOWTO-t.
Ugyancsak érdemes elolvasni az openSUSE wikiben a Samba szócikket: http://en.openSUSE.org/Samba.