Samba Server · 8 min read · Dec 08, 2025

Comment installer le serveur Samba sur CentOS 8

Samba est un logiciel libre et open-source qui peut être utilisé pour partager des fichiers, des dossiers et des imprimantes entre des systèmes Linux et Windows. Il est également utilisé pour l’authentification et l’autorisation, la résolution de noms et l’annonce de services. Il peut être exécuté sur différents systèmes d’exploitation, y compris Linux, Unix, OpenVMS et bien d’autres.

Dans ce tutoriel, nous allons apprendre à installer Samba et à le configurer en tant que serveur de partage autonome sur CentOS 8.

Prérequis

  • Un serveur exécutant CentOS 8.
  • Un mot de passe root configuré sur votre serveur.

Installer le serveur Samba

Par défaut, le paquet Samba est disponible dans le dépôt par défaut de CentOS. Vous pouvez l’installer avec la commande suivante :

dnf install samba samba-common samba-client -y

Après avoir installé Samba, démarrez le service SMB et activez-le pour qu’il démarre après le redémarrage du système avec la commande suivante :

systemctl start smb  
systemctl enable smb

Vous pouvez maintenant vérifier le service Samba avec la commande suivante :

systemctl status smb

Vous devriez obtenir la sortie suivante :

? smb.service - Samba SMB Daemon
   Loaded: loaded (/usr/lib/systemd/system/smb.service; disabled; vendor preset: disabled)
   Active: active (running) since Mon 2020-03-02 23:03:30 EST; 8s ago
     Docs: man:smbd(8)
           man:samba(7)
           man:smb.conf(5)
 Main PID: 2072 (smbd)
   Status: "smbd: ready to serve connections..."
    Tasks: 4 (limit: 25028)
   Memory: 33.8M
   CGroup: /system.slice/smb.service
           ??2072 /usr/sbin/smbd --foreground --no-process-group
           ??2074 /usr/sbin/smbd --foreground --no-process-group
           ??2075 /usr/sbin/smbd --foreground --no-process-group
           ??2076 /usr/sbin/smbd --foreground --no-process-group

Créer un partage public avec Samba

Dans cette section, nous allons créer un partage public avec Samba afin que tout le monde puisse accéder au répertoire de partage public sans mot de passe.

Créer un répertoire de partage public

Tout d’abord, créez un dossier partagé nommé public et créez également deux fichiers à l’intérieur du répertoire public :

mkdir -p /samba/share/public  
touch /samba/share/public/file1.txt  
touch /samba/share/public/file2.txt

Ensuite, attribuez les permissions et la propriété nécessaires avec la commande suivante :

chmod -R 0755 /samba/share/  
chmod -R 0755 /samba/share/public  
chown -R nobody:nobody /samba/share  
chown -R nobody:nobody /samba/share/public

Configurer Samba

Ensuite, vous devrez configurer Samba pour partager un répertoire public.

Tout d’abord, créez une copie de sauvegarde du fichier /etc/samba/smb.conf avec la commande suivante :

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

Ensuite, créez un nouveau fichier de configuration Samba :

nano /etc/samba/smb.conf

Ajoutez les lignes suivantes :

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

[Public]
path = /samba/share/public
browsable =yes
writable = yes
guests ok = yes
read only = no

Enregistrez et fermez le fichier. Ensuite, redémarrez le service Samba pour appliquer les modifications :

systemctl restart smb

Ensuite, testez la configuration Samba avec la commande suivante :

testparm

Vous devriez voir la sortie suivante :

Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

# Global parameters
[global]
    dns proxy = No
    map to guest = Bad User
    netbios name = SAMBA-SERVER
    security = USER
    server string = Samba Server %v
    idmap config * : backend = tdb


[Public]
    guest ok = Yes
    path = /samba/share/public
    read only = No

Configurer SELinux et le pare-feu

Ensuite, définissez les valeurs de contexte de sécurité et de booléen SELinux appropriées sur le répertoire de partage avec la commande suivante :

setsebool -P samba_export_all_ro=1 samba_export_all_rw=1  
semanage fcontext -a -t samba_share_t "/samba/share/public(/.*)?"  
restorecon /samba/share/public

Ensuite, autorisez tous les services Samba à travers firewalld avec la commande suivante :

firewall-cmd --add-service=samba --zone=public --permanent  
firewall-cmd --reload

Accéder au partage Samba depuis Ubuntu Gnome

Pour accéder au partage Samba, allez sur la machine distante, ouvrez le gestionnaire de fichiers Gnome et cliquez sur Se connecter au serveur comme indiqué ci-dessous :

Accéder à SAMBA depuis Gnome

Fournissez l’adresse IP de votre serveur Samba et cliquez sur le bouton Se connecter. Après une connexion réussie, vous devriez voir le partage Samba à l’écran suivant :

Partage Samba dans l'explorateur de fichiers

Maintenant, cliquez sur le répertoire Public, vous devriez voir vos fichiers à l’écran suivant :

Liste des fichiers

Accéder au partage Samba depuis la ligne de commande Ubuntu

Vous pouvez également accéder au partage Samba depuis la ligne de commande.

Tout d’abord, listez tous les partages Samba disponibles avec la commande suivante :

smbclient -L //45.58.38.51

Vous devriez voir la sortie suivante :

Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]

    Sharename       Type      Comment
    ---------       ----      -------
    Public          Disk      
    IPC$            IPC       IPC Service (Samba Server 4.10.4)
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]

    Server               Comment
    ---------            -------

    Workgroup            Master
    ---------            -------

Vous pouvez également monter le partage Samba en utilisant le protocole cifs. Pour ce faire, installez le paquet cifs-utils avec la commande suivante :

