29.9. Állomány- és nyomtatási szolgáltatások Microsoft® Windows® kliensek számára (Samba)

Készítette: Murray Stokely.

29.9.1. Áttekintés

A Samba egy olyan elterjedt nyílt forráskódú szoftver, ami Microsoft® Windows® kliensek számára tesz lehetővé állomány- és nyomtatási szolgáltatásokat. Az ilyen kliensek általa helyi meghajtóként képesek elérni a FreeBSD állományrendszerét, vagy helyi nyomtatóként a FreeBSD általt kezelt nyomtatókat.

A Samba csomagja általában megtalálható a FreeBSD telepítőeszközén. Ha a FreeBSD-vel együtt nem raktuk fel a Samba csomagját, akkor ezt később net/samba3 port vagy csomag telepítésével pótolhatjuk.

29.9.2. Beállítás

A Samba konfigurációs állománya a telepítés után /usr/local/share/examples/samba/smb.conf.default néven található meg. Ezt kell lemásolnunk /usr/local/etc/smb.conf néven, amelyet aztán a Samba tényleges használata előtt módosítanunk kell.

Az smb.conf állomány a Samba futásához használt beállításokat tartalmazza, mint például Windows kliensek számára felkínált a nyomtatók és “megosztások” adatait. A Samba csomagban ezen kívül találhatunk még egy swat nevű webes eszközt, amellyel egyszerű módon tudjuk az smb.conf állományt állítgatni.

29.9.2.1. A Samba webes adminisztrációs eszköze (SWAT)

A Samba webes adminisztrációs segédeszköze (Samba Web Administration Tool, SWAT) az inetd démonon keresztül fut démonként. Ennek megfelelőn az /etc/inetd.conf állományban a következő sort kell kivennünk megjegyzésből, mielőtt a swat segítségével megkezdenénk a Samba beállítását:

swat   stream  tcp     nowait/400      root    /usr/local/sbin/swat    swat

Ahogy azt a 29-1 Példa is mutatja, az inetd démont újra kell indítanunk a megváltozott konfigurációs állományának újbóli beolvasásához.

Miután az inetd.conf állományban a swat engedélyezésre került, a böngészőnk segítségével próbáljunk meg a http://localhost:901 címre csatlakozni. Először a rendszer root hozzáférésével kell bejelentkeznünk.

Miután sikeresen bejelentkeztünk a Samba beállításait tárgyaló lapra, el tudjuk olvasni a rendszer dokumentációját, vagy a Globals fülre kattintva nekiláthatunk a beállítások elvégzésének. A Globals részben található opciók az /usr/local/etc/smb.conf állomány [global] szekciójában található változókat tükrözik.

29.9.2.2. Általános beállítások

Akár a swat eszközzel, akár a /usr/local/etc/smb.conf közvetlen módosításával dolgozunk, a Samba beállítása során a következőkkel mindenképpen össze fogunk futni:

workgroup

A szervert elérni kívánó számítógépek által használt NT tartomány vagy munkacsoport neve.

netbios name

A Samba szerver NetBIOS neve. Alapértelmezés szerint ez a név a gép hálózati nevének első tagja.

server string

Ez a szöveg jelenik meg akkor, ha például a net view paranccsal vagy valamilyen más hálózati segédprogrammal kérdezzük le a szerver beszédesebb leírását.

29.9.2.3. Biztonsági beállítások

A /usr/local/etc/smb.conf állományban a két legfontosabb beállítás a választott biztonsági modell és a kliensek felhasználói jelszavainak tárolásához használt formátum. Az alábbi direktívák vezérlik ezeket:

security

Itt a két leggyakoribb beállítás a security = share és a security = user. Ha a kliensek a FreeBSD gépen található felhasználói neveiket használják, akkor felhasználói szintű védelemre van szükségünk (tehát a user beállításra). Ez az alapértelmezett biztonsági házirend és ilyenkor a klienseknek először be kell jelentkezniük a megosztott erőforrások eléréséhez.

A megosztás (share) szintű védelem esetében, a klienseknek nem kell a szerveren érvényes felhasználói névvel és jelszóval rendelkezniük a megosztott erőforrások eléréséhez. Ez volt az alapbeállítás a Samba korábbi változataiban.

passdb backend

A Samba számos különböző hitelesítési modellt ismer. A klienseket LDAP, NIS+, SQL adatbázis vagy esetleg egy módosított jelszó állománnyal is tudjuk hitelesíteni. Az alapértelmezett hitelesítési módszer a smbpasswd, így itt most ezzel foglalkozunk.

Ha feltesszük, hogy az alapértelmezett smbpasswd formátumot választottuk, akkor a Samba úgy fogja tudni hitelesíteni a klienseket, ha előtte létrehozzuk a /usr/local/private/smbpasswd állományt. Ha a Windows-os kliensekkel is el akarjuk érni a UNIX®-os felhasználói hozzáféréseinket, akkor használjuk a következő parancsot:

# smbpasswd -a felhasználónév

Megjegyzés: A Samba a 3.0.23c verziójától kezdődően a hitelesítéshez szükséges állományokat a /usr/local/etc/samba könyvtárban tárolja. A felhasználói hozzáférések hozzáadására innentől már a tdbsam parancs használata javasolt:

# pdbedit -a -u felhasználónév

A hivatalos Samba HOGYAN ezekről a beállításokról szolgál további információkkal (angolul). Viszont az itt vázolt alapok viszont már elegendőek a Samba elindításához.

29.9.3. A Samba elindítása

A net/samba3 port a Samba irányítására egy új indító szkriptet tartalmaz. A szkript engedélyezéséhez, tehát általa a Samba elindításának, leállításának és újraindításának lehetővé tételéhez vegyük fel a következő sort az /etc/rc.conf állományba:

samba_enable="YES"

Ha még finomabb irányításra vágyunk:

nmbd_enable="YES"
smbd_enable="YES"

Megjegyzés: Ezzel egyben a rendszer indításakor automatikusan be is indítjuk a Samba szolgáltatást.

A Samba a következőkkel bármikor elindítható:

# /usr/local/etc/rc.d/samba start
Starting SAMBA: removing stale tdbs :
Starting nmbd.
Starting smbd.

Az rc szkriptekkel kapcsolatban a 11.7 Szakaszt ajánljuk elolvasásra.

A Samba jelen pillanatban három különálló démonból áll. Láthatjuk is, hogy az nmbd és smbd démonokat elindította a samba szkript. Ha az smb.conf állományban engedélyeztük a winbind névfeloldási szolgáltatást is, akkor láthatjuk, hogy ilyenkor a winbindd démon is elindul.

A Samba így állítható le akármikor:

# /usr/local/etc/rc.d/samba stop

A Samba egy összetett szoftvercsomag, amely a Microsoft Windows hálózatokkal kapcsolatos széles körű együttműködést tesz lehetővé. Az általa felkínált alapvető lehetőségeken túl a többit a http://www.samba.org honlapon ismerhetjük meg (angolul).

Ha kérdése van a FreeBSD-vel kapcsolatban, a következő címre írhat (angolul): <freebsd-questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kérdése, kérjük erre a címre írjon: <gabor@FreeBSD.org>.