Kako instalirati Samba server u RHEL, CentOS i Fedora


Samba je program otvorenog koda i najpopularniji široko korišteni program koji omogućava krajnjim korisnicima pristup Linux dijeljenom direktoriju sa bilo kojeg Windows uređaja na istoj mreži.

Samba se takođe naziva mrežnim sistemom datoteka i može se instalirati na Linux/Unix operativnim sistemima. Samba je klijent/server protokol SMB (Server Message Block) i CIFS (Common Internet File System ).

Koristeći Windows smbclient (GUI) ili file explorer, krajnji korisnici se mogu povezati na Samba server sa bilo koje Windows radne stanice kako bi pristupili zajedničkim datotekama i štampačima.

Ovaj vodič objašnjava kako instalirati Samba server (fileserver) na RHEL, CentOS Stream i Fedora sisteme, i takođe ćemo naučiti kako da ga konfigurišemo da deli fajlove preko mreže koristeći SMB protokol, kao i kako da kreiramo i dodajemo sistemske korisnike u bazu podataka samba korisnika.

Za demonstraciju, koristimo RHEL 8 sistem sa imenom hosta tecmint sa IP adresom 192.168.43.121.

Instalirajte i konfigurirajte Sambu u RHEL-u

Da biste započeli sa sambom, morate instalirati samba core pakete i samba-client paket kao što je prikazano:

dnf install samba samba-common samba-client 

Nakon što je sva samba instalirana, morate konfigurirati samba share direktorij s odgovarajućim dozvolama i vlasništvom, tako da će se dijeliti sa svim klijentskim strojevima u istoj lokalnoj mreži.

mkdir -p /srv/tecmint/data
chmod -R 755 /srv/tecmint/data
chown -R  nobody:nobody /srv/tecmint/data
chcon -t samba_share_t /srv/tecmint/data

Zatim ćemo konfigurirati Samba dijeljeni direktorij u datoteci smb.conf, koja je glavna konfiguracijska datoteka za Sambu.

mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
vim /etc/samba/smb.conf

Dodajte sljedeće konfiguracijske linije koje definiraju pravila o tome ko može pristupiti samba share-u na mreži.

[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = rocky-8
security = user
map to guest = bad user
dns proxy = no
ntlm auth = true


[Public]
path =  /srv/tecmint/data
browsable =yes
writable = yes
guest ok = yes
read only = no

Sačuvajte i izađite iz konfiguracione datoteke.

Zatim provjerite ima li grešaka u konfiguraciji sambe.

testparm

Ako sve izgleda u redu, obavezno pokrenite, omogućite i provjerite status demona Samba.

systemctl start smb
systemctl enable smb
systemctl start nmb
systemctl enable nmb
systemctl status smb
systemctl status nmb

Pristup Samba Share iz Windows-a

Za pristup Samba dijeljenju sa Windows mašine, pritisnite tipku s logotipom Windows + R da pokrenete Pokreni dijalog i unesite IP adresu sambe server kao što je prikazano.

Kada se povežete, prikazat će vam se 'Javno' direktorij našeg samba dijeljenja iz direktorija /srv/tecmint/data.

Direktorij 'Javno' je prazan, pošto nismo kreirali nijednu datoteku u Samba share-u, napravimo nekoliko datoteka sa sljedećom naredbom.

cd /srv/tecmint/data
touch file{1..3}.txt

Nakon što kreirate fajlove, pokušajte pristupiti Samba "Javno" folderu da vidite datoteke.

Uspješno smo konfigurirali i pristupili našem samba dijeljenju iz Windowsa, međutim, naš direktorij je dostupan svima koji imaju dozvole za uređivanje i brisanje datoteka, što se ne preporučuje kada hostirate važne datoteke.

U sljedećem odjeljku naučit ćete kako osigurati svoj samba dijeljeni direktorij.

Sigurno Samba Share Directory u RHEL-u

Da bismo osigurali naše Samba dijeljenje, moramo kreirati novog samba korisnika.

useradd smbuser
smbpasswd -a smbuser

Zatim kreirajte novu grupu i dodajte novog samba korisnika u ovu grupu.

sudo groupadd smb_group
sudo usermod -g smb_group smbuser

Nakon toga, kreirajte još jedan siguran samba dijeljeni direktorij za siguran pristup datotekama od strane samba korisnika.

mkdir -p /srv/tecmint/private
chmod -R 770 /srv/tecmint/private
chcon -t samba_share_t /srv/tecmint/private
chown -R root:smb_group /srv/tecmint/private

Još jednom, pristupite Samba konfiguracijskoj datoteci.

vi /etc/samba/smb.conf

Dodajte ove linije za definiranje kako biste osigurali samba dijeljenje.

[Private]
path = /srv/tecmint/private
valid users = @smb_group
guest ok = no
writable = no
browsable = yes

Sačuvajte promjene i izađite.

Konačno, ponovo pokrenite sve samba demone kao što je prikazano.

sudo systemctl restart smb
sudo systemctl restart nmb

Sada pokušajte pristupiti dijeljenju Samba, ovaj put ćete vidjeti dodatni 'Private' direktorij. Da biste pristupili ovom direktoriju, od vas će se tražiti da se autentifikujete s akreditivima Samba korisnika kao što je prikazano.

Da biste pristupili deljenju samba sa Linux mašine, prvo instalirajte samba-client paket i pokušajte da se povežete.

dnf install samba-client 
smbclient ‘\2.168.43.121\private’ -U smbuser

I ovim je završen ovaj članak o instalaciji i konfiguraciji Sambe na RHEL, CentOS Stream i Fedora. Vaše povratne informacije o ovom članku bit će vrlo cijenjene.