Samba telepítése és beállítása Ubuntu szerveren

2009.11.22. | 59 hozzászólás | Kategória: Ubuntu

A most következő leírásban megtudhatjátok, hogyan hozhattok létre egy Ubuntu Serverből Windows fájl szervert.

Ehhez a legelterjedtebb rendszert a SAMBA -t fogjuk használni. Hogy mi az a SAMBA arról itt olvashatsz egy részletes leírást.

1. Tegyük be az Ubuntu server telepítő lemezt

2. Lépjünk be a saját felhasználónév – jelszó párosunkkal

3. Csatlakoztassuk fel a kötetünket! Ehhez adjuk ki a konzolon a

mount /dev/cdrom

parancsot

4. Ellenőrizzük le, hogy a telepítési forrásaink között szerepel-e a cdrom. Ha nem akkor adjuk meg!
4.1 Készítsünk biztonsági másolatot a /etc/apt/sources.list állományról a konzolon kiadott

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bkp

paranccsal
4.2 Szerkesszük a /etc/apt/sources.list állományt a

sudo vi /etc/apt/sources.list

paranccsal
4.3 Keressük meg a #deb: cdrom [Ubuntu-Server kezdetű sort és töröljük ki a sor elejéről a #-ot. Ha megvagyunk nyomjuk meg az [Esc] -et aztán a :x -szel mentsünk és lépjünk ki a VI alkalmazásból.
4.4 frissítsünk a sudo apt-get update -tel

5. Telepítsük fel a SAMBA és a SAMBA-DOC -ot! Adjuk ki a konzolon a

sudo apt-get install samba samba-doc

parancsot. A megjelenő kérdésre nyugodtan ajuk meg a Y -t

sudo apt-get install samba

sudo apt-get install samba

6. Ha lefutott a telepítő akkor nézzünk néhány alapbeállítást

6.1 Készítsünk biztonsági másolatot a /etc/samba/smb.conf állományról a konzolon kiadott

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bkp

paranccsal

6.2 majd kezdjük el szerkeszteni a /etc/samba/smb.conf- ot

sudo vi /etc/samba/smb.conf

Nyugodtan jelöljünk ki mindent és töröljük (A VI használatához ITT találsz segítséget!)

Gépeljük be az alábbi sorokat:

[global]
workgroup = TARTOMANY
netbios name = GEPNEV
guest ok = yes
read only = no
security = share
guest account = nobody
 
[megosztas1]
comment = Vendeg megosztas
path = /tmp
browseable = Yes
read only = Yes
guest ok = Yes

6.3 Mentsük el az smb.conf -ot majd indítsuk újra a SAMBA -t a

sudo /etc/init.d/samba restart

paranccsal

6.4 Ha jól dolgoztunk akkor a Windows -os kliens gépünkön a hálózat tallózásakor láthatjuk a Tartomany munkacsoportban a Gepnev -vel megadott Samba szerverünket és gépre kattinva egy megosztást megosztas1 névvel. A megosztas1 -re kattintva pedig a szerveren megosztott /tmp tartalmát

Windows hálózat

Windows hálózat

Megosztott mappa

Megosztott mappa

Nézzük át mit is állítottunk be az smb.conf -ban!
a [global] -ban

workgroup = Tartományunk (munkacsoportunk) neve
netbios name = szerver gépneve
guest ok = vendég hozzáférés engedélyezése (Yes / No)
read only = csak olvasható -ság beállítása (Yes / No)
security = biztonsági szint (user / share / domain / ADS / server) Erről részletesebb dokumentációt ITT találsz
guest account = vendég felhasználó

a [megosztas1] -ben
comment = Megjegyzés a megosztáshoz
path = a megosztott könyvtár / állomány elérési útja a szerveren
browseable = tallózható (Yes / No)
read only =csak olvasható (Yes / No)
guest ok =Vendég is hozzáférhet (Yes / No)

Gyakorlásképpen csináljunk egy új, publikus megosztást ahol a megosztott mappába bárki írhat!

Hozzuk létre a szerveren a /home/public mappát a sudo mkdir /home/public parancssorral.
Állítsunk be 777 (azaz Írás, Olvasás, Futtatás mindenkinek) jogot a mappára a sudo chmod 777 /home/public paranccsal

Az smb.conf -ot egészítsük ki az alábbi sorokkal

[Public]
comment = Ide barki irhat
path = /home/public
browseable = Yes
writeable = Yes
guest ok = Yes

