Wéi Setup Samba Server an RHEL, Rocky Linux an AlmaLinux


Dateien deelen ass e wesentleche Bestanddeel vun der Serververwaltung. Et erlaabt d'Deelen vu Ressourcen iwwer d'Netzwierk, déi d'Benotzer brauche fir hir Aufgaben auszeféieren. Eng vun de wäit benotzte Dateie-Sharing Software ass Samba.

Samba, eng Re-Implementatioun vum populäre SMB (Server Message Block) Protokoll, ass eng stabil a gratis Applikatioun déi d'Deelen vun Dateien an Dréckservicer iwwer e Netzwierk erlaabt. D'Software ass op engem zentrale Linux Server installéiert, vun deem gedeelt Dateie vu béide Linux a Windows Systemer zougänglech sinn.

An dësem Guide wäerte mir Iech duerch d'Installatioun vum Samba Server op RHEL-baséiert Verdeelungen wéi CentOS Stream, Rocky Linux, an AlmaLinux.

Schrëtt 1: Installéiert Samba op Linux

Fir mat Samba unzefänken, installéiert d'Samba Core Packagen inklusiv de Client Package:

$ sudo dnf install samba samba-common samba-client 

De Kommando installéiert d'Packagen, déi zesumme mat den Ofhängegkeeten spezifizéiert sinn, wéi op der Ausgab ugewisen. Nodeems d'Installatioun fäerdeg ass, kritt Dir e Resumé vun all de Packagen déi installéiert goufen.

Schrëtt 2: Samba Shares erstellen a konfiguréieren

Wann all Samba Packagen installéiert sinn, ass de nächste Schrëtt d'Samba Shares ze konfiguréieren. E Samba Share ass einfach e Verzeechnes deen iwwer Clientsystemer am Netz gedeelt gëtt.

Hei wäerte mir e Samba Share mam Numm /data am /srv/tecmint/ Verzeichniswee erstellen.

$ sudo mkdir -p /srv/tecmint/data

Als nächst wäerte mir Permissiounen a Besëtzer wéi follegt zouginn.

$ sudo chmod -R 755 /srv/tecmint/data
$ sudo chown -R  nobody:nobody /srv/tecmint/data
$ sudo chcon -t samba_share_t /srv/tecmint/data

Als nächst wäerte mir e puer Konfiguratiounen an der smb.conf Konfiguratiounsdatei maachen, déi d'Haaptkonfiguratiounsdatei vum Samba ass. Awer ier mer dat maachen, wäerte mir d'Datei backen andeems se se mat enger anerer Dateierweiterung ëmbenennen.

$ sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak

Als nächst wäerte mir eng nei Konfiguratiounsdatei erstellen.

$ sudo vim /etc/samba/smb.conf

Mir wäerten d'Politik definéieren wien Zougang zum Samba Share kann andeems Dir d'Zeilen bäigefüügt, déi an der Konfiguratiounsdatei gewise ginn.

[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

Späichert a gitt d'Konfiguratiounsdatei aus.

Fir d'Konfiguratiounen z'iwwerpréiwen, fuert de Kommando:

$ sudo testparm

Als nächst, start an aktivéiert Samba Daemons wéi gewisen.

$ sudo systemctl start smb
$ sudo systemctl enable smb
$ sudo systemctl start nmb
$ sudo systemctl enable nmb

Gitt sécher ze bestätegen datt béid smb an nmb Daemon lafen.

$ sudo systemctl status smb
$ sudo systemctl status nmb

Schrëtt 3: Zougang zu Samba Share vu Windows

Bis elo hu mir Samba installéiert an eis Samba Share konfiguréiert. Mir sinn elo prett et op Fernseh zouzegräifen. Fir dëst op engem Windows Client ze maachen, dréckt de Windows Logo Schlëssel + R fir den Dialog Run ze starten.

Am Textfeld gitt, gitt d'IP Adress vum Samba Server wéi gewisen:

\\server-ip

Déi folgend Fënster mam Label Public erschéngt. Denkt drun, dëst ass de Verzeechnes deen op eise Samba Deel am /srv/tecmint/data Verzeichnis weist.

De Moment ass eise Verzeechnes eidel well mir keng Dateien erstallt hunn. Also, mir ginn zréck op eisen Terminal an erstellen e puer Dateien am Samba Share Verzeichnis.

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

Elo navigéiere mir an den 'Ëffentlechen' Dossier wou d'Dateien, déi mir virdru erstallt hunn, ugewise ginn.

Perfekt. Mir hunn et fäerdeg bruecht Zougang zu eisem Samba Deel ze kréien. Wéi och ëmmer, eise Verzeechnes ass fir jiddereen zougänglech a jidderee kann Dateien no Wëllen änneren an läschen, wat net recommandéiert ass besonnesch wann Dir plangt sensibel Dateien ze hosten.

Am nächste Schrëtt wäerte mir demonstréieren wéi Dir e séchere Samba Share Verzeichnis erstellen a konfiguréieren.

Schrëtt 4: Séchert Samba Share Directory

Als éischt erstellen mir en neie Samba Benotzer.

$ sudo useradd smbuser

Als nächst wäerte mir e Passwuert fir de Samba Benotzer konfiguréieren. Dëst ass d'Passwuert dat während der Authentifikatioun benotzt gëtt.

$ sudo smbpasswd -a smbuser

Als nächst wäerte mir en neie Grupp fir eise séchere Samba Deel erstellen an den neie Samba Benotzer addéieren.

$ sudo groupadd smb_group
$ sudo usermod -g smb_group smbuser

Duerno erstellt nach eng aner Samba Share déi sécher zougänglech ass. An eisem Fall hu mir en anere Verzeechnes am selwechte Wee erstallt wéi de

$ sudo mkdir -p  /srv/tecmint/private

Dann konfiguréieren d'Datei Permissiounen fir de Samba Share

$ sudo chmod -R 770 /srv/tecmint/private
$ sudo chcon -t samba_share_t /srv/tecmint/private
$ sudo chown -R root:smb_group /srv/tecmint/private

Nach eng Kéier, Zougang zu der Samba Konfiguratiounsdatei.

$ sudo vim /etc/samba/smb.conf

Füügt dës Zeilen un fir ze definéieren fir Samba Share ze sécheren.

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

Späichert d'Ännerungen a gitt eraus.

Endlech, restart all Samba Daemons wéi gewisen.

$ sudo systemctl restart smb
$ sudo systemctl restart nmb

Wann Dir dës Kéier op Äre Server zougitt, mierkt Dir en zousätzlechen 'Privat' Dossier. Fir Zougang zum Dossier ze kréien, musst Dir Iech mat den Umeldungsinformatiounen vum Samba Benotzer authentifizéieren. Gitt de Benotzernumm a Passwuert vum Benotzer deen Dir am virege Schrëtt erstallt hutt a klickt op 'OK'.

Schrëtt 5: Zougang zu Samba Share vum Linux Client

Fir Zougang zum Deel vun engem Linux Client ze kréien, gitt als éischt sécher datt de Samba Client Package installéiert ass.

$ sudo dnf install samba-client 

Benotzt dann de Kommando smbclient wéi follegt

# smbclient ‘\2.168.43.121\private’ -U smbuser

An dëst schléisst dëse Guide iwwer d'Konfiguratioun vun Samba op RHEL, CentOS Stream, Rocky Linux, an AlmaLinux of. Äre Feedback iwwer dëse Guide wäert héich appréciéiert ginn.