Serveur Samba · 5 min read · Dec 06, 2025

Installation et configuration du serveur Samba sur CentOS 7

Ce tutoriel explique comment configurer un serveur Samba sur CentOS 7 avec des partages samba anonymes et sécurisés. Samba est une suite de logiciels Open Source/Free Software qui fournit des services de fichiers et d’impression transparents aux clients SMB/CIFS comme Windows. Samba est disponible gratuitement, contrairement à d’autres implémentations SMB/CIFS, et permet l’interopérabilité entre les serveurs Linux/Unix et les clients basés sur Windows.

1 Remarque préliminaire

J’ai un serveur CentOS 7 fraîchement installé, sur lequel je vais installer le serveur samba. Bien sûr, vous devez avoir une machine Windows pour vérifier le serveur samba qui doit être accessible depuis le serveur CentOS 7. Mon serveur CentOS 7 a le nom d’hôte server1.example.com et l’IP 192.168.0.100

Remarque :

  • La machine Windows doit être dans le même groupe de travail. Pour vérifier la valeur sur la machine Windows, exécutez la commande dans l’invite de commande
net config workstation

Cela ressemblera à ceci :

Nom de domaine de connexion Windows

Votre machine Windows doit être dans le même domaine de station de travail que le serveur CentOS 7.0, c’est-à-dire WORKGROUP dans mon cas.

  • Pour rendre la machine Windows accessible, procédez comme suit. Dans le terminal d’exécution, ajoutez l’entrée de l’adresse IP de votre serveur :
notepad C:\Windows\System32\drivers\etc\hosts

Dans mon cas, cela ressemblait à ceci, il suffit de sauvegarder les valeurs.

[...]  
192.168.0.100   server1.example.com centos

2 Partage Samba anonyme

Tout d’abord, je vais expliquer la méthodologie pour installer Samba avec un partage anonyme. Pour installer le logiciel Samba, exécutez :

yum install samba samba-client samba-common

Cela installera la version actuelle de Samba à partir du dépôt de logiciels CentOS.

Maintenant, pour configurer samba, éditez le fichier /etc/samba/smb.conf. Avant de faire des modifications, je vais faire une sauvegarde du fichier original en tant que /etc/samba/smb.conf.bak

cp -pf /etc/samba/smb.conf /etc/samba/smb.conf.bak

Comme je veux commencer avec un fichier vide, j’utiliserai la commande cat pour vider smb.conf. C’est plus rapide que de supprimer toutes les lignes dans vi.

cat /dev/null > /etc/samba/smb.conf

Ensuite, donnez les entrées comme ceci

vi /etc/samba/smb.conf
[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = centos
security = user
map to guest = bad user
dns proxy = no
#============================ Définitions de partage ============================== 
[Anonymous]
path = /samba/anonymous
browsable =yes
writable = yes
guest ok = yes
read only = no
mkdir -p /samba/anonymous  
systemctl enable smb.service  
systemctl enable nmb.service  
systemctl restart smb.service  
systemctl restart nmb.service  

De plus, le pare-feu CentOS 7 Firewall-cmd bloquera l’accès samba, pour s’en débarrasser, nous allons exécuter :

firewall-cmd --permanent --zone=public --add-service=samba
[root@server1 ~]# firewall-cmd --permanent --zone=public --add-service=samba
success
[root@server1 ~]#

Enfin, rechargez le pare-feu pour appliquer les modifications.

firewall-cmd --reload
[root@server1 ~]# firewall-cmd --reload
success
[root@server1 ~]#

Maintenant, vous pouvez accéder au partage Centos 7 dans Windows comme suit. Allez dans l’invite d’exécution et tapez \centos :

\\centos

Ouvrir le partage Samba dans Windows

Depuis une machine Windows, parcourez simplement le dossier et essayez de créer un fichier texte, mais vous obtiendrez une erreur de permission refusée.

Parcourir le dossier partagé avec Samba sur Windows
Tester l'accès anonyme au partage Samba

Vérifiez les permissions du dossier partagé.

ls -l

drwxr-xr-x. 2 root root 6 Jul 17 13:41 anonymous  
[root@server1 samba]#

Pour permettre l’accès par l’utilisateur anonyme, définissez les permissions comme suit :

cd /samba
chmod -R 0755 anonymous/  
chown -R nobody:nobody anonymous/
ls -l anonymous/
total 0  
drwxr-xr-x. 2 nobody nobody 6 Jul 17 13:41 anonymous  
[root@server1 samba]#

De plus, nous devons autoriser SELinux pour la configuration samba comme suit :

chcon -t samba_share_t anonymous/

Maintenant, l’utilisateur anonyme peut parcourir et créer le contenu du dossier.

Accès au dossier par l'utilisateur anonyme

Vous pouvez également vérifier le contenu sur le serveur.

ls -l anonymous/
total 0  
-rwxr--r--. 1 nobody nobody 0 Jul 17 16:05 anonymous.txt  
[root@server1 samba]#

3. Serveur samba sécurisé

Par conséquent, je vais créer un groupe smbgrp et un utilisateur srijan pour accéder au serveur samba avec une authentification appropriée.

groupadd smbgrp
useradd srijan -G smbgrp
smbpasswd -a srijan
[root@server1 samba]# smbpasswd -a srijan
New SMB password:<--votremotdepasseSamba
Retype new SMB password:<--votremotdepasseSamba
Added user srijan.
[root@server1 samba]#  

Maintenant, créez un dossier avec le nom sécurisé dans le dossier /samba et donnez les permissions comme ceci :

mkdir -p /samba/secured

Encore une fois, nous devrons autoriser l’écoute via SELinux :

cd /samba
chmod -R 0777 secured/
chcon -t samba_share_t secured/

Encore une fois, éditez le fichier de configuration comme :

vi /etc/samba/smb.conf

[...]  
[secured]
 path = /samba/secured
 valid users = @smbgrp
 guest ok = no
 writable = yes
 browsable = yes
systemctl restart smb.service
systemctl restart nmb.service

De plus, vérifiez les paramètres comme suit :

testparm
[root@server1 samba]# testparm 
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[Anonymous]"
Processing section "[secured]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions <--ENTRER

[global]
    netbios name = CENTOS
    server string = Samba Server %v
    map to guest = Bad User
    dns proxy = No
    idmap config * : backend = tdb

[Anonymous]
    path = /samba/anonymous
    read only = No
    guest ok = Yes

[secured]
    path = /samba/secured
    valid users = @smbgrp
    read only = No
[root@server1 samba]# 

Maintenant, sur la machine Windows, vérifiez le dossier maintenant avec les bonnes informations d’identification

Accès sécurisé Samba par mot de passe

Vous rencontrerez à nouveau le problème des permissions pour donner la permission d’écriture à l’utilisateur srijan :

cd /samba  
chown -R srijan:smbgrp secured/

Maintenant, les utilisateurs samba ont les permissions d’écriture dans le dossier. Félicitations, vous avez terminé avec le serveur samba sur CentOS 7 :)

Liste des dossiers depuis le partage Samba sur Windows

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.