Chapitre 14. Serveurs de fichiers et d'impression
CIFS), et vsftpd, le principal serveur FTP fourni avec Red Hat Enterprise Linux. En outre, il explique comment utiliser l'outil Imprimer les paramètres pour configurer les imprimantes.
14.1. Samba
SMB). SMB permet à Microsoft Windows®, Linux, UNIX, et à d'autres systèmes d'exploitation d'accéder à des fichiers et à des imprimantes partagés à partir de serveurs qui prennent en charge ce protocole. L'utilisation de SMB par Samba leur permet d'apparaître comme serveur Windows pour les clients Windows.
Note
root :
~]# yum install samba14.1.1. Introduction à Samba
Ce que Samba peut faire :
- Servir des structures de répertoires et des imprimantes à des clients Linux, UNIX, et Windows
- Assister lors de la navigation réseau (avec NetBIOS)
- Authentifier les connexions aux domaines Windows
- Fournir des résolutions de serveur de noms Windows Internet Name Service (
WINS) - Agir en tant que contrôleur de domaine de sauvegarde (PDC) NT®-style Primary Domain Controller
- Agir en tant que contrôleur de domaine de sauvegarde (BDC) Backup Domain Controller pour un PDC basé Samba
- Agir en tant que serveur membre d'un domaine Active Directory
- Joindre un serveur Windows NT/2000/2003/2008 PDC/Windows Server 2012
Ce que Samba ne peut pas faire :
- Agir en tant que BDC pour un PDC Windows (et vice-versa)
- Agir en tant que contrôleur de domaine Active Directory
14.1.2. Démons Samba et services connexes
smbd, nmbd, et winbindd). Trois services (smb, nmb, et winbind) contrôlent la manière par laquelle les démons sont lancés, arrêtés, ainsi que d'autres fonctionnalités liées aux services. Ces services agissent comme scripts init différents. Chaque démon est répertorié de manière détaillée ci-dessous, ainsi que les services spécifiques qui en possèdent le contrôle.
smbd
smbd fournit des services d'impression et de partage de fichiers aux clients Windows. De plus, il est responsable pour l'authentification utilisateur, le verrouillage de ressources, et le partage de données via le protocole SMB. Les ports par défaut sur lesquels le serveur écoute le trafic SMB sont les ports TCP 139 et 445.
smbd est contrôlé par le service smb.
nmbd
nmbd comprend et répond aux requêtes de service de noms NetBIOS comme celles produites par SMB/CIFS sur des systèmes basés Windows. Ces systèmes incluent des clients Windows 95/98/ME, Windows NT, Windows 2000, Windows XP, et LanManager. Il participte également aux protocoles de navigation qui composent l'affichage du Voisinage réseau Windows. Le port par défaut sur lequel le serveur écoute le trafic NMB et le port UDP 137.
nmbd est contrôlé par le service nmb.
winbindd
windbind résout les informations des utilisateurs et des groupes reçues d'un serveur exécutant Windows NT, 2000, 2003, Windows Server 2008, ou Windows Server 2012. Ceci rend les informations des utilisateurs et des groupes Windows compréhensibles par les plateformes UNIX. Cela est effectué en utilisant des appels Microsoft RPC, PAM (« Pluggable Authentication Modules »), et NSS (« Name Service Switch »). Cela permet aux utilisateurs de domaines Windows NT et d'AD (Active Directory) d'apparaître et d'opérer comme s'ils étaient des utilisateurs UNIX sur une machine UNIX. Malgré qu'il soit combiné à la distribution Samba, le service winbind est contrôlé séparément à partir du service smb.
winbind est contrôlé par le service winbind et ne requiert pas que le service smb soit lancé pour opérer. winbind est également utilisé lorsque Samba est un membre d'Active Directory, et peut aussi être utilisé sur un contrôleur de domaines Samba (pour implémenter des groupes imbriqués et une confiance interdomaines). Comme winbind est un service côté client utilisé pour connecter des serveurs Windows basés NT, une discussion approfondie sur winbind est au-delà de l'étendue de ce chapitre.
Note
14.1.5. Configurer un serveur Samba
/etc/samba/smb.conf) permet aux utilisateurs de voir leur répertoire personnel en tant que partage Samba. Il partage également toutes les imprimantes configurées pour le système en tant qu'imprimantes partagées Samba. Vous pouvez attacher une imprimante au système et l'utiliser à partir de machines Windows sur votre réseau.
14.1.5.1. Configuration graphique
14.1.5.2. Configuration en ligne de commande
/etc/samba/smb.conf comme fichier de configuration. Si vous modifiez cela, les changements n'entreront en vigueur que lorsque vous redémarrez le démon Samba avec la commande suivante, en tant qu'utilisateur root :
~]# systemctl restart smb.service/etc/samba/smb.conf :
workgroup = WORKGROUPNAME server string = BRIEF COMMENT ABOUT SERVER
/etc/samba/smb.conf (après l'avoir modifiée pour refléter vos besoins et ceux de votre système) :
Exemple 14.1. Exemple de configuration de serveur Samba
[nom partage] commentaire = Insérer un commentaire ici chemin = /home/share/ utilisateurs valides = tfox carole écriture = yes créer masque = 0765
tfox et carole de lire et d'écrire sur le répertoire /home/share/, situé sur le serveur Samba, à partir d'un client Samba.
14.1.6. Lancer et arrêter Samba
root :
~]# systemctl start smb.serviceImportant
net join avant de lancer le service smb. Il est également recommandé d'exécuter winbind avant smbd.
root :
~]# systemctl stop smb.servicerestart est une façon rapide d'arrêter, puis de redémarrer Samba. Cette manière est la plus efficace pour que les changements de configuration puissent entrer en vigueur après avoir modifié le fichier de configuration de Samba. Remarquez que l'option de redémarrage lance le démon même s'il n'était pas exécuté à l'origine.
root :
~]# systemctl restart smb.servicecondrestart (redémarrage conditionnel, « conditional restart ») lance smb à condition d'être actuellement en cours d'exécution. Cette option est utile pour les scripts, car elle ne lance pas le démon s'il n'est pas en cours d'exécution.
Note
/etc/samba/smb.conf est modifié, Samba le recharge automatiquement après quelques minutes. Exécuter un redémarrage manuel (« restart ») ou un rechargement manuel (« reload ») est tout autant efficace.
root :
~]# systemctl try-restart smb.service/etc/samba/smb.conf peut être utile en cas d'échec du rechargement automatique effectué par le service smb. Pour vous assurer que le fichier de configuration du serveur Samba soit rechargé sans redémarrer le service, veuillez saisir la commande suivante en tant qu'utilisateur root :
~]# systemctl reload smb.servicesmb n'est pas lancé automatiquement pendant l'initialisation. Pour configurer Samba pour qu'il soit lancé pendant l'initialisation, veuillez saisir ce qui suit dans une invite de shell en tant qu'utilisateur root :
~]# systemctl enable smb.service14.1.7. Mode de sécurité de Samba
14.1.7.1. Sécurité Niveau utilisateur
security = user n’est pas répertoriée dans le fichier /etc/samba/smb.conf, elle sera utilisée par Samba. Si le serveur accepte le nom d'utilisateur et mot de passe du client, le client peut alors monter plusieurs partages sans spécifier un mot de passe pour chaque instance. Samba peut également accepter des demandes de noms et mots de passe basés sur une session utilisateur. Le client maintient plusieurs contextes d’authentification en utilisant un UID unique pour chaque ouverture de session.
/etc/samba/smb.conf, la directive security = user qui détermine la sécurité niveau utilisateur correspond à :
[GLOBAL] ... security = user ...
Partages d'invités Samba
security = share, suivre la procédure ci-dessous :
Procédure 14.3. Configuration des partages d'invités Samba
- Créer un fichier de mise en correspondance des noms d'utilisateur, dans cet exemple,
/etc/samba/smbusers, et y ajouter la ligne suivante :nobody = guest
- Ajouter la directive suivante à la section principale du fichier
/etc/samba/smb.conf. Ne pas utiliser la directivevalid users.[GLOBAL] ... security = user map to guest = Bad User username map = /etc/samba/smbusers ...
La directiveusername mapvous donne un chemin vers le fichier de mappage des noms utilisateurs dans l'étape précédente. - Ajouter la directive suivante à la section partages dans le fichier
/ect/samba/smb.conf. Ne pas utiliser la directivevalid users.[SHARE] ... guest ok = yes ...
Mode de sécurité domaine (sécurité niveau utilisateur)
/etc/samba/smb.conf :
[GLOBAL] ... security = domain workgroup = MARKETING ...
Mode de sécurité Active Directory (sécurité niveau utilisateur)
/etc/samba/smb.conf, les directives suivantes font de Samba un membre d'Active Directory.
[GLOBAL] ... security = ADS realm = EXAMPLE.COM password server = kerberos.example.com ...
14.1.8. Navigation réseau Samba
TCP/IP. La mise en réseau basée NetBIOS utilise une messagerie de diffusion (UDP) pour accomplir la gestion de liste de parcours. Sans NetBIOS et WINS comme méthode principale de résolution de nom d'hôte TCP/IP, d'autres méthodes comme les fichiers statiques (/etc/hosts) ou DNS devront être utilisées.
14.1.8.1. Exploration de domaines
/etc/samba/smb.conf pour un explorateur principal local (ou sans aucune exploration) dans un environnement de contrôleur de domaine est la même chose qu'une configuration de groupe de travail (veuillez consulter Section 14.1.5, « Configurer un serveur Samba »).
14.1.8.2. WINS (« Windows Internet Name Server »)
/etc/samba/smb.conf, dans lequel le serveur Samba sert de serveur WINS :
Exemple 14.2. Exemple de configuration de serveur WINS
[global] wins support = yes
Note
14.1.9. Programmes de distribution Samba
net
net <protocol> <function> <misc_options> <target_options>net est similaire à l'utilitaire net utilisé pour Windows et MS-DOS. Le premier argument est utilisé pour spécifier le protocole à utiliser lors de l'exécution d'une commande. L'option protocol peut être ads, rap, ou rpc pour spécifier le type de connexion serveur. Active Directory utilise ads, Win9x/NT3 utilise rap et Windows NT4/2000/2003/2008 utilise rpc. Si le protocole est omis, net tente de le déterminer automatiquement.
wakko :
~]$ net -l share -S wakko
Password:
Enumerating shared resources (exports) on remote server:
Share name Type Description
---------- ---- -----------
data Disk Wakko data share
tmp Disk Wakko tmp share
IPC$ IPC IPC Service (Samba Server)
ADMIN$ IPC IPC Service (Samba Server)wakko :
~]$ net -l user -S wakko
root password:
User name Comment
-----------------------------
andriusb Documentation
joe Marketing
lisa Salesnmblookup
nmblookup <options> <netbios_name>nmblookup résout les noms NetBIOS en adresses IP. Le programme diffuse sa requête sur le sous-réseau local jusqu'à ce que la machine cible réponde.
IP du nom NetBIOS trek :
~]$ nmblookup trek
querying trek on 10.1.59.255
10.1.56.45 trek<00>pdbedit
pdbedit <options>pdbedit gère les comptes situés dans la base de données SAM. Tous les serveurs principaux sont pris en charge, y compris smbpasswd, LDAP, et la bibliothèque de base de données tdb.
~]$pdbedit -a kristinnew password: retype new password: Unix username: kristin NT username: Account Flags: [U ] User SID: S-1-5-21-1210235352-3804200048-1474496110-2012 Primary Group SID: S-1-5-21-1210235352-3804200048-1474496110-2077 Full Name: Home Directory: \\wakko\kristin HomeDir Drive: Logon Script: Profile Path: \\wakko\kristin\profile Domain: WAKKO Account desc: Workstations: Munged dial: Logon time: 0 Logoff time: Mon, 18 Jan 2038 22:14:07 GMT Kickoff time: Mon, 18 Jan 2038 22:14:07 GMT Password last set: Thu, 29 Jan 2004 08:29:28 GMT Password can change: Thu, 29 Jan 2004 08:29:28 GMT Password must change: Mon, 18 Jan 2038 22:14:07 GMT ~]$pdbedit -v -L kristinUnix username: kristin NT username: Account Flags: [U ] User SID: S-1-5-21-1210235352-3804200048-1474496110-2012 Primary Group SID: S-1-5-21-1210235352-3804200048-1474496110-2077 Full Name: Home Directory: \\wakko\kristin HomeDir Drive: Logon Script: Profile Path: \\wakko\kristin\profile Domain: WAKKO Account desc: Workstations: Munged dial: Logon time: 0 Logoff time: Mon, 18 Jan 2038 22:14:07 GMT Kickoff time: Mon, 18 Jan 2038 22:14:07 GMT Password last set: Thu, 29 Jan 2004 08:29:28 GMT Password can change: Thu, 29 Jan 2004 08:29:28 GMT Password must change: Mon, 18 Jan 2038 22:14:07 GMT ~]$pdbedit -Landriusb:505: joe:503: lisa:504: kristin:506: ~]$pdbedit -x joe~]$pdbedit -Landriusb:505: lisa:504: kristin:506:
rpcclient
rpcclient <server> <options>rpcclient exécute des commandes administratives en utilisant des RPC Microsoft, qui fournissent accès aux interfaces utilisateur graphique (GUI) d'administration Windows pour la gestion des systèmes. Ce programme est souvent utilisé par des utilisateurs de niveau avancé, qui comprennent parfaitement la complexité des RPC Microsoft.
smbcacls
smbcacls <//server/share> <filename> <options>smbcacls modifie les ACL Windows sur les fichiers et répertoires partagés par un serveur Samba ou un serveur Windows.
smbclient
smbclient <//server/share> <password> <options>smbclient est un client UNIX polyvalent offrant une fonctionnalité similaire à ftp.
smbcontrol
smbcontrol -i <options>smbcontrol <options> <destination> <messagetype> <parameters>smbcontrol envoie des messages de contrôle aux démons en cours d'exécution smbd, nmbd, ou winbindd. L'exécution de smbcontrol -i exécute des commandes de manière interactive jusqu'à ce qu'une ligne blanche ou que le caractère 'q' soit saisi(e).
smbpasswd
smbpasswd <options> <username> <password>smbpasswd gère des mots de passe chiffrés. Ce programme peut être utilisé par un super-utilisateur pour modifier le mot de passe de tout autre utilisateur, ainsi que par un utilisateur ordinaire pour qu'il puisse modifier son propre mot de passe Samba.
smbspool
smbspool <job> <user> <title> <copies> <options> <filename>smbspool est une interface d'impression compatible avec CUPS sur Samba. Malgré sa conception destinée à une utilisation avec des imprimantes CUPS, smbspool peut également fonctionner avec des imprimantes n'utilisant pas CUPS.
smbstatus
smbstatus <options>smbstatus affiche le statut des connexions actuelles à un serveur Samba.
smbtar
smbtar <options>smbcacls effectue des copies de sauvegarde et des restaurations de fichiers et répertoires de partage basés Windows sur une bande d'archive locale. Malgré des similarités avec la commande tar, les deux ne sont pas compatibles.
testparm
testparm <options> <filename> <hostname IP_address>testparm vérifie la syntaxe du fichier /etc/samba/smb.conf. Si votre fichier smb.conf ne se trouve pas dans l'emplacement par défaut (/etc/samba/smb.conf), vous n'aurez pas besoin de spécifier l'emplacement. La spécification du nom d'hôte et de l'adresse IP sur le programme testparm vérifie si les fichiers hosts.allow et host.deny sont correctement configurés. Le programme testparm affiche également un résumé du fichier smb.conf et le rôle du serveur (stand-alone, domain, etc.), après avoir effectué des tests. Ceci est utile lors du débogage car les commentaires sont exclus et les informations sont présentées de façon concise pour permettre leur lecture à des administrateurs expérimentés. Exemple :
~]$testparmLoad smb config files from /etc/samba/smb.conf Processing section "[homes]" Processing section "[printers]" Processing section "[tmp]" Processing section "[html]" Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions<enter># Global parameters [global] workgroup = MYGROUP server string = Samba Server security = SHARE log file = /var/log/samba/%m.log max log size = 50 socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 dns proxy = no [homes] comment = Home Directories read only = no browseable = no [printers] comment = All Printers path = /var/spool/samba printable = yes browseable = no [tmp] comment = Wakko tmp path = /tmp guest only = yes [html] comment = Wakko www path = /var/www/html force user = andriusb force group = users read only = no guest only = yes
wbinfo
wbinfo <options>wbinfo affiche des informations du démon winbindd. Le démon winbindd doit être en cours d'exécution pour que wbinfo fonctionne.
14.1.10. Ressources supplémentaires
Documentation installée
/usr/share/doc/samba-<version-number->/— comprend tous les fichiers supplémentaires inclus avec la distribution de Samba. Ceux-ci incluent tous les scripts d'aide, tous les exemples de fichiers de configuration, et toute la documentation.- Veuillez consulter les pages de manuel suivantes pour obtenir des informations détaillées sur les fonctionnalités de Samba :
- smb.conf(5)
- samba(7)
- smbd(8)
- nmbd(8)
- winbindd(8)
Sites Web utiles
- http://www.samba.org/ — page d'accueil de la distribution de Samba ainsi que de toute la documentation créée par l'équipe de développement Samba. De nombreuses ressources sont disponibles sous les formats HTML et PDF, tandis que d'autres sont uniquement disponibles à l'achat. Même si un grand nombre de ces liens ne sont pas spécifiques à Red Hat Enterprise Linux, certains concepts peuvent s'appliquer.
- https://wiki.samba.org/index.php/User_Documentation — documentation officielle de Samba 4.x
- http://samba.org/samba/archives.html — listes actives de courriers électroniques de la communauté Samba. L'activation du mode de synthèse (« digest mode ») est recommandé à cause du niveau élevé d'activité de la liste.
- Samba newsgroups — des groupes d'informations en threads de Samba, par exemple www.gmane.org, qui utilisent le protocole
NNTPsont également disponibles. Cela est une alternative à la réception de courriers électroniques de la liste de diffusion.



Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.