Mentsük el az állományt és nézzük meg a kliens gépről a szerverünk megosztásait. Ha mindent jól csináltunk akkor látnunk kellene a Public megosztást és írni is tudunk a mappába. Hozzunk létre benne egy új szöveges dokumentumot!

Szerveren létrehozott szöveges dokumentum

Szerveren létrehozott szöveges dokumentum

Eddig a SAMBA segítségével csináltunk egyszerű megosztásokat amiket a hálózatunkból mindenki elérhet és a mappára vagy fájlra adott jogokkal tudja a megosztásokat használni. A következő részben rábírjuk Samba szerverünket a felhasználói azonosításra és az ún. HOME könyvtárak kezelésére.

7. Felhasználói azonosítás és Home könyvtár elérés beállítása
7.1 Módosítsuk az smb.conf [global] részét az alábbiakkal:

security = user
encrypt passwords = yes

töröljük ki a guest ok = yes és a read only = No sorokat!

Tehát a security -t share -ról user -re módosítjuk, beállítjuk hogy a jelszavakat titkosítsa és megtiltjuk a vendég elérést valamint. Ha a kliens gépről tallózunk már nem látjuk direktben a megosztásokat mivel kér egy felhasználó nevet és jelszót a szerver.

7.2 Ahhoz, hogy azonosítani tudjon minket a SAMBA létre kell hoznunk a SAMBA felhasználóinkat a Linuxos felhasználókból. Ehhez használjuk az alábbi parancsot
sudo smbpasswd -a felhasznalonev

Adjuk meg a felhasználónak a SAMBA jelszavát, majd ismétejük meg. Ha az added user felhasznalonev -et látjuk akkor minden rendben van. Így a kliens gépről már csak a megadott felhasználónév / jelszó párossal lehet elérni a megosztásokat.
7.3 A Home könyvtárak kezeléséhez és eléréséhez egészítsük ki az smb.conf -ot

[homes]
comment = Sajat mappa
path = /home/%U
browseable = yes
writable = yes

Így a megosztások között tallózva a home megosztás alatt a beléptetett felhasználó a saját mappájának tartalmát fogja látni.

8. Ha a szerverünk egész nap (vagy legalább munkaidőben folyamatosan) úgyis be van kapcsolva ellentétben a kliens gépekkel érdemes megadnunk, hogy a SAMBA legyen a hálózatunkon a főtallózó tehát a helyi master. Ehhez el kell érnünk hogy a “gépek közötti szavazást” a fő tallózó kérdésben mindig megnyerje. Mind mindig most is az smb.conf -ot szerkesztjük és kiegészítjük a [global] szekciót az alábbi sorokkal

os level = 66
local master = yes

Tehát az os levelt jó magasra állítjuk (a Windows NT-s gépeké 33 viszont az újabb XP, Vista stb. operációs rendszerek miatt annál mindenképp nagyobb kell, hogy legyen. Jelenleg a 66 elegendő) és beállítjuk local master -nek a SAMBA -t.

Ha a hálózatunk nagyobb kiterjedésű és a munkacsoport vagy tartomány több alhálózatban is szerepel akkor nem elegendő a helyi főtallózói szerep, hanem a tartomány főtallózást is a szervernek kell adnunk. Ehhez az smb.conf [global] -ját ismét két sorral bővítjük

domain master = yes
preffered master = yes

azaz a Samba lesz a domain master és a preferált master is.

9. A Samba mint elsődleges tartományvezérlő (Primary Domain Controller )

A Windows NT sorozat megjelenésével a Windows kliensek képesek lettek a tartományba lépésre ahol a felhasználó hitelesítési információit nem a helyi gép végzi el, hanem egy tartományvezérlő(PDC azaz Primary Domain Controller).
Régebben csak a Windows szerver változatai voltak erre képesek (mivel ez a szolgáltatás már nem a NetBIOS protokollon alapult). A Samba fejlesztői viszont megoldották, hogy a Samba szerver is képes legyen PDC -ként viselkedni.

9.1 A megoldáshoz az smb.conf -ban a [global] szakaszt kell ismételten kiegészíteni pár egyszerű sorral:

domain logons = yes
wins support = yes

és létre kell hoznunk egy netlogon megosztást is:

[netlogon]
path = /home/netlogon
public = no
writeable = no
browseable = no

