Académique Documents
Professionnel Documents
Culture Documents
Les réseaux informatiques sont souvent composés de systèmes divers et même si opérer un réseau constitué
exclusivement de stations de travail et de serveurs Ubuntu serait assurément plaisant, certains environnements
réseau sont constitués à la fois de systèmes Ubuntu et de systèmes Microsoft®Windows® travaillant ensemble
en harmonie. Cette section du guide du serveur Ubuntu présente les principes et les outils utilisés pour configurer
votre serveur Ubuntu afin de partager des ressources réseau avec des ordinateurs Windows.
1. Introduction
2. Serveur de fichiers
3. Serveur d'impression
4. Sécurisation du serveur de fichiers et d'impression
5. En tant que contrôleur de domaine
6. Integration Active Directory
Serveur de fichiers
Une des méthodes les plus courantes pour mettre Ubuntu et Windows en réseau est de configurer Samba en
serveur de fichiers. Cette section décrit l'installation d'un serveur Samba afin de partager des fichiers avec des
clients Windows.
The server will be configured to share files with any client on the network without prompting for a password. If
your environment requires stricter Access Controls see Sécurisation du serveur de fichiers et d'impression.
1. Installation
2. Configuration
3. Ressources
Installation
La première étape consiste à installer le paquet samba. Dans un terminal saisissez :
sudo apt install samba
C'est tout ce que vous avez à faire. Vous êtes maintenant prêt à configurer Samba pour partager des fichiers.
Configuration
The main Samba configuration file is located in /etc/samba/smb.conf. The default configuration file has a
significant number of comments in order to document various configuration directives.
Le fichier de configuration ne contient pas toutes les options disponibles. Consultez la
page man de smb.conf ou Samba HOWTO Collection (en) pour plus de détails.
1. Tout d'abord, modifiez les couples clé/valeur suivantes dans la
section [global] de /etc/samba/smb.conf :
2. workgroup = EXAMPLE
3. …
4. security = user
Le paramètre security situé plus bas dans la section [global] est commenté par défaut. Modifiez
également EXEMPLE afin de l'adapter à votre environnement.
5. Créez une nouvelle section à la fin du fichier (ou décommentez un des exemples) pour le dossier à partager :
6. [share]
7. comment = Dossier partagé sur le serveur Ubuntu
8. path = /srv/samba/share
9. browsable = yes
10. guest ok = yes
11. read only = no
12. create mask = 0755
Serveur d'impression
Une autre utilisation classique de Samba est de le configurer pour partager les imprimantes installées sur un
serveur Ubuntu, que ce soit localement ou sur le réseau. De même que Serveur de fichiers, cette section permet
de configurer Samba pour permettre à n'importe quel client sur le réseau d'utiliser les imprimantes sans demande
de mot de passe.
Pour une configuration plus sécurisée, voir Sécurisation du serveur de fichiers et d'impression.
1. Installation
2. Configuration
3. Ressources
Installation
Avant d'installer et de configurer Samba, il est préférable de disposer d'une installation fonctionnelle
de CUPS. Voir CUPS - Serveur d'impression pour plus de détails.
Pour installer le paquet samba, entrez la commande suivante depuis un terminal :
sudo apt install samba
Configuration
Après avoir installé Samba éditez le fichier /etc/samba/smb.conf. Changez le workgroup (groupe de
travail) pour l'adapter à votre réseau et passez security (sécurité) à user (utilisateur) :
workgroup = EXAMPLE
…
security = user
Security = User
Cette section permet de reconfigurer le serveur de fichiers et d'impression Samba défini dans Serveur de
fichiers et dans Serveur d'impression de façon à imposer une identification.
First, install the libpam-winbind package which will sync the system users to the Samba user database:
sudo apt install libpam-winbind
If you chose the Samba Server task during installation libpam-winbind is already installed.
Modifiez la section [share] du fichier /etc/samba/smb.conf :
guest ok = no
Pour terminer, redémarrez Samba afin que les nouveaux paramètres soient pris en compte :
Groupes
Les Groupes définissent un ensemble d'ordinateurs ou d'utilisateurs qui ont un niveau d'accès commun à des
ressources réseau particulières, et offrent une certaine granularité dans le contrôle d'accès à de telles ressources.
Par exemple, si un groupe qa est défini et contient les utilisateurs freda, danika, et rob, et un second
groupe support est défini et contient les utilisateurs danika, jeremy et vincent, alors les ressources réseau
configurées pour autoriser l'accès au groupe qa seront accessibles à freda, danika et rob, mais pas à jeremy ou à
vincent. Comme l'utilisateur danika appartient aux deux groupes qa et support, elle aura accès aux ressources
configurées comme accessibles par les deux groupes, tandis que tous les autres utilisateurs n'auront accès qu'aux
ressources autorisant explicitement le groupe dont ils font partie.
Par défaut, Samba inspecte les groupes système locaux définis dans /etc/group pour déterminer quels
utilisateurs appartiennent à quels groupes. Pour de plus amples informations sur l'ajout et la suppression des
utilisateurs dans les groupes, consultez Ajout et suppression d'utilisateurs.
Pour définir un groupe dans le fichier de configuration de Samba, /etc/samba/smb.conf, vous devez le
préfacer avec le symbole « @ ». Par exemple, si vous souhaitez définir un groupe nommé sysadmin dans une
section spécifique de /etc/samba/smb.conf, vous devrez saisir @sysadmin.
Un autre type de permissions dans Samba consiste à donner des permissions administratives sur une ressource
partagée spécifique. Les utilisateurs ayant des permissions administratives sur une ressource peuvent lire, écrire
ou modifier toutes les informations contenues dans celle-ci.
Par exemple, si vous voulez donner à l'utilisateur melissa des permissions administratives sur le partage share,
vous devez modifier le fichier /etc/samba/smb.conf et ajouter les lignes suivantes à la section [share] :
admin users = melissa
Après avoir modifié/etc/samba/smb.conf, redémarrez Samba pour que les nouveaux paramètres soient
pris en compte :
sudo systemctl restart smbd.service nmbd.service
Pour que read list et write list fonctionnent, le mode de sécurité de Samba ne doit pas être réglé sur security =
share
Maintenant que Samba a été configuré pour définir quels groupes ont accès au répertoire partagé, les permissions
du système de fichier doivent être mises à jour.
Les permissions de fichiers traditionnelles de Linux ne correspondent pas exactement aux listes de contrôle
d'accès (ACL) de Windows NT. Heureusement, les ACL POSIX sont disponibles sur les serveurs Ubuntu,
permettant un contrôle plus fin des droits. Par exemple, pour activer les ACL sur un système de fichiers
EXT3 /srv, il faut éditer le fichier /etc/fstab et ajouter l'option acl :
UUID=66bcdd2e-8861-4fb0-b7e4-e61c569fe17d /srv ext3 noatime,relatime,acl 0 1
La commande setfacl ci-dessus donne les droits execute à tous les fichiers du
répertoire /srv/samba/share, que vous pouvez désirer ou non.
Maintenant, à partir d'un client Windows, vous devriez remarquer la mise en œuvre des nouvelles permissions
sur les fichiers. Consultez les pages de manuel acl et setfacl pour plus d'informations sur la gestion des ACLs
POSIX.
Vous devriez pouvoir lire, écrire et exécuter les fichiers dans le dossier partagé et l'exécutable smbd n'aura
accès qu'aux fichiers et dossiers configurés. Assurez vous d'avoir ajouté une entrée pour chaque dossier que vous
voulez partager avec Samba. Quoi qu'il en soit, toutes les erreurs seront écrites dans le fichier
journal /var/log/syslog.
7. Dans la section commentée « Domains » (Domaines) ajoutez ou supprimez les éléments suivants (la dernière
ligne a été divisée pour s'adapter au format de ce document) :
8. domain logons = yes
9. logon path = \\%N\%U\profile
10. logon drive = H:
11. logon home = \\%N\%U
12. logon script = logon.cmd
13. add machine script = sudo /usr/sbin/useradd -N -g machines -c Machine -d
14. /var/lib/samba -s /bin/false %u
Si vous ne voulez pas utiliser les profils itinérants laissez commentées les options logon home et logon
path.
1. domain logons : permet à Samba d'agir comme un contrôleur de domaine
2.
logon path : place le profil des utilisateurs Windows dans leur répertoire personnel. Il est également
possible de configurer un partage [profiles] pour placer tous les profils dans un seul et même répertoire.
3. logon drive : spécifie l'emplacement du répertoire personnel local.
4. logon home : spécifie l'emplacement du répertoire personnel.
5. logon script : indique le script à exécuter localement une fois l'utilisateur connecté. Le script doit être
placé dans le partage [netlogon].
6. add machine script : un script qui créera automatiquement un compte de machine approuvé, requis pour
qu'une station de travail puisse joindre le domaine.
Dans cet exemple le groupe machines devra être créé en utilisant la commande addgroup, consultez Ajout
et suppression d'utilisateurs pour plus de détails.
15. Décommentez le partage [homes] pour permettre au logon home d'être monté en lecteur réseau :
16. [homes]
17. comment = Home Directories
18. browseable = no
19. read only = no
20. create mask = 0700
21. directory mask = 0700
22. valid users = %S
23. Dans le cas d'une configuration en contrôleur de domaine, un partage [netlogon] doit être configuré. Pour
activer le partage, décommenter :
24. [netlogon]
25. comment = Network Logon Service
26. path = /srv/samba/netlogon
27. guest ok = yes
28. read only = yes
29. share modes = no
10. Assurez-vous qu'un utilisateur a le droit de lire les fichiers dans /var/lib/samba. Ainsi, pour permettre à
un utilisateur du groupe admin d'effectuer un scp sur les fichiers, saisissez :
11. sudo chgrp -R admin /var/lib/samba
12. Il faut ensuite synchroniser les comptes utilisateurs en se servant de scp pour copier le
répertoire /var/lib/samba depuis le PDC :
13. sudo scp -r identifiant@pdc:/var/lib/samba /var/lib
Remplacez username par un identifiant correct et pdc par le nom d'hôte ou par l'adresse IP du PDC.
14. Pour finir, redémarrez samba :
15. sudo systemctl restart smbd.service nmbd.service
You pouvez tester le bon fonctionnement de votre BDC en arrêtant le démon Samba du PDC puis en essayant de
vous identifier sur le domaine à partir d'un client Windows préalablement joint au domaine.
Une autre chose à conserver à l'esprit est que si vous avez configuré l'option logon home comme répertoire sur le
PDC, et que le PDC devient indisponible, l'accès pour l'utilisateur au lecteur Home sera également impossible.
Pour cette raison, il est préférable de configurer le logon home afin qu'il réside sur un serveur de fichiers séparé
du PDC et du BDC.
5. Se servir de l'utilitaire smbclient est une autre méthode pour copier des fichiers depuis un serveur
Windows. Pour lister les fichiers d'un partage Windows :
6. smbclient //fs01.exemple.com/partage -k -c "ls"
7. Pour copier un fichier d'un partage, saisissez :