Kako instalirati Sambu na Ubuntu za dijeljenje datoteka u sustavu Windows
Samba je besplatan/otvorenog koda i popularno korišten softver za dijeljenje datoteka i usluga ispisa između Unix sličnih sustava uključujući Linux i Windows hostove na istoj mreži.
U ovom ćemo vodiču pokazati kako postaviti Sambu4 za osnovno dijeljenje datoteka između Ubuntu sustava i Windows strojeva. Pokrit ćemo dva moguća scenarija: anonimno (nesigurno) kao i sigurno dijeljenje datoteka.
Predloženo za čitanje: Kako instalirati Sambu4 na CentOS/RHEL 7 za dijeljenje datoteka u sustavu Windows
Imajte na umu da se od verzije 4.0 Samba može koristiti kao kontroler domene (DC) Active Directory (AD). Organizirali smo posebnu seriju za postavljanje Samba4 Active Directory Domain Controller, koja se sastoji od ključnih tema pod Ubuntu, CentOS i Windows.
- Postavljanje Samba4 Active Directory kontrolera domene
Instalirajte i konfigurirajte Sambu u Ubuntuu
Samba poslužitelj dostupan je za instalaciju iz zadanih Ubuntu repozitorija pomoću alata za upravljanje paketima apt kao što je prikazano.
sudo apt install samba samba-common python-dnspython
Nakon instaliranja samba poslužitelja, vrijeme je da konfigurirate samba poslužitelj kao: nesigurno anonimno i sigurno dijeljenje datoteka.
Za ovo moramo urediti glavnu Samba konfiguracijsku datoteku /etc/samba/smb.conf (koja objašnjava razne konfiguracijske upute).
Najprije napravite sigurnosnu kopiju izvorne samba konfiguracijske datoteke kako slijedi.
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.orig
Nakon toga ćemo nastaviti s konfiguracijom sambe za anonimne i sigurne usluge dijeljenja datoteka kao što je objašnjeno u nastavku.
Važno: Prije nego što krenete dalje, provjerite je li Windows stroj u istoj radnoj grupi koja će biti konfigurirana na Ubuntu poslužitelju.
Provjerite Windows Machine WorkGroup postavke
Prijavite se na svoj Windows stroj, desnom tipkom miša kliknite “This PC ” ili “My Computer ” → Properties → Napredne postavke sustava → Naziv računala za provjeru radne grupe.
Alternativno, otvorite naredbeni redak i pregledajte ga pokretanjem donje naredbe i potražite “domena radne stanice”.
>net config workstation
Nakon što upoznate svoju Windows radnu grupu, vrijeme je da krenete naprijed i konfigurirate samba poslužitelj za dijeljenje datoteka.
Anonimno dijeljenje datoteka Samba
Najprije počnite stvaranjem zajedničkog samba direktorija u koji će biti pohranjene datoteke.
sudo mkdir -p /srv/samba/anonymous_shares
Zatim postavite odgovarajuće dozvole za direktorij.
sudo chmod -R 0775 /srv/samba/anonymous_shares
sudo chown -R nobody:nogroup /srv/samba/anonymous_shares
Sada otvorite konfiguracijsku datoteku.
sudo vi /etc/samba/smb.conf
OR
sudo nano /etc/samba/smb.conf
Zatim uredite ili izmijenite postavke direktive kako je opisano u nastavku.
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
Sada provjerite trenutne postavke sambe pokretanjem donje naredbe.
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
Zatim ponovno pokrenite Samba usluge kako biste izvršili gore navedene promjene.
sudo systemctl restart smbd [Systemd]
sudo service smbd restart [Sys V]
Testiranje anonimnog dijeljenja datoteka Samba
Idite na Windows stroj i otvorite “Mreža” iz prozora Windows Explorer. Kliknite na host Ubuntu (TECMINT za naš slučaj) ili pokušajte pristupiti samba poslužitelju koristeći njegovu IP adresu.
\2.168.43.168
Napomena: Koristite naredbu ifconfig da dobijete IP adresu svog Ubuntu poslužitelja.
Zatim otvorite direktorij Anonymous i pokušajte tamo dodati datoteke za dijeljenje s drugim korisnicima.
Sigurno dijeljenje datoteka Samba
Da biste lozinkom zaštitili samba dijeljenje, morate stvoriti grupu “smbgrp” i postaviti lozinku za svakog korisnika. U ovom primjeru koristim aaronkilik kao korisnika i lozinku kao “tecmint“.
sudo addgroup smbgrp
sudo usermod aaronkilik -aG smbgrp
sudo smbpasswd -a aaronkilik
Napomena: Samba sigurnosni način: sigurnost=korisnik zahtijeva od klijenata unos korisničkog imena i lozinke za povezivanje s dijeljenjima.
Samba korisnički računi odvojeni su od sistemskih računa, no po izboru možete instalirati paket libpam-winbind koji se koristi za sinkronizaciju sistemskih korisnika i lozinki s samba korisničkom bazom podataka.
sudo apt install libpam-winbind
Zatim stvorite sigurni direktorij u kojem će se čuvati dijeljene datoteke.
sudo mkdir -p /srv/samba/secure_shares
Zatim postavite odgovarajuća dopuštenja za direktorij.
sudo chmod -R 0770 /srv/samba/secure_shares
sudo chown -R root:smbgrp /srv/samba/secure_shares
Sada otvorite konfiguracijsku datoteku.
sudo vi /etc/samba/smb.conf
OR
sudo nano /etc/samba/smb.conf
Zatim uredite ili izmijenite postavke direktive kako je opisano u nastavku.
[Secure]
comment = Secure File Server Share
path = /srv/samba/secure_shares
valid users = @smbgrp
guest ok = no
writable = yes
browsable = yes
Baš kao i prije, pokrenite ovu naredbu da vidite svoje trenutne postavke sambe.
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
Nakon što završite s gore navedenim konfiguracijama, ponovno pokrenite Samba usluge kako biste primijenili promjene.
sudo systemctl restart smbd [Systemd]
sudo service smbd restart [Sys V]
Testiranje sigurnog dijeljenja datoteka Samba
Kao i prije, u Windows stroju i otvorite “Mreža” iz prozora Windows Explorer. Kliknite na Ubuntu host (TECMINT za naš slučaj). Možda ćete dobiti donju pogrešku, ako ne prijeđite na sljedeći korak.
Pokušajte pristupiti poslužitelju pomoću njegove IP adrese, npr. \\192.168.43.168
ovako. Zatim unesite vjerodajnice (korisničko ime i lozinku) za korisnika aaronkilik i kliknite OK.
Sada ćete vidjeti sve dijeljene direktorije, kliknite Sigurno da ih otvorite.
Neke datoteke možete sigurno dijeliti s drugim dopuštenim korisnicima na mreži tako da ih ispustite u ovaj direktorij.
Omogućite Sambu u UFW vatrozidu u Ubuntuu
Ako imate UFW vatrozid omogućen/aktivan na vašem sustavu, morate dodati pravila koja će omogućiti Sambi prolaz kroz vaš vatrozid.
Da bismo ovo testirali, upotrijebili smo mrežnu shemu 192.168.43.0. Pokrenite donje naredbe navodeći svoju mrežnu adresu.
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
Također možete pogledati ove korisne članke o dijeljenju Samba datoteka na mreži.
- Postavljanje Samba4 Active Directory kontrolera domene - dio 1 do 14
- Kako montirati/demontirati lokalne i mrežne (Samba & NFS) datotečne sustave u Linuxu
- Korištenje ACL-ova (Access Control Lists) i montiranje Samba/NFS dijeljenja
- Kako popraviti SambaCry ranjivost (CVE-2017-7494) u Linux sustavima
To je sve! U ovom vodiču smo vam pokazali kako postaviti Sambu4 za anonimno i sigurno dijeljenje datoteka između Ubuntu i Windows strojeva. Upotrijebite obrazac za povratne informacije u nastavku da biste s nama podijelili svoje mišljenje.