A fenti beállítások alapján nem tudják majd írni a felhasználók és sem is látják tallózás közben, tehát csak az képes hozzáférni aki tud a létezéséről. Eután indítsuk újra a SAMBA -t:
sudo /etc/init.d/samba restart

9.2 Ahhoz, hogy a tartományba a klienseink be tudjanak lépni az Ubuntu szerveren el kell végezni az alábbi műveleteket:
Vegyük fel a kliens gépet először a Linux majd a Samba felhasználók közé (shell-re és saját könyvtárra nincs szükség)

sudo useradd -s /bin/false -d /dev/null kliensgepneve$
sudo smbpasswd -a -m kliensgepneve$

(a kliensgepneve = a windowsos gépünknek adott név, amit a start menü -> beállítások -> vezérlőpult -> rendszer -ben a számítógépnév fül alatt a Módosítás gombra kattintva tudunk megnézni)
Adjunk a szerveren a root -nak egy SAMBA jelszót
sudo smbpasswd -a root

9.3 Most pedig állítsuk be a kliensünket, hogy a munkacsoport helyett a tartomány tagja legyen:
start menü ->beállítások -> vezérlőpult -> rendszer -ben a számítógépnév fül alatt a Módosítás gombra kattintsunk és a Tagság résznél jelöljük be a Tartomány -t és írjuk be a tartományunk nevét

Windows tartományba léptetése

Windows tartományba léptetése

Ezután adjuk meg a root -ot mint felhasználó az előzőekben beállított jelszavával

Root felhasználó és jelszó megadása

Root felhasználó és jelszó megadása

Ha mindent jól csináltunk akkor kapunk egy szép kis üdvözlő üzenetet és “természetesen” újra kell indítani a gépünket.

A fenti lépéseknél én eddig 2 hibába futottam bele:

  1. Nem találja a TARTOMANY domain kiszolgálóját a kliens. Mivel az smb.conf -ban engedélyeztük a wins supportot érdemes a kliensünknél is bállítani a WINS címét:
    start menü -> beállítások ->vezérlőpult -> hálózati kapcsolatok -> helyi kapcsolat -> Tulajdonságok -> TCP/IP protokoll -> tulajdonságok -> speciális -> WINS fül -> Hozzáadás -nál írjuk be a szerverünk IP címét
  2. Beléptetésnél azt írja, hogy nem létesíthetünk több kapcsolatot ugyanazon felhasználóval. Ehhez mielőtt a munkacsoportról tartomány -ra állítjuk a klienst jelentkezzünk ki (start menü -> leállítás -> kijelentkezés) majd lépjünk be újra helyi (rendszergazdai jogokkal rendelkező) fiókunkba.
    Újraindítás után a Bejelentkezés ablakban immáron be tudunk lépni a Samba -s felhasználónév / jelszó párosunkkal a tartományba

    Bejelentkezés a Windows rendszerbe

    Bejelentkezés a Windows rendszerbe

9.4 Mivel a Samba konfigurációban nem állítottuk bejelntkezési profilokat ezért egy kis hibaüzenetet kapunk de ettől még be tudunk jelentkezni és a megosztott mappákat (beleértve a home könyvtárunkat is) elérjük csak kilépéskor nem mentődnek el a profilunk beállításai. Természetesen ha már a szerveren vagyunk azonosítva és ott van a home könyvtár akkor tároljuk is ott a profilunkat valamint dokumentumainkat, hogy bármelyik tartományi gépről bejelentkezve a későbbiekben elérjük azokat.

Az smb.conf -ban adjuk meg hogy hol érik el a profilt, csináljunk egy profiles és egy users megosztást is:

[global]
 
....
logon path = \\%L\profiles\.profile
logon drive = H:
logon home = \\%L\%U
 
[profiles]
comment = Halozati profilok
path = %H
read only = No
create mask = 0600
directory mask = 0700
hide unreadable = Yes
store dos attributes = Yes
 
[users]
comment = Felhasznalok
path = /home
read only = No
inherit acls = Yes
veto files = /aquota.user/groups/shares/
 
valamint módosítsuk kicsit a homes megosztásunkat is:
[homes]
 
comment = Sajat mappa
valid users = %S, %D%w%S
read only = no
inherit acls = Yes
browseable = No

