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 -yAș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 -yDupă finalizarea instalării, verificați dacă a fost reușită prin verificarea versiunii Samba:
smbd --versionAr trebui să vedeți o ieșire similară cu:
Version 4.15.13-UbuntuPuteți verifica, de asemenea, că serviciul Samba rulează:
sudo systemctl status smbdIeș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.bakAceasta 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 ~/shared4.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.confDerulaț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 |
|---|---|
path | Calea absolută către directorul care este partajat |
available | Dacă partajarea este disponibilă pentru utilizatori |
valid users | Restricționează accesul la utilizatorii listați |
read only | Setați la no pentru a permite accesul la scriere |
browsable | Dacă partajarea apare la răsfoire pe rețea |
public | Permite accesul fără autentificare (utilizați cu atenție) |
writable | Permite 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ă:
testparmAceastă 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 usernameVi 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 usernamePasul 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 sambaVerificați că regula a fost adăugată:
sudo ufw statusSamba 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 nmbdActivați ambele servicii pentru a se porni automat la pornirea sistemului:
sudo systemctl enable smbd
sudo systemctl enable nmbdServiciul 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:
- Deschideți File Explorer
- Î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)
- Când vi se solicită, introduceți numele de utilizator Samba și parola pe care le-ați configurat în Pasul 6
- 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:
- Faceți clic dreapta pe This PC în File Explorer
- Selectați Map network drive
- Alegeți o literă de unitate și introduceți calea de rețea
- 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 -yApoi conectați-vă la partajare:
smbclient //ubuntu_ip_address/SharedFolder -U usernameIntroduceț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=yourpasswordPentru 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 = yesAcces 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 = ALLAceasta 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 = noSetați conexiuni maxime
Pentru a limita numărul de conexiuni simultane la o partajare:
max connections = 10Forț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_groupPasul 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 = Never2. 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 = yes6. 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 = 17. Mențineți Samba actualizat
Actualizați regulat Samba pentru a corecta vulnerabilități de securitate cunoscute:
sudo apt update && sudo apt upgrade samba -yAlegerea 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,
