GNU/Linux >> Tutoriels Linux >  >> Cent OS

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 logicielle Open Source/gratuite qui fournit des services de fichiers et d'impression transparents aux clients SMB/CIFS comme Windows. Samba est disponible gratuitement, contrairement aux autres implémentations SMB/CIFS, et permet l'interopérabilité entre les serveurs Linux/Unix et les clients 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 disposer d'une machine Windows pour vérifier le serveur samba qui doit être accessible avec le serveur CentOS 7. Mon serveur Centos 7 a le nom d'hôte server1.example.com &IP as 192.168.0.100

Remarque :

  • La machine Windows doit appartenir au même groupe de travail. Pour vérifier la valeur dans la machine Windows, exécutez la commande à l'invite cmd
net config workstation

Ce sera comme ça :

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

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

Dans mon cas, c'était comme ça, il suffit de sauvegarder les valeurs.

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

2 Partage Samba anonyme

Je vais d'abord vous 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

Il installera la version actuelle de Samba à partir du référentiel de logiciels CentOS.

Maintenant, pour configurer samba, éditez le fichier /etc/samba/smb.conf. Avant d'apporter des modifications, je ferai la sauvegarde du fichier d'origine 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

De plus, 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
#============================ Share Definitions ============================== 
[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 CentOS 7 Firewall-cmd bloquera l'accès à la samba, pour s'en débarrasser nous exécuterons :

firewall-cmd --permanent --zone=public --add-service=samba
[[email protected] ~]# firewall-cmd --permanent --zone=public --add-service=samba
success
[[email protected] ~]#

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

firewall-cmd --reload
[[email protected] ~]# firewall-cmd --reload
success
[[email protected] ~]#

Vous pouvez maintenant accéder au partage Centos 7 dans Windows comme suit. Allez à l'invite Exécuter et tapez \\centos :

\\centos

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



Vérifiez l'autorisation du dossier partagé.

ls -l

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

Pour autoriser l'accès à l'utilisateur anonyme, définissez les autorisations 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
[[email protected] samba]#

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

chcon -t samba_share_t anonymous/

Désormais, l'utilisateur anonyme peut parcourir et créer le contenu du dossier.

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
[[email protected] samba]#

3. Serveur samba sécurisé

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

groupadd smbgrp
useradd srijan -G smbgrp
smbpasswd -a srijan
[[email protected] samba]# smbpasswd -a srijan
New SMB password:<--yoursambapassword
Retype new SMB password:<--yoursambapassword
Added user srijan.
[[email protected] samba]# 
    

Créez maintenant un dossier avec le nom secured dans le dossier /samba et accordez des autorisations comme celle-ci :

mkdir -p /samba/sécurisé

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

cd /samba
chmod -R 0777 sécurisé/
chcon -t samba_share_t sécurisé/

Éditez à nouveau 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

Ensuite, vérifiez les paramètres comme suit :

testparm
[[email protected] 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 <--ENTER

[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
[[email protected] samba]# 

Maintenant, sur la machine Windows, vérifiez le dossier maintenant avec les informations d'identification appropriées

Vous serez à nouveau confronté au problème des autorisations pour donner l'autorisation d'écriture à l'utilisateur srijan do :

cd /samba
chown -R srijan:smbgrp secured/

Les utilisateurs de samba sont désormais autorisés à écrire dans le dossier. Bravo, vous avez terminé avec le serveur samba dans CentOS 7 :)


Cent OS
  1. Comment installer et configurer Samba sur CentOS 8

  2. Configuration d'un serveur et d'un client NFS sur CentOS 7.2

  3. Installation du serveur et du client NFS sur CentOS 7

  4. CentOS / RHEL :Guide du débutant pour vsftpd (installation et configuration)

  5. Guide du débutant pour Samba (installation et configuration)

Comment installer un serveur minimal CentOS 8

Installer et configurer Check_MK Server sur CentOS 7

Installation et configuration du serveur d'entreprise Univention

Comment installer et configurer Samba sur CentOS 8

Guide du débutant pour Apache HTTP Server - Installation et configuration

Installation et configuration de Zenoss Core sur CentOS/RHEL 6.X