Attivare una condivisione sicura in Samba Server su CentOS 7

Leggi note dell’autore prima di iniziare!!


Questo tutorial descrive come configurare il server Samba su CentOS release 7 per una condivisione sicura. Inoltre, questa procedura funziona su RHEL 7.

NB. Vedi anche Installazione base e Configurazione di Samba Server su CentOS 7.

Creare in sicurezza l’accesso alle condivisioni sul server samba

Quello che abbiamo visto finora è la creazione di una condivisione Samba completamente accessibile. Chiunque può accedere a tale cartella di condivisione, e può creare o cancellare file al suo interno.

Scenario

In questo tutorial, si utilizzeranno due sistemi come descritto di seguito.

Samba server:

Operating system : CentOS 7 minimal server
Hostname : server.gidalo.local
IP Address : 192.168.1.250/24

Samba client:

Operating system : Windows 7 Professional o Windows 10
Hostname : CLI01
IP Address : 192.168.1.10/24

Ora, cerchiamo di creare una password protetta per la condivisione in Samba in modo che gli utenti dovrebbero inserire il nome utente e password validi per accedervi.

Creare un utente chiamato “gidalo” e un gruppo chiamato “smbgroup”.

useradd -s /sbin/nologin gidalo
groupadd smbgroup

Assegnare l’utente gidalo al gruppo smbgroup, e impostare la password di samba a quell’utente.

usermod -a -G smbgroup gidalo
smbpasswd -a gidalo

Creare una nuova condivisione chiamata “/samba/secure_folder” e impostiamo le autorizzazioni.

mkdir -p /samba/secure_folder
chmod -R 0755 /samba/secure_folder
chown -R gidalo:smbgroup /samba/secure_folder

Modificare il file di configurazione di samba;

vi /etc/samba/smb.conf

Aggiungere le righe seguenti in fondo file di configurazione di samba.

[Secure Folder]
path = /samba/secure_folder
writable = yes
browsable = yes
guest ok = no
valid users = @smbgroup

Testare la configurazione di Samba per eventuali errori.

testparm

Esempio di output:

Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[homes]"
Processing section "[printers]"
Processing section "[Free Share]"
Processing section "[Secure Folder]"
Loaded services file OK.
WARNING: You have some share names that are longer than 12 characters.
These may not be accessible to some older clients.
(Eg. Windows9x, WindowsMe, and smbclient prior to Samba 3.0.)
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
[global]
    dos charset = CP932
    netbios name = GIDALO SAMBA SERVER
    server string = Samba Server Version %v
    map to guest = Bad User
    log file = /var/log/samba/log.%m
    max log size = 50
    server max protocol = SMB2
    idmap config * : backend = tdb
    hosts allow = 127., 192.168.1.
    cups options = raw
[homes]
    comment = Home Directories
    read only = No
    browseable = No
[printers]
    comment = All Printers
    path = /var/spool/samba
    printable = Yes
    print ok = Yes
    browseable = No
[Free Share]
    path = /samba/free_share
    read only = No
    create mask = 0777
    directory mask = 0777
    guest only = Yes
    guest ok = Yes
[Secure Folder]
    path = /samba/secure_folder
    valid users = @smbgroup
    read only = No

Etichettare la cartella /samba/secure_folder/ con samba_share_t in modo che SELinux permette a Samba di leggere e scrivere ad esso.

chcon -t samba_share_t /samba/secure_folder/

Riavviare i servizi Samba.

systemctl restart smb
systemctl restart nmb

Verifica condivisione Samba

Ora, andate sul client Windows, controllate la cartella condivisa protetta.

Solito comando esegui:

esegui_cgidalo

e confermiamo su ‘OK’, verrà aperta una nuova finestra con:

 

allcondivisione_2_copy

Fare doppio clic per aprire la condivisione protetta, in questo caso ‘Secure Folder’. Verrà chiesto di inserire il nome utente e la password per accedere alla condivisione.

logincondivisione_copy

Se tutto è andato per il verso giusto, ora è possibile accedere alla cartella di condivisione Samba in modo sicuro.:

logincondivisioneOK_copy

Possiamo provare a creare un cartella al suo interno:
nuovacartella_copy

Questo è tutto. Il server Samba è pronto per l’uso.


Grazie del Vostro tempo dedicatomi ?

Loading