Aller au contenu
Réussir mon BTS SIO

Tape une notion, une commande ou le nom d'une épreuve.

Par exemple

Chapitre 615 minIntermédiaire

Partage SMB et Active Directory sur TrueNAS

Par Josselyn C., prof de BTS SIO. Mis à jour le .

À la fin de ce chapitre, tu sauras

  • préparer DNS, heure et nom d'hôte avant la jonction au domaine ;
  • joindre TrueNAS à Active Directory et vérifier la jonction ;
  • créer un partage SMB et le bon objectif (Purpose) ;
  • donner les droits aux groupes du domaine selon AGDLP ;
  • rendre les snapshots visibles comme versions précédentes.

4 exercices corrigés1 schéma

Un partage SMB rend un dataset de TrueNAS accessible aux postes Windows comme n'importe quel dossier partagé, sous la forme \\srv-nas\Archives. Joint à Active Directory, TrueNAS authentifie les utilisateurs avec leur compte du domaine, par Kerberos, et applique les ACL aux groupes de l'annuaire : aucun compte à recréer, aucun mot de passe de plus. Ce chapitre décrit les prérequis de la jonction, la jonction elle-même, la création du partage et de ses droits selon AGDLP, puis les versions précédentes, l'audit et les erreurs les plus fréquentes.

Ce qui se passe quand Julie ouvre le partage

Julie Lefèvre, comptable, ouvre \\srv-nas\Archives depuis son poste du domaine. Quatre étapes s'enchaînent, en une fraction de seconde :

  1. le poste demande au DNS l'adresse de srv-nas.ad.sorbier.example ;
  2. le poste demande au contrôleur de domaine un ticket de service Kerberos pour cifs/srv-nas.ad.sorbier.example, à l'aide du ticket obtenu à l'ouverture de session ;
  3. le poste ouvre une session SMB 3 sur srv-nas (TCP 445) en présentant ce ticket ; TrueNAS le vérifie avec la clé de son compte d'ordinateur, sans jamais voir le mot de passe de Julie ;
  4. TrueNAS traduit l'identité de Julie et de ses groupes (des SID Windows) en identifiants Unix, puis applique l'ACL du dataset.

Le service qui fait ce travail côté TrueNAS est Winbind, un composant de Samba, le logiciel libre qui implémente SMB sur Linux. Le cours Authentification explique le fonctionnement de Kerberos.

Poste de JulieVLAN 10srv-adcontrôleur de domainesrv-nasTrueNAS, Winbind1. DNS : adresse de srv-nas ?192.168.10.1832. ticket pour cifs/srv-nas ?ticket de service Kerberos3. session SMB 3 (TCP 445) avec le ticket4a. vérifie le ticket, traduit les SID en UID et GID4b. applique l'ACL du dataset tank/archivesLe mot de passe de Julie ne transite jamais vers srv-nas.
Une connexion SMB dans un domaine : DNS, ticket Kerberos, session SMB, puis ACL

Préparer la jonction

La jonction échoue presque toujours pour l'une de ces quatre raisons. Vérifie-les avant de commencer.

PrérequisPourquoiChez Sorbier
DNSTrueNAS doit trouver les contrôleurs par leurs enregistrements SRV, et seul le DNS de l'annuaire les connaîtNameserver 1 192.168.10.177, Nameserver 2 192.168.10.181, aucun DNS public
HeureKerberos refuse un ticket si les horloges diffèrent de plus de 5 minutesNTP sur les contrôleurs ; TrueNAS utilise par défaut l'émulateur PDC du domaine comme serveur de temps préféré
Nom d'hôteLe nom devient le compte d'ordinateur et le nom NetBIOS : 15 caractères au plus, pas de mot réservé (DOMAIN, SERVER…)srv-nas, identique dans Network > Global Configuration et dans la configuration AD
Compte de jonctionIl faut un compte autorisé à créer des comptes d'ordinateursUn compte délégué sur l'OU des serveurs, plutôt que l'administrateur du domaine

Prépare aussi, côté annuaire, l'unité d'organisation où ranger le compte d'ordinateur : OU=Serveurs,OU=Sorbier,DC=ad,DC=sorbier,DC=example, celle du cours Windows Server, pour que srv-nas reçoive les mêmes GPO de sécurité que les autres serveurs membres.

powershell
# Sur srv-ad : vérifier que le domaine se résout et que les horloges sont justes
Resolve-DnsName -Type SRV "_ldap._tcp.dc._msdcs.ad.sorbier.example"
w32tm /query /status

