A Samba telepítése Ubuntu rendszeren a Windows fájlmegosztáshoz
A Samba egy ingyenes/nyílt forráskódú és népszerű szoftver fájlok megosztására és nyomtatási szolgáltatásokra Unix-szerű rendszerek között, beleértve a Linux és Windows gazdagépeket ugyanazon a hálózaton.
Ebben az útmutatóban bemutatjuk, hogyan kell beállítani a Samba4-et az Ubuntu rendszerek és a Windows gépek közötti alapvető fájlmegosztáshoz. Két lehetséges forgatókönyvet tárgyalunk: névtelen (nem biztonságos) és biztonságos fájlmegosztás.
Javasolt olvasmány: A Samba4 telepítése CentOS/RHEL 7 rendszeren Windows fájlmegosztáshoz
Vegye figyelembe, hogy a 4.0-s verziótól kezdődően a Samba Active Directory (AD) tartományvezérlőként (DC) is használható. Speciális sorozatot szerveztünk a Samba4 Active Directory Domain Controller beállításához, amely Ubuntu, CentOS és Windows alatti kulcsfontosságú témákat tartalmaz.
- A Samba4 Active Directory tartományvezérlő beállítása
Telepítse és konfigurálja a Sambát az Ubuntuban
A Samba-kiszolgáló telepíthető az alapértelmezett Ubuntu-tárolókból az apt csomagkezelő eszközzel, az ábrán látható módon.
sudo apt install samba samba-common python-dnspython
A samba szerver telepítése után itt az ideje, hogy a samba szervert a következőképpen konfigurálja: nem biztonságos névtelen és biztonságos fájlmegosztás.
Ehhez szerkesztenünk kell a Samba fő konfigurációs fájlját /etc/samba/smb.conf (amely a különféle konfigurációs direktívákat magyarázza).
Először készítsen biztonsági másolatot az eredeti samba konfigurációs fájlról az alábbiak szerint.
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.orig
Ezt követően folytatjuk a samba konfigurálását névtelen és biztonságos fájlmegosztási szolgáltatásokhoz az alábbiak szerint.
Fontos: Mielőtt továbblépne, győződjön meg arról, hogy a Windows-gép ugyanabban a munkacsoportban van, amely az Ubuntu-kiszolgálón lesz konfigurálva.
Ellenőrizze a Windows gép munkacsoport beállításait
Jelentkezzen be Windows gépére, kattintson jobb gombbal a „Ez a számítógép” vagy a „Sajátgép” → Tulajdonságok elemre. >→ Speciális rendszerbeállítások → Számítógép neve a munkacsoport ellenőrzéséhez.
Alternatív megoldásként nyissa meg a parancssort, és tekintse meg az alábbi parancs futtatásával, és keresse meg a „workstation domain” kifejezést.
>net config workstation
Ha már ismeri a Windows-munkacsoportot, itt az ideje, hogy továbblépjen, és konfigurálja a samba-kiszolgálót a fájlmegosztáshoz.
Névtelen Samba fájlmegosztás
Először is hozzon létre egy megosztott samba könyvtárat, ahol a fájlok tárolódnak.
sudo mkdir -p /srv/samba/anonymous_shares
Ezután állítsa be a megfelelő jogosultságokat a könyvtárban.
sudo chmod -R 0775 /srv/samba/anonymous_shares
sudo chown -R nobody:nogroup /srv/samba/anonymous_shares
Most nyissa meg a konfigurációs fájlt.
sudo vi /etc/samba/smb.conf
OR
sudo nano /etc/samba/smb.conf
Ezután szerkessze vagy módosítsa az irányelv beállításait az alábbiak szerint.
global]
workgroup = WORKGROUP
netbios name = ubuntu
security = user
[Anonymous]
comment = Anonymous File Server Share
path = /srv/samba/anonymous_shares
browsable =yes
writable = yes
guest ok = yes
read only = no
force user = nobody
Most ellenőrizze az aktuális samba-beállításokat az alábbi parancs futtatásával.
testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
WARNING: The "syslog" option is deprecated
Processing section "[printers]"
Processing section "[print$]"
Processing section "[Shares]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
Global parameters
[global]
netbios name = UBUNTU
server string = %h server (Samba, Ubuntu)
server role = standalone server
map to guest = Bad User
obey pam restrictions = Yes
pam password change = Yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
unix password sync = Yes
syslog = 0
log file = /var/log/samba/log.%m
max log size = 1000
dns proxy = No
usershare allow guests = Yes
panic action = /usr/share/samba/panic-action %d
idmap config * : backend = tdb
[printers]
comment = All Printers
path = /var/spool/samba
create mask = 0700
printable = Yes
[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
browseable = No
[Anonymous]
comment = Anonymous File Server Share
path = /srv/samba/anonymous_shares
force user = nobody
read only = No
guest ok = Yes
Ezután indítsa újra a Samba szolgáltatásokat a fenti változtatások végrehajtásához.
sudo systemctl restart smbd [Systemd]
sudo service smbd restart [Sys V]
A névtelen Samba fájlmegosztás tesztelése
Nyissa meg a Windows rendszerű gépet, és nyissa meg a „Network” elemet a Windows Intéző ablakból. Kattintson az Ubuntu gazdagépre (esetünkben a TECMINT), vagy próbálja meg elérni a samba szervert annak IP-címével.
\2.168.43.168
Megjegyzés: Használja az ifconfig parancsot az Ubuntu szerver IP-címének lekéréséhez.
Ezután nyissa meg az Anonymous könyvtárat, és próbáljon meg fájlokat hozzáadni a többi felhasználóval való megosztáshoz.
Biztonságos Samba fájlmegosztás
Egy samba megosztás jelszavas védelméhez létre kell hoznia egy „smbgrp” csoportot, és be kell állítania egy jelszót minden felhasználó számára. Ebben a példában az aaronkilik-t használom felhasználóként és jelszót, mint „tecmint”.
sudo addgroup smbgrp
sudo usermod aaronkilik -aG smbgrp
sudo smbpasswd -a aaronkilik
Megjegyzés: A samba biztonsági mód: security=user megköveteli, hogy az ügyfelek felhasználónevet és jelszót adjanak meg a megosztásokhoz való csatlakozáshoz.
A Samba felhasználói fiókok elkülönülnek a rendszerfiókoktól, azonban opcionálisan telepítheti a libpam-winbind csomagot, amely a rendszerfelhasználók és jelszavak szinkronizálására szolgál a samba felhasználói adatbázissal.
sudo apt install libpam-winbind
Ezután hozza létre a biztonságos könyvtárat, ahol a megosztott fájlok tárolódnak.
sudo mkdir -p /srv/samba/secure_shares
Ezután állítsa be a megfelelő engedélyeket a könyvtárban.
sudo chmod -R 0770 /srv/samba/secure_shares
sudo chown -R root:smbgrp /srv/samba/secure_shares
Most nyissa meg a konfigurációs fájlt.
sudo vi /etc/samba/smb.conf
OR
sudo nano /etc/samba/smb.conf
Ezután szerkessze vagy módosítsa az irányelv beállításait az alábbiak szerint.
[Secure]
comment = Secure File Server Share
path = /srv/samba/secure_shares
valid users = @smbgrp
guest ok = no
writable = yes
browsable = yes
Csakúgy, mint korábban, futtassa ezt a parancsot az aktuális samba-beállítások megtekintéséhez.
testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
WARNING: The "syslog" option is deprecated
Processing section "[printers]"
Processing section "[print$]"
Processing section "[Shares]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
Global parameters
[global]
netbios name = UBUNTU
server string = %h server (Samba, Ubuntu)
server role = standalone server
map to guest = Bad User
obey pam restrictions = Yes
pam password change = Yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
unix password sync = Yes
syslog = 0
log file = /var/log/samba/log.%m
max log size = 1000
dns proxy = No
usershare allow guests = Yes
panic action = /usr/share/samba/panic-action %d
idmap config * : backend = tdb
[printers]
comment = All Printers
path = /var/spool/samba
create mask = 0700
printable = Yes
[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
browseable = No
[Anonymous]
comment = Anonymous File Server Share
path = /srv/samba/anonymous_shares
force user = nobody
read only = No
guest ok = Yes
[Secure]
comment = Secure File Server Share
path = /srv/samba/secure_shares
valid users = @smbgrp
read only = No
Ha végzett a fenti konfigurációkkal, indítsa újra a Samba-szolgáltatásokat a módosítások alkalmazásához.
sudo systemctl restart smbd [Systemd]
sudo service smbd restart [Sys V]
A Samba biztonságos fájlmegosztásának tesztelése
Mint korábban, a Windows gépen nyissa meg a „Network” elemet a Windows Intéző ablakból. Kattintson az Ubuntu gazdagépre (esetünkben a TECMINT). Az alábbi hibaüzenetet kaphatja, ha nem, folytassa a következő lépéssel.
Próbáljon meg elérni a szervert annak IP-címével, pl. \\192.168.43.168
, mint ez. Ezután adja meg az aaronkilik felhasználó hitelesítő adatait (felhasználónév és jelszó), majd kattintson az OK gombra.
Most megtekintheti az összes megosztott könyvtárat, és a megnyitásához kattintson a Biztonságos lehetőségre.
Bizonyos fájlokat biztonságosan megoszthat a hálózat többi engedélyezett felhasználójával, ha ebbe a könyvtárba helyezi őket.
Engedélyezze a Sambát az Ubuntu UFW tűzfalában
Ha az UFW tűzfal engedélyezve/aktív a rendszerén, akkor hozzá kell adnia azokat a szabályokat, amelyek lehetővé teszik a Samba áthaladását a tűzfalon.
Ennek teszteléséhez a 192.168.43.0 hálózati sémát használtuk. Futtassa az alábbi parancsokat a hálózati cím megadásával.
sudo ufw allow proto udp to any port 137 from 192.168.43.0/24
sudo ufw allow proto udp to any port 138 from 192.168.43.0/24
sudo ufw allow proto tcp to any port 139 from 192.168.43.0/24
sudo ufw allow proto tcp to any port 445 from 192.168.43.0/24
Megtekintheti ezeket a hasznos cikkeket is a Samba hálózaton történő fájlmegosztásáról.
- A Samba4 Active Directory tartományvezérlő beállítása – 1–14. rész
- Helyi és hálózati (Samba és NFS) fájlrendszerek csatlakoztatása/leválasztása Linux alatt
- Az ACL-ek (Hozzáférési vezérlőlisták) használata és a Samba/NFS megosztások felszerelése
- A SambaCry biztonsági résének (CVE-2017-7494) kijavítása Linux rendszereken
Ez minden! Ebben az útmutatóban megmutattuk, hogyan állíthatja be a Samba4-et az Ubuntu és Windows gépek közötti névtelen és biztonságos fájlmegosztáshoz. Az alábbi visszajelzési űrlap segítségével ossza meg velünk gondolatait.