15%

Economisește 15% la toate serviciile de găzduire

Testează-ți abilitățile și obține Reducere la orice plan de găzduire

Utilizați codul:

Skills
Începeți
31.10.2024

Cum să instalezi și să configurezi Samba pe Ubuntu: Un ghid complet pas cu pas

Samba este o suită puternică de software open-source care permite partajarea fără probleme a fișierelor și imprimantelor între computere care rulează Windows și sisteme de operare asemănătoare Unix, cum ar fi Ubuntu. Prin instalarea și configurarea corespunzătoare a Samba, puteți închide decalajul dintre mediile Linux și Windows, permițând utilizatorilor de pe ambele platforme să partajeze fișiere, directoare și chiar imprimante pe o rețea locală sau de arie largă.

Indiferent dacă gestionați un laborator acasă, o rețea de afaceri mică sau un mediu de server de producție, acest ghid cuprinzător vă ghidează prin fiecare pas al instalării, configurării și securizării Samba pe Ubuntu — inclusiv opțiuni avansate pe care majoritatea tutorialelor le omit.

Cerințe preliminare

Înainte de a începe, asigurați-vă că aveți:

  • Un server sau mașină care rulează Ubuntu 20.04, 22.04 sau 24.04
  • Acces Sudo sau root la sistem
  • O înțelegere de bază a liniei de comandă Linux
  • Conectivitate de rețea între mașinile pe care doriți să le conectați

Dacă rulați Samba pe un server la distanță, un mediu de găzduire fiabil și performant este esențial. VPS Hosting de la AlexHost vă oferă acces complet root, resurse dedicate și flexibilitatea de a configura serverul exact după cum aveți nevoie.

Pasul 1: Actualizați pachetele de sistem

Înainte de a instala orice software nou, este critic să actualizați indexul de pachete al sistemului și să actualizați pachetele existente la versiunile lor cele mai recente. Acest lucru asigură compatibilitatea și protejează împotriva vulnerabilităților cunoscute.

sudo apt update && sudo apt upgrade -y

Așteptați ca procesul să se finalizeze înainte de a continua.

Pasul 2: Instalați Samba

Instalați pachetul Samba folosind managerul de pachete APT:

sudo apt install samba -y

După finalizarea instalării, verificați dacă a fost reușită prin verificarea versiunii Samba:

smbd --version

Ar trebui să vedeți o ieșire similară cu:

Version 4.15.13-Ubuntu

Puteți verifica, de asemenea, că serviciul Samba rulează:

sudo systemctl status smbd

Ieșirea ar trebui să arate serviciul ca activ (running).

Pasul 3: Faceți o copie de siguranță a fișierului de configurare Samba implicit

Înainte de a face orice modificări, faceți întotdeauna o copie de siguranță a fișierului de configurare original. Acest lucru vă permite să restaurați valorile implicite dacă ceva merge greșit:

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

Aceasta este o practică recomandată pe care mulți ghiduri o omit, dar pe care administratorii de sistem experimentați o urmează întotdeauna.

Pasul 4: Creați și configurați un director partajat

4.1 Creați directorul

Decideți care director doriți să partajați pe rețea. Pentru acest ghid, vom crea un folder dedicat numit shared în interiorul directorului home:

mkdir ~/shared

4.2 Setați permisiunile directorului

Setați permisiunile corespunzătoare pe director. Pentru un mediu partajat în care mai mulți utilizatori au nevoie de acces la citire și scriere:

chmod 777 ~/shared

> Notă de securitate: Setarea chmod 777 acordă permisiuni complete de citire, scriere și execuție tuturor utilizatorilor. Deși este convenabil pentru testare, nu se recomandă pentru mediile de producție. Într-o configurație de producție, utilizați permisiuni mai restrictive, cum ar fi chmod 770 și gestionați accesul prin apartenența la grup.

Pasul 5: Configurați Samba — Editați smb.conf

Deschideți fișierul principal de configurare Samba folosind un editor de text:

sudo nano /etc/samba/smb.conf

Derulați până la sfârșitul fișierului și adăugați următorul bloc de configurare:

[SharedFolder]
   path = /home/username/shared
   available = yes
   valid users = username
   read only = no
   browsable = yes
   public = yes
   writable = yes

Înlocuiți username cu numele de utilizator actual al sistemului Ubuntu.

Înțelegerea fiecărei directive