Joindre TrueNAS au domaine

  1. Credentials > Directory Services, bouton Configure Directory Services.
  2. Configuration Type : Active Directory.
  3. Cocher Enable Service. Laisser Enable Account Cache (la liste des comptes et des groupes est gardée en cache pour les écrans de droits) et Enable DNS Updates (TrueNAS enregistre lui-même son adresse dans le DNS du domaine).
  4. Credential Type : Kerberos User. Username : le nom du compte seul, sans le domaine (par exemple svc-jonction), et son Password.
  5. TrueNAS Hostname : srv-nas. Domain Name : ad.sorbier.example. Computer Account OU : OU=Serveurs,OU=Sorbier,DC=ad,DC=sorbier,DC=example.
  6. Laisser Use TrueNAS Server IDMAP Defaults coché (voir plus bas), puis Save.

La jonction prend quelques minutes ; le Task Manager, en haut à droite, en suit l'avancement. Quand elle réussit, le widget Active Directory affiche l'état sain du service, et le compte SRV-NAS apparaît dans l'OU des serveurs. Vérifie depuis System > Shell :

bash
wbinfo -t
text
checking the trust secret for domain SORBIER via RPC calls succeeded
bash
wbinfo -g | grep -i archives
text
SORBIER\dl_archives_m
SORBIER\dl_archives_l

wbinfo -t teste la relation de confiance entre srv-nas et le domaine ; wbinfo -g liste les groupes du domaine vus par Winbind (wbinfo -u pour les comptes). Si des comptes manquent dans les écrans de droits, le bouton Settings du widget, puis Rebuild Directory Service Cache, recharge le cache.

Les identifiants Unix. Le système de fichiers de TrueNAS stocke des UID et des GID Unix, alors que l'annuaire identifie les comptes par des SID. Le réglage IDMAP dit comment traduire l'un en l'autre. Par défaut, TrueNAS utilise l'algorithme RID : l'UID est calculé à partir de la dernière partie du SID, toujours de la même façon. Deux TrueNAS joints au même domaine avec les mêmes réglages donnent donc le même UID au même utilisateur, ce qui compte pour la réplication du chapitre 9. Ne change ces réglages qu'en connaissant leurs conséquences : une erreur rend les ACL existantes incohérentes.

Créer les groupes AGDLP

Les droits du partage Archives suivent la méthode AGDLP du cours Windows Server : les comptes dans des groupes globaux par fonction, les groupes globaux dans des groupes de domaine local par droit sur la ressource, et les droits donnés aux seuls groupes de domaine local.

BesoinGroupe global (fonction)Groupe de domaine local (droit)Droit NFSv4
Les agents de l'entrepôt et le serveur de numérisation déposent les scansGG_Logisticiens (dont le compte de service svc-scan du serveur de numérisation)DL_Archives_MModify
La comptabilité et le service client consultentGG_Comptables, GG_Service_ClientDL_Archives_LRead
Le service informatique administreGG_Admins_StockageDL_Archives_CTFull Control
powershell
$ou = "OU=Groupes,OU=Sorbier,DC=ad,DC=sorbier,DC=example"
New-ADGroup -Name "DL_Archives_M"  -GroupScope DomainLocal -GroupCategory Security -Path $ou `
    -Description "Modification sur \\srv-nas\Archives"
New-ADGroup -Name "DL_Archives_L"  -GroupScope DomainLocal -GroupCategory Security -Path $ou `
    -Description "Lecture sur \\srv-nas\Archives"