Ezek után ha belépünk a tartományba akkor a H: meghajtó a szerveren lévő home könyvtárunkra mutat és elmentődnek a profil beállításaink is. Ahhoz, hogy a Dokumentumok alapértelmezésben a szerveren kerüljenek tárolásra a Windowsban a Dokumentum mappa alapértelmezett helyét meg kell változtatnunk. Ehhez kattintsunk jobb egérrel a Dokumentumok mappára majd a Tulajdonságok -ra. Ezután az Áthelyezés… -re és válasszunk ki egy mappát a szerveren lévő saját (home) könyvtárunkban!

Amennyiben gondod akadt a telepítéssel, beállítással vagy valami hibát találsz a leírásban kérlek jelezd!

Szólj hozzzá Trackback 12381 olvasás, 1 ma

Kapcsolódó írások

Hozzászólások követése

59 hozzászólás

  1. atez73

    kunci:
    Nagy rejtély de megoldodott.

    Én addig nem adok fel semmit amig el nem fogynak az ötleteim

    üdv Attila

    “Nincs lehetetlen”

  2. zocez

    Tudtok valami megoldást, hogy ubuntu alol tudjam a win7-es megosztott könyvtárakat böngészni.

  3. atez73

    zocez:

    A Windows 7 alatt kell a könyvtárat megosztani nyomtatómegosztást engedélyezni(Vezérlőpult hálózati kapcsolatok.)
    utána már böngészhető rákattintasz a gép nevére felcsatolja a
    a gép mappáit, amit megosztottál. persze meg kell nézni a policy
    beállításokat.

  4. marci

    sziasztok, megcsináltam nagyjából mindent a leírás szerint, de a mappákat nem akarja megnyitni, hanem másik gépről csak a nyomtatót érem el, ubuntu szerver legújabb verzióját használom.
    a segítséget előre is köszönöm

  5. atez73

    Mappák jogosulságainak beállitása Irás/olvasás

    Melyik verziót használod ?

    üdv
    atez73

  6. marci

    hali atez! szerintem a leg frissebbet, amit az apt-get install samba parancsal lehet fel telepiteni, a legujabb ubuntu servert használom, köszönöm előre is, a lényeg az hogy egy mappát szeretnék megosztani a hálon, nem a tmpet, azt hogy lehet?
    köszi előre is!

  7. atez73

    marci:

    Szia

    Igazából látnom kellene hogy,miként néz ki a beállításod.
    Egy kérdés használod a webmint ez egy webfelületü beállítási
    lehetőséget ad a számodra behívása https://127.0.0.1:10000
    Ezen a területen szinte mindent be tudsz állítani
    a network server menűpont alatt van a samba szerver beállításai
    a Tmp mappa a fenti leírás szerint egy példa bemutatása szempontjából tették oda ez nem függvénye.
    Mivel hogy a felhasználóknak saját home mappa jön létre H: meghajtóval de az lehet F: meghajtó is azt te adod meg az smb.conf -ban Tehát ezen kivül amit újonnan létrehozol mappát
    azt is megoszthatod a hálozaton akár a Cdrom meghajtót is.
    Amennyiben nincs webmin alkalmazásod megteheted a swat – al is
    Vagy directben az smb.conf állományban.

    Remélem sikerült tippet adnom sok sikert !!!

    üdv Atez

  8. kunci

    Kedves Marci!

    az smb.conf -ban hozd létre a megosztásokat:

    [megosztas1]
    comment = Vendeg csak olvashato megosztas
    path = /olvas
    browseable = Yes
    read only = Yes
    guest ok = Yes

    [megosztas2]
    comment = Vendeg irhato megosztas
    path = /ir
    browseable = Yes
    writeable = Yes
    guest ok = Yes

    a path = után a szerveren létező mappanevet kell írni útvonallal együtt! Tehát előtte szerveren hozd létre az adott mappát és a chmod -ot is be kell állítani. Olvashatónál 755 -re, írhatónál 777-re.

  9. atez73

    Nyomtatási jogok megadásának módja ?

    Az a kérdésem lenne hogy vagy egy Epson Stylus SX 200 -as nyomtatóm
    usb csatlakozással)
    Probléma oka: A nyomtatóval nem tudok nyomtatni tartományi szinten azaz amelyik felhasználóval belépek nem tudok nyomtatást
    végezni a nyomtató az ubuntu szerveren van telepítve.
    Mit kell tennem hogy mükődjön a nyomtatás ?

  10. marci

    köszönöm a válaszokat, sajnos most nem vagyok otthon, de majd az itt leirtakat, kipróbálom, a szerverem ugyvan beállitva hogy távolról is tudjak telnetelni, ha esetleg nekem nem sikerülne majd, akkor valakit megkérnék hogy segitsen, egyszerü telepitéssel telepitettem a sambat, a webmint még nem probáltam meg, azt lehet ugy feltelepiteni a serveren hogy ne keljen hozzá a deszktopos felület ubuntuhoz? mert valamit olvastam, hogy kelhet hozzá, mégegyszer köszönöm a segitségeket, jövöhéten már otthon leszek és akkor tudok foglalkozni a dologgal, nagyon jó lenne, mert igy nem kellene ftpn keresztül masolgatnom :-D
    köszönöm mégegyszer mindenkinek.
    üdv marci.
    email: humannoidboy@gmail.com

  11. fatez

    marci:
    Az a igazság hogy én telepítettem a desktopos felületet
    mert így sokkal egyszerűbb legalábis a számomra
    másik dolog hogy a gnome-commander segítségével is
    root jogosultsággal a könyvtárak beállítását is lehet
    eszközölni.

    üdv atez

  12. kunci

    marci: A Webminhez nem kell desktop felület.
    Viszont Samba webes konfigurálásához inkább a SWAT -ot ajánlom!

  13. tapasztosz

    Az hogyan tudom megoldani, hogy a Win C meghajtójához írási joga legyen a felhasználónak? Mert onnastól kezdve, hogy tartományba van a gép a felhasználónak a beállításait, profilját nem tudja a gép elmenteni. Próbáltam a root felhasználóval, amivel beléptettem a tartományba a gépet, de azzal sem tudok jogot adni a c meghajtóhoz.

    Köszi

  14. kunci

    tapasztosz: Szia tapasztosz!
    Próbáld meg rendszergazdai jogú felhasználóval az intézőben a C-re jobb klikk -> tulajdonságok -> Biztonság fül alatt kijelölöd a Mindenki -t és alattuk az Írás -t az Engedélyezés oszlopban engedélyezed (pipa).

  15. tapasztosz

    Ahogy a gép tartományba lett rakva, a helyi jogok nem érvényesülnek, a volt felhasználómmal sem tudok már vissza lépni. Amit leírtál, köszi, azt már próbáltam. Esetleg valami más ötleed nincs véletlenül?

    Köszi

  16. kunci

    tapasztosz: Miért nem lehet a helyi felhasználóval belépni? Belépéskor a lenyílóban ne a domain nevét hanem a helyi gép nevét válaszd ki. Esetleg megpróbálhatod a fent leírt módon csak úgy, hogy a Speciális gombra kattintasz és ott próbálkozol.

  17. Thomas

    Sziasztok!

    Nem boldogulok a sambaval. UBUNTU 10.04 frissítve napra készen, feltettem a sambat. A problémám, hogy nem lehet tallózni, illetve ha a munkacsoport tagjait nézem xp alatt nem jelenik meg. Elérni, írni, olvasni tudok a megosztásokban, ha IP cím alapján megyek rá (futtatás->\\IP CÍME A SERVERNEK) ugyan ez a helyzet ubuntu alól is helyek->hálózat->windows hálózat: nem csatolható. helyek->kapcsolódás kiszolgálóhóz->IP cím: működik. A gépek 1 munkacsoportban vannak. itt van az smb.conf:

    [global]
    workgroup = WORKGROUP
    netbios name = SRV
    guest ok = yes
    read only = no
    security = share
    guest account = nobody

    [sorozatok 1TB]
    comment = sorozatok 1TB
    path = /media/1TB/sorozatok
    writeable = yes
    browseable = yes
    guest ok = yes

    [sorozatok 750GB]
    comment = sorozatok 750GB
    path = /media/750GB/sorozatok
    writeable = yes
    browseable = yes
    guest ok = yes

    [install-win]
    comment = install-win
    path = /media/1TB/install-win
    writeable = yes
    browseable = yes
    guest ok = yes

    mi lehet a gond?

  18. kunci

    Thomas: Szia!
    Windowsban engedélyezve van a nyomtató- és fájlmegosztás?
    Névfeloldás működik?

    Esetleg próbáld meg a [global] -t kiegészíteni:
    os level = 66
    local master = yes

Oldalak:
1 2 3 3820

Szólj hozzá

Használható HTML tagek: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

A hozzászólás elküldésével elfogadod az oldal felhasználási feltételeit!

Értesítés beállítása hozzászólás nélkül