Le partage de fichiers est une partie essentielle de l'administration du serveur. Il permet le partage des ressources à travers le réseau qui sont nécessaires aux utilisateurs pour effectuer leurs tâches. Le serveur Samba est généralement installé sur un serveur Linux central où les informations sont stockées sur divers supports et accessibles à l'aide du client Windows ou Linux à l'aide du client Samba.
Dans cet article, nous apprendrons comment installer et configurer le partage de fichiers samba sur Rocky Linux 8. Ce guide fonctionne également sur d'autres distributions basées sur RHEL 8 comme Alma Linux 8 et Oracle Linux 8.
Rocky Linux 8 sera configuré en tant que serveur Samba, puis nous pourrons accéder aux fichiers avec des clients Windows ou Linux.
Contenu associé
- Comment installer et configurer le partage de fichiers Samba sur Ubuntu 20.04
Table des matières
- S'assurer que le serveur est à jour
- Installer les packages Samba
- Configuration des partages Samba
- Activer le service Samba via le pare-feu
- Démarrer et activer le service Samba
- Accéder aux partages Samba avec le client Linux
- Accéder aux partages Samba avec le client Windows
- Configuration sécurisée du partage Samba
1. S'assurer que le serveur est à jour
Avant de continuer, assurons-nous que notre serveur est à jour et que tous les packages sont à la dernière version. Utilisez ces commandes pour y parvenir :
sudo dnf -y update
S'il y a des packages à mettre à niveau, la commande ci-dessus peut prendre quelques minutes.
2. Installer les packages Samba
Les packages samba sont disponibles dans les référentiels Rocky Linux par défaut. Installez-les avec cette commande :
sudo dnf install samba samba-common samba-client
Lorsque vous êtes invité à confirmer le processus d'installation, tapez y puis entrez pour continuer.
Confirmez le progiciel installé avec cette commande :
$ rpm -qi samba
Name : samba
Epoch : 0
Version : 4.14.5
Release : 7.el8_5
Architecture: x86_64
Install Date: Sat Jan 15 08:12:25 2022
Group : Unspecified
Size : 2653757
License : GPLv3+ and LGPLv3+
Signature : RSA/SHA256, Mon Dec 13 17:12:06 2021, Key ID 15af5dac6d745a60
Source RPM : samba-4.14.5-7.el8_5.src.rpm
Build Date : Mon Dec 13 16:51:31 2021
Build Host : ord1-prod-x86build005.svc.aws.rockylinux.org
Relocations : (not relocatable)
Packager : [email protected]
Vendor : Rocky
URL : https://www.samba.org
Summary : Server and Client software to interoperate with Windows machines
Description :
Samba is the standard Windows interoperability suite of programs for Linux and
Unix.
3. Configuration des partages Samba
Le fichier de configuration de samba se trouve dans ce chemin /etc/samba/smb.conf
. Avant de faire toute modification, créons-en une sauvegarde, donc si nous nous trompons, nous en aurons une copie. Utilisez cette commande dans le terminal pour créer un fichier de sauvegarde :
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bk
Ensuite, créons un répertoire à partager.
sudo mkdir -p /home/sambashare
Mettons à jour les autorisations du répertoire afin qu'il soit accessible. En plus, nous mettrons également à jour les autorisations SELinux :
sudo chmod -R 755 /home/sambashare
sudo chown -R nobody:nobody /home/sambashare
sudo chcon -t samba_share_t /home/sambashare
Modifions maintenant la configuration de samba pour définir l'exportation du répertoire que nous avons créé.
Ouvrez le fichier de configuration :
sudo vim /etc/samba/smb.conf
Mettez à jour la configuration dans le fichier pour refléter les éléments suivants :
[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = Citizix SmbSvr
security = user
map to guest = bad user
dns proxy = no
[Public]
path = /home/sambashare
browsable =yes
writable = yes
guest ok = yes
read only = no
Enregistrez et fermez le fichier.
Vérifiez la configuration à l'aide de cette commande :
sudo testparm
Vous devriez voir quelque chose de similaire à ceci si tout va bien.
$ sudo testparm
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Weak crypto is allowed
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
# Global parameters
...
4. Activer le service Samba via le pare-feu
Si vous avez installé et activé le pare-feu, vous devez activer le service samba via le pare-feu. Utilisez cette commande pour y parvenir :
sudo firewall-cmd --add-service=samba --zone=public --permanent
sudo firewall-cmd --reload
5. Démarrer et activer le service Samba
Le service ne sera pas démarré par défaut. Démarrez le service à l'aide de cette commande :
sudo systemctl start smb
Confirmez l'état du service en utilisant ceci :
$ sudo systemctl status smb
● smb.service - Samba SMB Daemon
Loaded: loaded (/usr/lib/systemd/system/smb.service; disabled; vendor preset: disabled)
Active: active (running) since Sat 2022-01-15 08:43:41 UTC; 25s ago
Docs: man:smbd(8)
man:samba(7)
man:smb.conf(5)
Main PID: 62502 (smbd)
Status: "smbd: ready to serve connections..."
Tasks: 4 (limit: 23176)
Memory: 8.7M
CGroup: /system.slice/smb.service
├─62502 /usr/sbin/smbd --foreground --no-process-group
├─62504 /usr/sbin/smbd --foreground --no-process-group
├─62505 /usr/sbin/smbd --foreground --no-process-group
└─62506 /usr/sbin/smbd --foreground --no-process-group
Jan 15 08:43:41 dev-rockysrv1.inv.re systemd[1]: Starting Samba SMB Daemon...
Jan 15 08:43:41 dev-rockysrv1.inv.re smbd[62502]: [2022/01/15 08:43:41.212309, 0] ../../lib/util/become_daemon.c:136(daemon_ready)
Jan 15 08:43:41 dev-rockysrv1.inv.re systemd[1]: Started Samba SMB Daemon.
Jan 15 08:43:41 dev-rockysrv1.inv.re smbd[62502]: daemon_ready: daemon 'smbd' finished starting up and ready to serve connections
La sortie ci-dessus montre que le service a été démarré avec succès. Pour activer le service au démarrage, utilisez cette commande :
sudo systemctl enable smb
6. Accéder aux partages Samba avec le client Linux
Pour accéder au système de fichiers à partir d'un client Linux, nous devons installer le logiciel client Samba.
Sur un Linux difficile, installez le logiciel à l'aide de cette commande :
sudo dnf install -y samba-client
Pour accéder au partage, voici le format :
smbclient //server-IP/Public
Dans notre client :
$ smbclient //10.70.5.170/Public
Enter SAMBA\rocky's password:
Try "help" to get a list of possible commands.
smb: \> ls
. D 0 Sat Jan 15 08:34:22 2022
.. D 0 Sat Jan 15 08:34:22 2022
52417516 blocks of size 1024. 48494420 blocks available
smb: \>
Comme nous n'avons pas défini de mot de passe, appuyez simplement sur Entrée lorsque vous y êtes invité.
7. Accéder aux partages Samba avec le client Windows
Dans Windows, lancez la boîte de dialogue Exécuter dans Windows en appuyant sur la touche Windows + R .
Saisissez le nom d'hôte ou adresse IP du serveur, puis appuyez sur Entrée Clé.
\\hostname
or
\\server-IP-address
Dans mon cas
\\35.180.123.111
Cela ouvrira les partages. Vous pouvez ajouter un fichier ou un répertoire du serveur Samba ou de la machine cliente Windows au référentiel.
8. Configuration du partage Samba sécurisé
Samba permet un accès public sans vérification et également un partage privé où il faut être authentifié pour accéder aux ressources partagées. Dans cette section, nous allons configurer un répertoire privé à partager avec samba et accessible à l'aide d'un nom d'utilisateur et d'un mot de passe.
Créons un groupe d'utilisateurs Samba sur notre serveur.
sudo groupadd sambagrp
Créez un nouvel utilisateur et ajoutez-le au groupe samba que vous venez de créer.
sudo useradd -g sambagrp sambausr
Créez un dossier sécurisé, puis accordez-lui des autorisations et une propriété relatives .
sudo mkdir -p /home/sambaprivateshare
sudo chmod -R 770 /home/sambaprivateshare
sudo chcon -t samba_share_t /home/sambaprivateshare
sudo chown -R root:sambagrp /home/sambaprivateshare
Créez un mot de passe pour l'utilisateur Samba que nous venons de créer et qui sera utilisé pour l'authentification lors de l'accès au répertoire.
sudo smbpasswd -a sambausr
Tapez et retapez le mot de passe :
$ sudo smbpasswd -a sambausr
New SMB password:
Retype new SMB password:
Added user sambausr.
Modifiez le fichier de configuration de samba pour ajouter des configurations de partage sécurisé.
sudo vim /etc/samba/smb.conf
Ajoutez des lignes sous la commande et modifiez-les pour qu'elles correspondent à vos configurations.
[Private]
path = /home/sambaprivateshare
valid users = @private
guest ok = no
writable = yes
browsable = yes
Redémarrez ou rechargez les services Samba pour appliquer les configurations
sudo systemctl restart smb
Accéder aux fichiers Samba Secure à l'aide des systèmes Windows
Appuyez sur la touche Windows + R , saisissez le nom d'hôte du serveur ou adresse IP pour accéder aux dossiers partagés.
Lorsque vous ouvrez un compte privé dossier demandera un nom d'utilisateur et un mot de passe pour accorder le droit d'accès aux fichiers.
Accéder au répertoire sécurisé Samba avec Linux
Pour accéder au dossier sécurisé, vous devez fournir un utilisateur à la commande en utilisant ce format :
smbclient //server-IP/Private -U user
Entrez le mot de passe de l'utilisateur Samba lorsque vous y êtes invité.
$ smbclient //10.70.5.170/Private -U sambausr
Enter SAMBA\sambausr's password:
Try "help" to get a list of possible commands.
smb: \> ls
. D 0 Sat Jan 15 09:02:33 2022
.. D 0 Sat Jan 15 09:02:33 2022
52417516 blocks of size 1024. 48489312 blocks available
smb: \>
C'est ça! Nous avons réussi à installer et à configurer Samba pour le partage de fichiers anonyme et sécurisé entre notre système d'exploitation Rocky Linux et d'autres clients Linux ou Windows de bureau.