New-ADGroup -Name "DL_Archives_CT" -GroupScope DomainLocal -GroupCategory Security -Path $ou `
    -Description "Contrôle total sur \\srv-nas\Archives"
Add-ADGroupMember -Identity "DL_Archives_M"  -Members "GG_Logisticiens"
Add-ADGroupMember -Identity "DL_Archives_L"  -Members "GG_Comptables", "GG_Service_Client"
Add-ADGroupMember -Identity "DL_Archives_CT" -Members "GG_Admins_Stockage"

Ces commandes supposent que les groupes globaux existent déjà dans l'annuaire, comme GG_Comptables et GG_Logisticiens dans le cours Windows Server ; crée ceux qui manquent avec New-ADGroup -GroupScope Global.

Créer le partage SMB

  1. Shares, widget Windows (SMB) Shares, bouton Add.
  2. Path : parcourir jusqu'à /mnt/tank/archives (ou créer le dataset depuis cet écran avec Create Dataset). TrueNAS refuse le dataset racine d'un pool.
  3. Name : Archives, le nom que verront les utilisateurs dans \\srv-nas\Archives.
  4. Purpose : Default Share, l'objectif adapté à un partage de fichiers ordinaire. Les autres objectifs répondent à des cas précis :
PurposeUsage
Default SharePartage de fichiers général
Private Datasets ShareUn dataset personnel créé pour chaque utilisateur à sa connexion, avec un quota automatique : remplace les anciens partages de dossiers personnels
Multi-protocol ShareDossier aussi accédé en NFS ou par une application ; désactive certaines fonctions SMB
Time Machine ShareDestination de sauvegarde des Mac
Time Locked ShareLes fichiers passent en lecture seule par SMB après un délai de grâce (chapitre 10)
External ShareRedirige les clients vers un partage d'un autre serveur, comme un lien DFS
  1. Advanced Options : Access Based Share Enumeration masque les dossiers auxquels l'utilisateur n'a pas accès (il est toujours actif sur un dataset en ACL NFSv4) ; Hosts Allow limite les clients, par exemple 192.168.10.64/26 (les postes), 192.168.10.128/27 (l'entrepôt, d'où arrivent les scans) et 192.168.10.208/28 (l'administration) ; Export Read-Only interdit toute écriture.
  2. Save, puis accepter le démarrage du service SMB (ou System > Services, SMB, avec Start Automatically).

Régler l'ACL du dataset. Dans le menu du partage, Edit Filesystem ACL ouvre l'éditeur d'ACL NFSv4 du dataset. Pars du préréglage NFS4_RESTRICTED, puis ajoute trois entrées de type Group : SORBIER\dl_archives_m en Modify, SORBIER\dl_archives_l en Read, SORBIER\dl_archives_ct en Full Control, toutes avec l'héritage Inherit. Coche Apply permissions recursively, puis Save Access Control List. Ne modifie pas l'entrée builtin_users créée par TrueNAS ; laisse l'ACL du partage (Edit Share ACL) à sa valeur par défaut.

Connecter le lecteur sur les postes

Le partage se connecte comme n'importe quel partage Windows : par une préférence de stratégie de groupe Mappages de lecteurs, ciblée sur les groupes concernés (méthode détaillée dans le cours Windows Server), ou à la main :

powershell
New-PSDrive -Name "R" -PSProvider FileSystem -Root "\\srv-nas\Archives" -Persist
# Vérifier la version de SMB, la signature et le chiffrement de la session
Get-SmbConnection -ServerName srv-nas | Select-Object ServerName, ShareName, UserName, Dialect, Signed, Encrypted

La colonne Dialect doit afficher 3.1.1. Si Sorbier utilise un espace de noms DFS (\\ad.sorbier.example\Partages), on y ajoute un lien vers \\srv-nas\Archives : les utilisateurs gardent un chemin unique, quel que soit le serveur qui héberge les données.

Les versions précédentes

Sur TrueNAS 25.10, chaque partage SMB expose automatiquement les snapshots de son dataset comme des clichés instantanés Windows. Un utilisateur qui a écrasé un fichier fait un clic droit sur le fichier ou le dossier, Propriétés, onglet Versions précédentes, choisit une date et clique sur Restaurer ou Ouvrir. Il récupère son fichier sans ticket au support. Deux conditions : une tâche de snapshots périodiques sur le dataset (chapitre 9), et des droits de lecture sur le fichier.

Les utilisateurs ne peuvent pas supprimer ces versions depuis un client SMB : seul l'administrateur de TrueNAS supprime des snapshots, depuis l'interface. C'est l'un des piliers de la protection contre les rançongiciels (chapitre 10).

Auditer les accès

Dans les options avancées du partage, Enable Logging active l'audit SMB : TrueNAS enregistre les connexions, les ouvertures, les écritures, les renommages et les suppressions. La Watch List limite l'audit à certains groupes, l'Ignore List en exclut d'autres (par exemple le compte de sauvegarde, très bavard). Les événements se consultent dans System > Audit et partent vers le serveur de journaux de Sorbier, srv-journaux (192.168.10.180), par syslog chiffré, réglé dans System > Advanced Settings (widget Syslog). Un SIEM peut alors repérer une vague de renommages, signe d'un chiffrement en cours.

Dépanner un partage SMB

SymptômeCause probableVérification
La jonction échoue : contrôleur introuvableDNS public ou mauvais DNS sur TrueNASNetwork > Global Configuration : seuls les DNS de l'annuaire
Jonction refusée, erreur Kerberos ou d'horlogeÉcart d'heure supérieur à 5 minutesHeure du NAS et des contrôleurs, serveurs NTP
Les groupes du domaine n'apparaissent pas dans l'éditeur d'ACLCache pas encore chargéRebuild Directory Service Cache ; wbinfo -g
« Accès refusé » pour un utilisateur qui devrait avoir accèsIl n'est pas dans le bon groupe, ou son ticket est antérieur à son ajoutwhoami /groups sur le poste ; fermer et rouvrir la session pour obtenir un nouveau ticket
Le partage demande un mot de passe à un poste du domaineConnexion par l'adresse IP : Kerberos a besoin du nomUtiliser \\srv-nas, pas \\192.168.10.183
Le partage est invisible depuis un postePare-feu, ou Hosts Allow qui exclut le réseau du posteTest-NetConnection srv-nas -Port 445 ; liste Hosts Allow
L'onglet Versions précédentes est videAucune tâche de snapshots sur le datasetData Protection > Periodic Snapshot Tasks

Exercices

Exercice 1 sur 4 La jonction qui échoue Réussi À revoir

Chloé tente de joindre srv-nas au domaine et obtient une erreur indiquant que le domaine est introuvable. Voici la configuration réseau du NAS : Nameserver 1 1.1.1.1, Nameserver 2 192.168.10.177, Hostname srv-nas-archives-lyon.

  1. Relève deux erreurs.
  2. Corrige la configuration.
Voir la réponseMasquer la réponse de l'exercice 1
  1. Le DNS : le premier serveur interrogé est un DNS public, qui ne connaît ni la zone ad.sorbier.example ni ses enregistrements SRV ; TrueNAS ne trouve pas les contrôleurs. Le nom d'hôte : srv-nas-archives-lyon fait 21 caractères, au-delà des 15 caractères d'un nom NetBIOS et donc d'un compte d'ordinateur.
  2. Nameserver 1 192.168.10.177, Nameserver 2 192.168.10.181, aucun DNS public (les contrôleurs résolvent Internet grâce à leurs redirecteurs) ; Hostname srv-nas (7 caractères), identique dans la configuration Active Directory. Vérifier aussi l'heure avant de relancer la jonction.

Tu avais trouvé ?

Exercice 2 sur 4 La matrice du partage Litiges Réussi À revoir

Le service client (GG_Service_Client) doit déposer et modifier les photos des colis endommagés dans un nouveau partage Litiges ; la direction (GG_Direction) doit les consulter ; personne d'autre ne doit le voir.

  1. Donne les groupes de domaine local à créer et leurs membres.
  2. Donne les entrées de l'ACL NFSv4 du dataset.
  3. Quelle option du partage empêche les autres salariés de voir les dossiers ?
Voir la réponseMasquer la réponse de l'exercice 2
  1. DL_Litiges_M, avec pour membre GG_Service_Client ; DL_Litiges_L, avec pour membre GG_Direction. (Plus, si besoin, DL_Litiges_CT pour le service informatique.)
  2. À partir du préréglage NFS4_RESTRICTED : SORBIER\dl_litiges_m en Modify avec héritage, SORBIER\dl_litiges_l en Read avec héritage. Aucune entrée everyone@ donnant des droits.
  3. Access Based Share Enumeration (l'énumération basée sur l'accès), toujours active sur un dataset en ACL NFSv4 : un utilisateur sans droit de lecture ne voit pas les dossiers.

Tu avais trouvé ?

Exercice 3 sur 4 Le mot de passe demandé Réussi À revoir

Un commercial ouvre le partage par \\192.168.10.183\Archives : Windows lui demande un identifiant et un mot de passe, alors que \\srv-nas\Archives s'ouvre sans rien demander. Explique.

Voir la réponseMasquer la réponse de l'exercice 3

Avec le nom srv-nas, le poste demande au contrôleur un ticket Kerberos pour le service cifs/srv-nas.ad.sorbier.example et s'authentifie de façon transparente. Avec l'adresse IP, aucun ticket Kerberos ne correspond à ce « nom » : Windows tente NTLM, qui peut être restreint par la politique du domaine, et finit par demander des identifiants. Il faut utiliser le nom (ou un chemin DFS), jamais l'adresse.

Tu avais trouvé ?

Exercice 4 sur 4 Restaurer un fichier écrasé Réussi À revoir

Julie a enregistré par erreur un tableau vide par-dessus Rapprochement-octobre.xlsx dans \\srv-nas\Archives\Compta. Le dataset a des snapshots horaires. Décris ce qu'elle peut faire seule, et à quelle condition.

Voir la réponseMasquer la réponse de l'exercice 4

Clic droit sur le fichier, Propriétés, onglet Versions précédentes : elle choisit la version de l'heure précédant l'erreur, puis Ouvrir pour vérifier et Restaurer (ou Copier pour garder les deux versions). Condition : avoir le droit de lecture sur le fichier (et d'écriture pour restaurer en place) ; ici, elle ne peut modifier dans Archives que si son groupe a le droit Modify sur ce dossier, sinon elle copie la version dans un dossier où elle peut écrire, ou demande au support. Les versions apparaissent automatiquement parce que TrueNAS expose les snapshots du dataset comme clichés instantanés.

Tu avais trouvé ?

Chapitre terminé !

Fais les 4 exercices avant de passer à la suite : c'est en t'entraînant que tout se fixe.

chapitres
–
de série
–
du cours
–
Chapitre suivant : Partage NFS pour Linux et Proxmox VERevoir le sommaire du cours