DirectivăDescriere
pathCalea absolută către directorul care este partajat
availableDacă partajarea este disponibilă pentru utilizatori
valid usersRestricționează accesul la utilizatorii listați
read onlySetați la no pentru a permite accesul la scriere
browsableDacă partajarea apare la răsfoire pe rețea
publicPermite accesul fără autentificare (utilizați cu atenție)
writablePermite utilizatorilor să scrie fișiere în partajare

După ce ați făcut modificările, salvați fișierul apăsând CTRL + O, apoi Enter și ieșiți cu CTRL + X.

Validați configurația

Înainte de a reporni Samba, testați fișierul de configurare pentru erori de sintaxă:

testparm

Această comandă analizează fișierul smb.conf și raportează orice probleme. Remediați orice erori înainte de a continua.

Pasul 6: Creați un cont de utilizator Samba

Samba menține propria bază de date de parole separată de parolele standard ale sistemului Linux. Trebuie să adăugați o parolă specifică Samba pentru orice utilizator care trebuie să acceseze partajarea.

sudo smbpasswd -a username

Vi se va cere să introduceți și să confirmați o parolă. Această parolă va fi necesară la conectarea la folderul partajat de pe o mașină Windows sau Linux la distanță.

> Sfat: Utilizați o parolă puternică și unică pentru fiecare utilizator Samba. Evitați reutilizarea parolelor de sistem.

Pentru a activa contul de utilizator în Samba (dacă a fost anterior dezactivat):

sudo smbpasswd -e username

Pasul 7: Configurați firewall-ul

Dacă aveți UFW (Uncomplicated Firewall) activat pe serverul Ubuntu, trebuie să permiteți traficul Samba prin firewall:

sudo ufw allow samba

Verificați că regula a fost adăugată:

sudo ufw status

Samba folosește următoarele porturi:

  • TCP 445 — SMB peste TCP (primar)
  • TCP 139 — Serviciu de sesiune NetBIOS
  • UDP 137 & 138 — Servicii de nume și datagram NetBIOS

Pasul 8: Reporniți și activați serviciile Samba

Aplicați modificările de configurare prin repornirea serviciilor Samba:

sudo systemctl restart smbd
sudo systemctl restart nmbd

Activați ambele servicii pentru a se porni automat la pornirea sistemului:

sudo systemctl enable smbd
sudo systemctl enable nmbd

Serviciul nmbd gestionează rezoluția numelor NetBIOS, care este important pentru ca clienții Windows să descopere serverul Samba după nume pe rețeaua locală.

Pasul 9: Accesați folderul partajat de pe un sistem Windows

De pe orice computer Windows pe aceeași rețea, puteți acum să vă conectați la partajarea Ubuntu Samba:

  1. Deschideți File Explorer
  2. În bara de adrese, introduceți calea de rețea către mașina Ubuntu:
   ubuntu_ip_addressSharedFolder

Înlocuiți ubuntu_ip_address cu adresa IP reală a serverului Ubuntu (de exemplu, 192.168.1.100SharedFolder)

  1. Când vi se solicită, introduceți numele de utilizator Samba și parola pe care le-ați configurat în Pasul 6
  2. Folderul partajat va apărea acum în File Explorer și puteți citi, scrie, copia și șterge fișiere la fel ca și cum ar fi un folder local

Mapați partajarea ca unitate de rețea (Opțional)

Pentru acces persistent, puteți mapa partajarea Samba ca unitate de rețea în Windows:

  1. Faceți clic dreapta pe This PC în File Explorer
  2. Selectați Map network drive
  3. Alegeți o literă de unitate și introduceți calea de rețea
  4. Bifați Reconnect at sign-in pentru montare automată

Pasul 10: Accesați partajarea Samba de pe un alt sistem Linux

Pe o altă mașină Linux, puteți să vă conectați la partajarea Samba folosind instrumentul de linie de comandă smbclient.

Mai întâi, instalați smbclient dacă nu este deja prezent:

sudo apt install smbclient -y

Apoi conectați-vă la partajare:

smbclient //ubuntu_ip_address/SharedFolder -U username

Introduceți parola Samba când vi se solicită. Veți fi introduși într-o shell interactivă asemănătoare FTP în care puteți utiliza comenzi cum ar fi ls, get, put și cd pentru a naviga și transfera fișiere.

Montați partajarea Samba pe Linux

Pentru o experiență mai fără probleme, puteți monta partajarea Samba ca sistem de fișiere local folosind cifs-utils:

sudo apt install cifs-utils -y
sudo mkdir /mnt/samba_share
sudo mount -t cifs //ubuntu_ip_address/SharedFolder /mnt/samba_share -o username=username,password=yourpassword

Pentru a face montarea persistentă pe reboots, adăugați o intrare la /etc/fstab:

