GNU/Linux >> Tutoriels Linux >  >> Linux

Premiers pas avec Samba pour l'interopérabilité

Les partages de fichiers sont importants pour la collaboration dans n'importe quel réseau. Dans cette série d'articles, je vais vous montrer comment Samba peut vous aider à configurer et à servir des partages de fichiers sur des serveurs Linux accessibles depuis les clients Linux et Windows.

Qu'est-ce que Samba ?

Avant de plonger et de configurer des partages de fichiers, voyons ce qu'est Samba et ce qu'il peut faire pour vous.

Samba est une suite d'applications qui implémente le protocole Server Message Block (SMB). De nombreux systèmes d'exploitation, dont Microsoft Windows, utilisent le protocole SMB pour la mise en réseau client-serveur. Samba permet aux machines Linux/Unix de communiquer avec des machines Windows dans un réseau.

Samba est un logiciel open source. À l'origine, Samba a été développé en 1991 pour un partage rapide et sécurisé de fichiers et d'impressions pour tous les clients utilisant le protocole SMB. Depuis lors, il a évolué et ajouté plus de fonctionnalités. Aujourd'hui, Samba fournit une suite d'applications permettant une mise en réseau transparente et une interopérabilité entre *nix et Windows.

Installez les packages Samba

Dans cet exemple, j'utilise CentOS 8 avec le nom d'hôte centos comme mon serveur Samba avec une adresse IP de 192.168.1.122. Le seul paquet que vous devrez installer est Samba, mais j'aimerais inclure d'autres outils clients comme samba-common et samba-client pour tester nos partages plus tard.

# yum install samba samba-client samba-common -y

Créez un répertoire à partager et définissez ses autorisations

Une fois que vous avez installé les packages requis sur le serveur, créons un répertoire et fournissons les autorisations requises sur le répertoire. Créez un répertoire appelé share sur notre répertoire racine. Vous pouvez nommer ce répertoire comme vous le souhaitez et lui donner les autorisations de lecture, d'écriture et d'exécution. Dans cet exemple, nous nous baserons sur la configuration de Samba pour contrôler l'accès en lecture et en écriture au répertoire partagé.

# mkdir /share

# chmod -R 777 /share

Configurer un partage

Maintenant que nous avons installé les packages nécessaires, il est temps de configurer le répertoire partagé. Le fichier de configuration se trouve sous /etc/samba . À l'aide de votre éditeur de texte préféré, ajoutez ce qui suit à /etc/samba/smb.conf . Laissez le reste du fichier de configuration tel quel et cela devrait être bon pour notre configuration.

# vim /etc/samba/smb.conf

[myshare]
        comment = My share
        path = /share
        read only = No


J'ai créé un partage appelé myshare et fourni un chemin vers le partage, qui dans notre cas se trouve à /share . Je lui ai ensuite donné des autorisations de lecture/écriture avec read only = No . Il existe de nombreux autres paramètres de configuration que vous pouvez transmettre ici, mais pour notre configuration, ces paramètres sont bons.

Vérifiez la configuration de Samba

Samba fournit un outil pour vérifier notre fichier de configuration. Nous pouvons vérifier si notre fichier de configuration contient des erreurs en utilisant le testparm commande.

# testparm

Ensuite, nous devons créer un compte utilisateur Samba, afin que Samba puisse communiquer dans les sessions Samba avec des partages. Le smbpasswd La commande a plusieurs fonctions selon que vous exécutez la commande en tant que root ou en tant qu'utilisateur standard. Si vous émettez smbpasswd sans aucun argument en tant que non-root utilisateur, par défaut smbpasswd modifiera le mot de passe Samba de l'utilisateur actuellement connecté. Lorsque vous exécutez smbpasswd commande en tant que root , vous pourrez créer de nouveaux comptes Samba. Vous pouvez créer un compte Samba uniquement pour les comptes utilisateur Linux existants.

# smbpasswd -a user

New SMB password:
Retype new SMB password:

Nous devons configurer SELinux sur le /share répertoire afin que le service Samba dispose des autorisations appropriées.

# semanage fcontext -a -t samba_share_t "/share(/.*)?"

# restorecon -R -v /share

Ensuite, nous devons activer et démarrer le smb et nmb services.

# systemctl enable smb

# systemctl start smb

#systemctl enable nmb

#systemctl start nmb


Si vous avez firewalld s'exécutant sur votre serveur, nous devons le configurer pour autoriser le trafic Samba. Vous pouvez le faire en utilisant le firewall-cmd commande. N'oubliez pas de rendre ces modifications permanentes et de recharger firewalld .

Maintenant, nos services sont activés et démarrés. Nous pouvons vérifier si le partage est disponible depuis le serveur en utilisant le smbclient outil. C'est la raison pour laquelle j'ai installé les outils client Samba sur la machine locale. La commande utilise la syntaxe suivante :

smbclient -U -L

# smbclient -U user -L 192.168.1.122

Enter SAMBA\user's password:

Vérifions si nous pouvons accéder au partage en exécutant la commande suivante sur le serveur :

# smbclient -U user //192.168.1.122/myshare

Enter SAMBA\user's password:

Try "help" to get a list of possible commands.

smb: \>

Conclusion

Nous avons installé et configuré le service de partage de fichiers Samba sur notre serveur Linux. Nous avons pu accéder à ces partages sur la machine locale. Dans le prochain article, nous configurerons un client Linux et un client Windows 10 pour accéder au partage que nous venons de créer.

[ Vous voulez en savoir plus sur l'administration système Linux ? Suivez un cours d'administration système Red Hat. ]


Linux
  1. Premiers pas avec Zsh

  2. Démarrer avec ls

  3. 5 conseils pour démarrer avec la sécurité des serveurs Linux

  4. Premiers pas avec socat, un outil de relais polyvalent pour Linux

  5. Premiers pas avec PostgreSQL sous Linux

Premiers pas avec le système d'exploitation Linux

Premiers pas avec GitHub

Premiers pas avec le gestionnaire de paquets Nix

Premiers pas avec systemctl

Premiers pas avec Buildah pour la gestion des conteneurs Linux

Prise en main et installation de Slack pour Linux