70
A munkaállomás eth0 interfészének konfigurációja megegyezik a szerver eth0
interfészének konfigurációjával. A munkaállomás eth1 interfészének konfigurációja az
alábbi lesz:
IPv4 cím: 192.168.1.2
Hálózati maszk: 255.255.255.0
Hálózat: 192.168.1.0
Üzenetszórási cím: 192.168.1.255
DNS kiszolgáló: 192.168.1.254
Névkeresési tartományok: kefo.hu
7.2. Samba kiszolgáló
Az alábbiakban két megosztást hozunk létre. Az első egy mindenki által írható-olvasható
megosztás lesz, míg a második csak egy adott felhasználó (hallgato) számára nyújt
hozzáférést egy könyvtárhoz. Először áttekintjük a telepítés lépéseit és az általános
konfigurációs elemeket, majd ismertetjük a két megosztás létrehozását.
7.2.1. Telepítés és általános konfigurációs lépések
A szerver virtuális gépen frissítsük a csomag adatbázist, majd telepítsük a Samba
kiszolgálóhoz szükséges csomagokat.
$ sudo apt-get update
$ sudo apt-get install samba smbfs -y
Nyissuk meg a szerkesztésre konfigurációs állományt.
$ sudo nano /etc/samba/smb.conf
Az általános, minden megosztás esetén érvényes beállításokkal kezdjük. Ezek a [global]
szakaszban találhatóak. Elsőként állítsuk be a munkacsoport nevét. Ehhez megkeressük a
megfelelő sort (workgroup), majd az egyenlőség jel utáni részt megváltoztatjuk.
workgroup=GYAKORLAT
Az alábbiakban a legtöbb beállítás esetében hasonlóképpen fogunk eljárni. Amennyiben
valamelyik kulcs (pl. netbios name) nem szerepel a kezdeti konfigurációs állományban,
akkor a teljes sort begépeljük, egyébként csak az egyenlőség jel utáni részt módosítjuk.
Néhány esetben a kulcs (pl. security) kezdetben megjegyzésben áll, ilyenkor el kell
távolítani a sor elején álló pontosvesszőt.
Második beállításunk a gép NetBIOS neve lesz (ezt be kell gépelni):
netbios name=ubuntu-server
Ezt követően a megosztások biztonsági modelljét (szintjét) felhasználóira állítjuk. Ez azt
jelenti, hogy egyedi felhasználói névvel és jelszóval férhetnek hozzá a megosztott
erőforrásokhoz, illetve felhasználónként szabályozhatjuk a jogosultságokat. Johanyák Zsolt Csaba, Kovács Péter, Göcs László: Linux hálózati adminisztráció a gyakorlatban
71
security=user
Bekapcsoljuk a Samba szerver WINS szolgáltatását, ami azt jelenti, hogy szerverünk egy
Windows Internet Name Service kiszolgáló feladatait is el fogja látni. A kulcs kezdetben
megjegyzésben van.
wins support=yes
Engedélyezzük, hogy a Samba szerver megkísérelje a megváltoztatott Samba jelszavakat a
Linux jelszó adatbázisban is érvényesíteni.
unix password sync=yes
Mentsük el a konfigurációs állományt, majd teszteljük azt.
$ sudo testparm
7.2.2. Nyilvános írható-olvasható megosztás
Első lépésként definiálunk egy vendég felhasználót a Linux rendszerben. Sikertelen
autentikáció vagy vendég típusú bejelentkezés esetén ezen felhasználóként vehetjük igénybe a
Samba szolgáltatásokat. Az Ubuntuba azért kell regisztrálnunk ezt a fiókot, mert a Samba
adatbázisába csak olyan fiókok vehetők fel, amelyek a Linux rendszer adatbázisában már
szerepelnek. A felhasználói fiókot úgy hozzuk létre, hogy nem jelentkezhet be és nem
rendelkezik saját könyvtárral.
$ sudo vendeg useradd –c "Samba vendég" –d /dev/null
–s /bin/false
A fiókot felvesszük a Samba felhasználók közé jelszó nélküli fiókként
$ sudo smbpasswd -an vendeg
Ellenőrzésként listázzuk ki a bejegyzett Samba felhasználókat
$ sudo pdbedit -L
Hozzuk létre a megosztani kívánt könyvtárat, és állítsuk be, hogy minden felhasználó teljes
hozzáférést kapjon hozzá.
$ sudo mkdir /srv/samba/kozos
$ sudo chmod 777 /srv/samba/kozos
A könyvtárat szeretnénk megosztani az összes felhasználó számára. Nyissuk meg a
szerkesztésre konfigurációs állományt.
$ sudo nano /etc/samba/smb.conf
7. Megosztás Samba segítségével
(Johanyák Zsolt Csaba)
72
A globális beállítások részben adjuk meg a vendég felhasználót, és azt, hogy sikertelen
autentikáció esetén a felhasználót tekintse vendégnek a rendszer.
guest account=vendeg
map to guest=bad user
A konfigurációs állomány végén hozzunk létre egy új szakaszt az új megosztás számára.
[kozos]
Adunk hozzá egy rövid magyarázó szöveget.
comment=Ez egy nyilvános írható-olvasható megosztás
Beállítjuk az elérési útvonalát és a hozzáférés szabályozást. Legyen a könyvtár írható.
path/srv/samba/kozos
read only=no
Jelszó nélkül lehessen hozzáférni
public=yes
Ne legyen rejtett, jelenjen meg a megosztások listájában
browseable=yes
Minden felhasználó kapjon teljes hozzáférést a benne létrehozott könyvtárakhoz és
állományokhoz Linux klienseken is. Az alábbi beállításpáros kikényszeríti, hogy Linux
klienseken az újonnan létrehozott állományok és könyvtárak az rwxrwxrwx
jogosultságszabályozással rendelkezzenek.
force directory mode=0777
force create mode=0777
Mentsük el a konfigurációs állományt, majd teszteljük azt (szintaktikai ellenőrzés).
$ sudo testparm
7.2.3. Megosztás egy adott felhasználó számára
Hozzuk létre a megosztani kívánt könyvtárat, és állítsuk be, hogy a hallgato felhasználó
legyen a tulajdonos és a csoporttulajdonos legyen a hallgato csoport.
$ sudo mkdir /srv/samba/hallgato
$ sudo chown hallgato /srv/samba/hallgato
$ sudo chgrp hallgato /srv/samba/hallgato
Johanyák Zsolt Csaba, Kovács Péter, Göcs László: Linux hálózati adminisztráció a gyakorlatban
73
Megj.: A Filesystem Hierarchy Standard ajánlása szerint a megosztott könyvtárakat a
/srv/samba könyvtár alá ajánlott elhelyezni.
Az általános beállítások után létrehozunk egy megosztást. A könyvtárat szeretnénk
megosztani a hallgato nevű felhasználó számára. Nyissuk meg a szerkesztésre
konfigurációs állományt.
$ sudo nano /etc/samba/smb.conf
A konfigurációs állomány végén hozzunk létre egy új szakaszt az új megosztás számára.
[hallgato]
Adunk hozzá egy rövid magyarázó szöveget.
comment=Ez egy megosztás a hallgato fiók számára
Beállítjuk az elérési útvonalát és a hozzáférés szabályozást. Legyen a könyvtár írható.
path/srv/samba/hallgato
writeable=yes
Jelszó nélkül ne lehessen hozzáférni
public=no
Ne legyen rejtett, jelenjen meg a megosztások listájában
browseable=yes
A hallgato felhasználó írhatja és olvashatja.
read list=hallgato
write list=hallgato
Mentsük el a konfigurációs állományt, majd teszteljük azt (szintaktikai ellenőrzés).
$ sudo testparm
A rendszer adatbázisai a /var/lib/samba könyvtárban találhatóak
Vegyük fel a hallgato felhasználót a Samba adatbázisba.
$ sudo smbpasswd -a hallgato
A jelszó legyen „hallgato”.
7.2.4. A szolgáltatás elindítása és tűzfalszabályok
Indítsuk el/újra a szervert. 7. Megosztás Samba segítségével
(Johanyák Zsolt Csaba)
74
$ sudo service smbd restart
Amennyiben szerverünkön működik tűzfal, akkor a Samba telepítésekor kapott
(/etc/ufw/applications.d könyvtárban található) UFW-s profil engedélyezésével
nyithatjuk meg a szükséges portokat.
$ sudo ufw allow Samba
Megj.: A profil előírja a 137-es és 138-as portok megnyitását az UDP protokoll számára,
valamint a 139-es és a 445-ös portok megnyitását a TCP protokoll számára. Néhány esetben a
fenti tűzfalmegnyitás nem bizonyult elégségesnek, és csak az érintett négy port mindkét
protokoll számára történő megnyitását követően sikerült a kliensnek csatlakozni a
megosztáshoz. A megnyitáshoz szükséges utasítások a következőek.
$ sudo ufw allow from 192.168.1.0/24 to any port 137
$ sudo ufw allow from 192.168.1.0/24 to any port 138
$ sudo ufw allow from 192.168.1.0/24 to any port 139
$ sudo ufw allow from 192.168.1.0/24 to any port 445
7.3. Samba kliens és konfigurálása
7.3.1. Kliens telepítése
Az asztali Ubuntu operációs rendszert futtató virtuális gépen telepítsük fel a megosztás
eléréséhez szükséges csomagokat.
$ sudo apt-get update
$ sudo apt-get install smbfs smbclient -y
Nyissunk meg egy terminált, és kérdezzük le a kiszolgáló által megosztott könyvtárakat.
$ smbclient -L ubuntu-server -N
A Sharename oszlopban meg kell jelenjen a hallgato és a kozos sor.
7.3.2. A nyilvános megosztás elérése
A megosztást kliens oldalról kétféleképpen érhetjük el: az smbclient parancs segítségével
vagy felcsatolva azt a könyvtárrendszerünkbe. Elsőként próbáljuk ki az smbclient-tel
történő elérést. Mivel ez egy nyilvános megosztás jelszó megadás nélkül csatlakozunk.
$ smbclient //ubuntu-server/kozos -N
Sikeres csatlakozást követően az smb:\> készenléti jel jelenik meg. A ? paranccsal
kérdezhetjük le az elérhető utasítások listáját. Hozzunk létre egy könyvtárat a megosztáson
belül
smb:\> mkdir proba Johanyák Zsolt Csaba, Kovács Péter, Göcs László: Linux hálózati adminisztráció a gyakorlatban
75
Lépjünk át a szerver virtuális gépbe, hozzuk létre ott a valami nevű szöveges állományt a
kozos könyvtárban, majd lépjünk vissza a munkaállomás virtuális gépbe és töltsük le az
állományt (másoljuk le a munkaállomásra).
smb:\> get valami
Lépjünk ki az smbclient-ből az exit parancs segítségével. A letöltött állomány az
aktuális könyvtárban található.
A megosztás elérésének gyakrabban alkalmazott módszere az, hogy a megosztott könyvtárat
felcsatoljuk az ügyfélgép állományrendszerébe. Ehhez hozzunk létre egy kozos nevű
könyvtárat.
$ sudo mkdir /mnt/kozos
Hajtsuk végre a felcsatolást vendégként kapcsolódva a megosztáshoz.
$ sudo smbmount //192.168.1.254/kozos
/mnt/kozos -o guest
Ellenőrizzük le állománylétrehozással, másolással, módosítással a felcsatolás sikerességét,
majd csatoljuk le a könyvtárat.
$ sudo umount /mnt/kozos
Ha azt szeretnénk, hogy minden indításkor automatikusan csatolódjon fel a könyvtár, akkor az
/etc/fstab állományba egy új sort kell írnunk. Ehhez nyissuk meg az állományt.
$ sudo nano /etc/fstab
Helyezzük el a következő sort (egyetlen sorba írva, és a sor végén az Enter-t lenyomva):
//192.168.1.254/kozos /mnt/kozos smbfs rw,guest 0 0
Mentsük el az állományt, majd próbáljuk ki a beállítást.
$ sudo mount /mnt/kozos
Lépjünk be a felcsatolt könyvtárba, ellenőrizzük a csatolást. Indítsuk újra a virtuális gépet az
automatikus felcsatolás ellenőrzése érdekében.
7.3.3. Felhasználó számára megosztott könyvtár elérése
Hozzunk létre egy smbkliens nevű könyvtárat, ide fogjuk felcsatolni a szerver által a
hallgato felhasználó számára megosztott mappát.
$ mkdir /home/hallgato/smbmegosztas
Hajtsuk végre a felcsatolást. 7. Megosztás Samba segítségével
(Johanyák Zsolt Csaba)
76
$ sudo smbmount //192.168.1.254/hallgato
/home/hallgato/smbmegosztas -o username=hallgato%hallgato
Lépjünk be a könyvtárba, és hozzunk létre ott egy új szöveges állományt. Lépjünk ki a
könyvtárból, majd csatoljuk azt le.
$ sudo umount /home/hallgato/smbmegosztas/
Ha azt szeretnénk, hogy minden indításkor automatikusan csatolódjon fel a könyvtár, akkor az
/etc/fstab állományba egy új sort kell írnunk. Ehhez nyissuk meg az állományt.
$ sudo nano /etc/fstab
Helyezzük el a következő sort (egyetlen sorba írva, és a sor végén az Enter-t lenyomva):
//192.168.1.254/hallgato /home/hallgato/smbmegosztas smbfs
username=hallgato,password=hallgato,umask=000 0 0
Mentsük el az állományt, majd próbáljuk ki a beállítást.
$ sudo mount /home/hallgato/smbmegosztas
Nincsenek megjegyzések:
Megjegyzés küldése