//ubuntu_ip_address/SharedFolder /mnt/samba_share cifs username=username,password=yourpassword,_netdev 0 0

> Sfat de securitate: În loc să stocați credențiale în /etc/fstab, utilizați un fișier de credențiale cu permisiuni restricționate.

Pasul 11: Opțiuni avansate de configurare Samba

smb.conf Samba acceptă o gamă largă de directive care vă oferă control fin asupra mediului de partajare a fișierelor. Iată cele mai utile opțiuni avansate:

Acces doar pentru citire

Pentru a preveni utilizatorii să modifice fișiere într-o partajare, setați:

read only = yes

Acces pentru invitați (partajări anonime)

Pentru a permite utilizatorilor să se conecteze fără parolă:

guest ok = yes
public = yes

> Utilizați accesul pentru invitați doar pe rețele de încredere și izolate. Nu îl activați niciodată pe un server cu acces public.

Restricționați accesul după adresa IP

Pentru a limita care mașini se pot conecta la o partajare:

hosts allow = 192.168.1.0/24
hosts deny = ALL

Aceasta restricționează accesul doar la mașinile din subnetul 192.168.1.x.

Foldere partajate multiple

Puteți defini cât mai multe partajări după cum este necesar prin adăugarea de blocuri suplimentare la smb.conf:

[Documents]
   path = /home/username/documents
   valid users = username
   read only = no
   writable = yes

[Backups]
   path = /srv/backups
   valid users = admin
   read only = yes
   browsable = no

Setați conexiuni maxime

Pentru a limita numărul de conexiuni simultane la o partajare:

max connections = 10

Forțați un utilizator sau grup specific

Pentru a asigura că toate fișierele sunt create cu proprietatea unui utilizator sau grup specific:

force user = samba_user
force group = samba_group

Pasul 12: Securizarea instalării Samba

Securitatea este primordială, mai ales dacă serverul Samba este accesibil dincolo de rețeaua locală. Urmați aceste practici de consolidare:

1. Dezactivați accesul pentru invitați

Dacă nu este explicit necesar, dezactivați întotdeauna accesul anonim:

map to guest = Never

2. Utilizați parole puternice

Aplicați parole puternice și unice pentru toți utilizatorii Samba. Evitați cuvintele din dicționar și utilizați o combinație de litere mari, litere mici, numere și simboluri.

3. Restricționați vizibilitatea partajării

Setați browsable = no pe partajările sensibile, astfel încât să nu apară la răsfoire pe rețea. Utilizatorii care cunosc calea exactă pot totuși să se conecteze.

4. Limitați permisiunile pe directoarele partajate

Aplicați principiul celui mai mic privilegiu — acordați doar permisiunile de care utilizatorii au nevoie. Evitați chmod 777 în producție.

5. Legați Samba la o interfață specifică

Dacă serverul are mai multe interfețe de rețea, legați Samba doar la interfața internă:

[global]
   interfaces = eth0 lo
   bind interfaces only = yes

6. Activați jurnalizarea

Activați jurnalizarea Samba pentru a monitoriza accesul și a detecta activități suspecte:

[global]
   log file = /var/log/samba/log.%m
   max log size = 1000
   log level = 1

7. Mențineți Samba actualizat

Actualizați regulat Samba pentru a corecta vulnerabilități de securitate cunoscute:

sudo apt update && sudo apt upgrade samba -y

Alegerea mediului de găzduire potrivit pentru serverul Samba

Performanța și fiabilitatea serverului de fișiere Samba depind în mare măsură de infrastructura subiacentă. Iată câteva opțiuni de găzduire de luat în considerare în funcție de cazul de utilizare:

  • Echipe mici și proiecte personale: Shared Web Hosting oferă un punct de intrare accesibil pentru sarcini de lucru ușoare.
  • Afaceri în creștere și echipe de dezvoltare: VPS Hosting oferă resurse dedicate, acces complet root și scalabilitate necesară pentru a rula Samba alături de alte servicii.
  • Sarcini de lucru de înaltă performanță sau enterprise: Dedicated Servers oferă performanță maximă, capacitate de stocare și debit de rețea — ideal pentru mediile de partajare a fișierelor la scară largă.
  • Aplicații AI și cu consum intensiv de date: Dacă rulați Samba alături de sarcini de lucru de învățare automată sau procesare de date,
15%

Economisește 15% la toate serviciile de găzduire

Testează-ți abilitățile și obține Reducere la orice plan de găzduire

Utilizați codul:

Skills
Începeți