Ricerca nel sito web

Come installare il server Samba in RHEL, CentOS e Fedora


Samba è un programma open source molto popolare e ampiamente utilizzato che consente agli utenti finali di accedere alla directory condivisa Linux da qualsiasi macchina Windows sulla stessa rete.

Samba è anche chiamato file system di rete e può essere installato su sistemi operativi Linux/Unix. Samba stesso è un protocollo client/server di SMB (Server Message Block) e CIFS (Common Internet File System ).

Utilizzando smbclient (GUI) o Esplora file di Windows, gli utenti finali possono connettersi al server Samba da qualsiasi workstation Windows per accedere a file e stampanti condivisi.

Questo tutorial spiega come installare Samba Server (fileserver) su sistemi RHEL, CentOS Stream e Fedora e inoltre impareremo come configurarlo per condividere file in rete utilizzando il protocollo SMB, così come vedremo come creare e aggiungere utenti di sistema sul database degli utenti di samba.

A scopo dimostrativo utilizziamo il sistema RHEL 8 con nome host tecmint con indirizzo IP 192.168.43.121.

Installa e configura Samba in RHEL

Per iniziare con samba, devi installare i pacchetti principali di samba e il pacchetto samba-client come mostrato:

dnf install samba samba-common samba-client 

Dopo aver installato tutto samba, è necessario configurare la directory di condivisione di samba con autorizzazioni e proprietà adeguate, in modo che venga condivisa con tutte le macchine client nella stessa rete locale.

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

Successivamente, configureremo la directory di condivisione Samba nel file smb.conf, che è il file di configurazione principale per Samba.

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

Aggiungi le seguenti righe di configurazione, che definiscono le politiche su chi può accedere alla condivisione samba sulla rete.

[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

Salvare ed uscire dal file di configurazione.

Successivamente, verifica la presenza di errori nella configurazione di Samba.

testparm

Se tutto sembra a posto, assicurati di avviare, abilitare e verificare lo stato dei demoni Samba.

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

Accesso alla condivisione Samba da Windows

Per accedere alla condivisione Samba dal computer Windows, premi il tasto logo Windows + R per avviare la finestra di dialogo Esegui e inserisci l'indirizzo IP di samba server come mostrato.

Una volta connesso, ti verrà presentata la directory "Pubblica" della nostra condivisione samba dalla directory /srv/tecmint/data.

La directory "Pubblica" è vuota, poiché non abbiamo creato alcun file nella condivisione Samba, creiamo alcuni file con il seguente comando.

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

Dopo aver creato i file, prova ad accedere alla cartella "Pubblica" di Samba per visualizzare i file.

Abbiamo configurato e acceduto con successo alla nostra condivisione samba da Windows, tuttavia, la nostra directory è accessibile a chiunque abbia le autorizzazioni per modificare ed eliminare file, il che non è consigliato quando si ospitano file importanti.

Nella sezione successiva imparerai come proteggere la directory di condivisione di Samba.

Directory di condivisione sicura di Samba in RHEL

Per proteggere la nostra condivisione Samba, dobbiamo creare un nuovo utente Samba.

useradd smbuser
smbpasswd -a smbuser

Successivamente, crea un nuovo gruppo e aggiungi il nuovo utente samba a questo gruppo.

sudo groupadd smb_group
sudo usermod -g smb_group smbuser

Successivamente, crea un'altra directory di condivisione samba sicura per l'accesso sicuro ai file da parte degli utenti samba.

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

Ancora una volta, accedi al file di configurazione di Samba.

vi /etc/samba/smb.conf

Aggiungi queste righe per definire la condivisione sicura di Samba.

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

Salva le modifiche ed esci.

Infine, riavvia tutti i demoni samba come mostrato.

sudo systemctl restart smb
sudo systemctl restart nmb

Ora prova ad accedere alla condivisione Samba, questa volta vedrai un'ulteriore directory "Privata". Per accedere a questa directory, ti verrà richiesto di autenticarti con le credenziali dell'utente Samba come mostrato.

Per accedere alla condivisione samba da una macchina Linux, installare innanzitutto il pacchetto samba-client e provare a connettersi.

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

E con questo si conclude questo articolo sull'installazione e la configurazione di Samba su RHEL, CentOS Stream e Fedora. Il tuo feedback su questo articolo sarà molto apprezzato.