apt-get install cifs-utils -y

Ensuite, montez le partage Samba dans le répertoire /mnt avec la commande suivante :

mount -t cifs //45.58.38.51/public /mnt/

On vous demandera de fournir un mot de passe comme indiqué ci-dessous :

Password for root@//45.58.38.51/public: 

Il suffit d’appuyer sur Entrée sans entrer de mot de passe pour monter le partage Samba :

Vous pouvez maintenant accéder au partage Samba dans le répertoire /mnt :

ls /mnt/

Vous devriez voir la sortie suivante :

file1.txt  file2.txt

Créer un partage privé avec Samba

Dans cette section, nous allons créer un partage privé avec Samba afin que seuls les utilisateurs authentifiés puissent accéder au répertoire de partage privé.

Créer un utilisateur et un groupe

Tout d’abord, créez un groupe nommé private avec la commande suivante :

groupadd private

Ensuite, créez un nouvel utilisateur nommé privateuser et ajoutez-le au groupe privé :

useradd -g private privateuser

Ensuite, définissez un mot de passe pour l’utilisateur avec la commande suivante :

smbpasswd -a privateuser

Sortie :

New SMB password:
Retype new SMB password:
Added user privateuser.

Créer un répertoire de partage privé

Ensuite, créez un dossier partagé nommé privé et créez également deux fichiers à l’intérieur du répertoire privé :

mkdir -p /samba/share/private  
touch /samba/share/private/private1.txt  
touch /samba/share/private/private2.txt

Ensuite, attribuez les permissions et la propriété appropriées avec la commande suivante :

chmod -R 0770 /samba/share/private  
chown -R root:private /samba/share/private

Ensuite, configurez le contexte SELinux pour le répertoire privé avec la commande suivante :

semanage fcontext –at samba_share_t "/samba/share/private(/.*)?"  
restorecon /samba/share/private

Configurer Samba

Ensuite, ouvrez le fichier de configuration Samba et définissez le partage privé :

nano /etc/samba/smb.conf

Ajoutez les lignes suivantes à la fin du fichier :

[Private]
path = /samba/share/private
valid users = @private     
guests ok = no
writable = yes
browsable = yes

Enregistrez et fermez le fichier, puis redémarrez le service Samba pour appliquer les modifications :

systemctl restart smb

Ensuite, vérifiez la configuration Samba avec la commande suivante :

testparm

Vous devriez voir la sortie suivante :

Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

# Global parameters
[global]
    dns proxy = No
    map to guest = Bad User
    netbios name = SAMBA-SERVER
    security = USER
    server string = Samba Server %v
    idmap config * : backend = tdb


[Public]
    guest ok = Yes
    path = /samba/share/public
    read only = No


[Private]
    path = /samba/share/private
    read only = No
    valid users = @private

Accéder au partage Samba depuis la ligne de commande Ubuntu

Tout d’abord, accédez au partage disponible avec la commande suivante :

smbclient -L //45.58.38.51

Vous devriez voir la sortie suivante :

Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]

    Sharename       Type      Comment
    ---------       ----      -------
    Public          Disk      
    Private         Disk      
    IPC$            IPC       IPC Service (Samba Server 4.10.4)
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]

    Server               Comment
    ---------            -------

    Workgroup            Master
    ---------            -------

Ensuite, connectez-vous au serveur Samba et listez le partage disponible avec la commande suivante :

smbclient //45.58.38.51/private -U privateuser

On vous demandera de fournir un mot de passe comme indiqué ci-dessous :

Enter privateuser's password: 

Tapez votre mot de passe et appuyez sur Entrée pour accéder au shell Samba comme indiqué ci-dessous :

Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.10.4]
smb: \>

Maintenant, listez le partage disponible avec la commande suivante :

smb: \> ls

Vous devriez voir la sortie suivante :

  .                                   D        0  Tue Mar  3 10:03:22 2020
  ..                                  D        0  Tue Mar  3 10:01:56 2020
  private1.txt                        N        0  Tue Mar  3 10:03:17 2020
  private2.txt                        N        0  Tue Mar  3 10:03:22 2020

        51194 blocks of size 2097152. 49358 blocks available

Maintenant, quittez le shell Samba avec la commande suivante :

smb: \>exit

Vous pouvez également monter le partage Samba dans le répertoire /opt :

mount -t cifs -o user=privateuser //45.58.38.51/private /opt

On vous demandera de fournir un mot de passe comme indiqué ci-dessous :

Password for privateuser@//45.58.38.51/private:  *********

Fournissez votre mot de passe et appuyez sur Entrée pour monter le partage Samba.

Vous pouvez maintenant vérifier votre partage Samba dans le répertoire /opt comme indiqué ci-dessous :

ls /opt/

Sortie :

private1.txt  private2.txt

Accéder au partage Samba depuis Ubuntu Gnome

Pour accéder au partage Samba, allez sur la machine distante, ouvrez le gestionnaire de fichiers Gnome et cliquez sur Se connecter au serveur comme indiqué ci-dessous :

Accéder au partage privé dans Gnome

Fournissez l’adresse IP de votre serveur Samba et cliquez sur le bouton Se connecter. Après une connexion réussie, vous devriez voir le partage Samba à l’écran suivant :

Partage public et privé

Maintenant, cliquez sur le répertoire Privé, fournissez votre nom d’utilisateur et votre mot de passe, puis cliquez sur le bouton Se connecter. Vous devriez voir vos fichiers à l’écran suivant :

Connexion avec nom d'utilisateur et mot de passe

Fichiers

Félicitations ! Vous avez réussi à installer et configurer le serveur Samba sur CentOS 8.

Share: X/Twitter LinkedIn

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

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