Après avoir vu net use pour accéder aux partages réseau, il est temps de regarder l’autre côté de la porte.
Quelqu’un doit bien créer ces fameux :
\\serveur\compta
\\serveur\archives
\\serveur\commun
Et sous Windows, une commande historique continue à remplir cette mission avec une remarquable efficacité :
net share
Elle permet d’afficher, créer, modifier certains paramètres et supprimer des ressources partagées par la machine locale.
net useconnecte le client à un partage.
net sharepublie le partage côté serveur.
L’un frappe à la porte.
L’autre décide quelle porte existe et qui possède théoriquement le droit de l’ouvrir.
Qu’est-ce qu’un partage Windows ?
Un partage permet d’exposer une ressource locale à travers le réseau, généralement avec le protocole SMB — Server Message Block.
Supposons qu’un serveur possède localement :
D:\Services\Documentation
On peut publier ce répertoire sous le nom :
Docs
Les clients y accéderont alors avec :
\\serveur\Docs
Le chemin réseau n’a donc aucune obligation de ressembler au chemin physique.
| Côté serveur | Côté réseau |
|---|---|
D:\Services\Documentation |
\\serveur\Docs |
Le client sait qu’il existe un partage nommé Docs.
Il n’a pas besoin de savoir que l’administrateur l’a enterré trois répertoires plus bas sur le disque D: après une migration de 2014.
Le chemin UNC
Une ressource SMB est généralement désignée avec un chemin UNC — Universal Naming Convention :
\\nom_du_serveur\nom_du_partage
Par exemple :
\\FS01\Docs
ou avec un nom DNS complet :
\\fs01.example.lan\Docs
Le nom après le serveur est le nom du partage, pas nécessairement le nom réel du dossier.
net share travaille sur la machine locale
Lorsqu’on exécute :
net share
on examine les partages publiés par l’ordinateur sur lequel la commande est exécutée.
Ce n’est pas l’équivalent de :
net use
qui affiche les ressources réseau auxquelles l’utilisateur est connecté.
| Commande | Question |
|---|---|
net use |
À quels partages distants suis-je connecté ? |
net share |
Quels partages cette machine publie-t-elle ? |
Deux commandes presque jumelles.
L’une regarde dehors.
L’autre regarde ce que vous avez laissé ouvert.
Privilèges nécessaires
Pour créer, modifier ou supprimer des partages système, ouvrez généralement une Invite de commandes ou PowerShell avec des privilèges administrateur.
Sinon, Windows peut répondre avec une variante de :
System error 5 has occurred.
Access is denied.
Ce qui constitue la manière historique de Windows de dire :
« Très belle commande. Vous n’avez absolument pas le droit de l’exécuter. »
Lister tous les partages
La commande :
net share
affiche les ressources partagées par la machine.
Une sortie peut ressembler à :
Share name Resource Remark
-------------------------------------------------------------------------------
C$ C:\ Default share
ADMIN$ C:\Windows Remote Admin
IPC$ Remote IPC
Docs D:\Services\Documentation Documentation
The command completed successfully.
Afficher les informations d’un partage
Pour examiner uniquement :
Docs
utilisez :
net share Docs
La commande affiche notamment le chemin local, le commentaire et certains paramètres du partage.
Créer un dossier à partager
Commençons par créer un véritable répertoire :
mkdir C:\Shares\Docs
Puis publions-le :
net share Docs=C:\Shares\Docs
Le partage devient accessible avec :
\\NOM-DU-PC\Docs
ou, si le DNS est correctement configuré :
\\serveur.example.lan\Docs
Chemins contenant des espaces
Lorsque le chemin contient des espaces, utilisez des guillemets :
net share Docs="C:\Données de l'entreprise\Documentation"
Les guillemets protègent le chemin contre cette vieille tradition des interpréteurs de commandes consistant à considérer l’espace comme le moment idéal pour changer complètement de sujet.
Ajouter une description
L’option :
/remark:
permet d’ajouter un commentaire :
net share Docs=C:\Shares\Docs /remark:"Documentation interne"
Cette description apparaît notamment dans :
net share
et dans les différents outils d’administration Windows.
Utiliser une description comme :
Documentation interne - Production
est généralement plus utile que :
Nouveau partage 2 FINAL VRAI
Limiter le nombre d’utilisateurs simultanés
L’option :
/users:N
définit un nombre maximal d’utilisateurs simultanés.
Par exemple :
net share Docs=C:\Shares\Docs /users:5
Pour autoriser le maximum supporté par le système :
net share Docs=C:\Shares\Docs /unlimited
Dans la plupart des serveurs de fichiers modernes, limiter arbitrairement le partage à cinq utilisateurs n’est pas une exigence particulièrement fréquente.
Mais l’option existe, notamment pour les environnements qui souhaitent recréer artificiellement l’expérience d’une licence logicielle de 1997.
Permissions de partage avec /grant
L’option :
/grant:
permet d’accorder des droits de partage au moment de la création.
Trois niveaux sont proposés :
| Droit | Principe |
|---|---|
READ |
Lire le contenu via le partage |
CHANGE |
Lire, créer, modifier et supprimer selon les droits du système de fichiers |
FULL |
Contrôle complet au niveau du partage |
Accès en lecture
net share Docs=C:\Shares\Docs /grant:"CONTOSO\Docs-Read",READ
Plusieurs groupes
net share Docs=C:\Shares\Docs /grant:"CONTOSO\Docs-Read",READ /grant:"CONTOSO\Docs-Admins",FULL
L’option /grant peut donc être répétée afin d’attribuer différents droits à plusieurs utilisateurs ou groupes.
En entreprise, accordez de préférence les permissions à des groupes plutôt qu’à une collection artisanale de comptes individuels.
Le jour où Alice quitte le service comptabilité, retirer Alice d’un groupe est légèrement plus agréable que rechercher son nom dans vingt-sept partages.
Attention : permission de partage ≠ permission NTFS
C’est probablement la notion la plus importante de tout l’article.
Lorsqu’un dossier NTFS est partagé, deux ensembles de permissions peuvent intervenir :
- les permissions du partage SMB ;
- les permissions du système de fichiers NTFS.
Un utilisateur accédant au dossier par le réseau doit être autorisé par les deux couches.
Par exemple :
| Partage SMB | NTFS | Résultat pratique |
|---|---|---|
| Lecture | Modification | Lecture seulement via le réseau |
| Contrôle total | Lecture | Lecture seulement |
| Modification | Modification | Modification |
| Contrôle total | Contrôle total | Contrôle total |
En pratique, l’accès réseau ne peut pas être plus permissif que ce qu’autorisent conjointement les ACL du partage et celles du système de fichiers.
Mettre FULL sur le partage ne contourne donc pas magiquement les permissions NTFS.
Windows avait déjà suffisamment de problèmes de sécurité sans ajouter cette fonctionnalité.
Gérer les permissions NTFS avec icacls
net share gère les permissions du partage.
Pour les ACL du système de fichiers, on peut utiliser :
icacls
Par exemple :
icacls "C:\Shares\Docs"
affiche les permissions du dossier.
Accorder lecture et exécution
icacls "C:\Shares\Docs" /grant "CONTOSO\Docs-Read:(OI)(CI)RX"
Accorder modification
icacls "C:\Shares\Docs" /grant "CONTOSO\Docs-Modify:(OI)(CI)M"
Ici :
OIsignifie Object Inherit, donc héritage par les fichiers ;CIsignifie Container Inherit, donc héritage par les sous-dossiers ;RXcorrespond notamment à lecture et exécution ;Mcorrespond à modification.
Les ACL Windows mériteraient évidemment leur propre article.
Principalement parce que réussir à afficher une permission peut nécessiter davantage de parenthèses que certaines fonctions mathématiques.
Quelle stratégie de permissions adopter ?
Deux philosophies sont souvent rencontrées.
Permissions restrictives aux deux niveaux
On configure précisément les ACL SMB et NTFS.
Avantage :
- deux couches explicites de contrôle.
Inconvénient :
- il faut diagnostiquer les deux lorsque quelqu’un n’a plus accès à son fichier Excel.
Partage relativement permissif, sécurité principalement dans NTFS
Dans certaines architectures, le partage est volontairement configuré avec des droits relativement larges et la finesse des autorisations est essentiellement gérée dans NTFS.
Cela centralise une grande partie de la logique d’accès dans les ACL du système de fichiers.
Mais cela doit être une décision consciente, pas le résultat de :
« J’ai mis Everyone Full Control et maintenant ça marche. »
La capacité à faire disparaître une erreur « Access denied » ne constitue pas à elle seule une politique de sécurité.
Tester le partage depuis un autre poste
Une fois créé :
net share Docs=C:\Shares\Docs
un client peut essayer :
\\serveur\Docs
dans l’Explorateur Windows.
Ou avec :
net use Z: \\serveur\Docs
Nous retrouvons ainsi la relation naturelle entre nos deux commandes :
Serveur :
net share
Client :
net use
Supprimer un partage
Pour arrêter de publier :
Docs
utilisez :
net share Docs /delete
Cette commande ne supprime pas le dossier physique.
Après :
net share Docs /delete
ce dossier existe toujours :
C:\Shares\Docs
Seul l’accès SMB :
\\serveur\Docs
disparaît.
Supprimer le partage retire la porte. Cela ne démolit pas la pièce.
Attention aux utilisateurs connectés
Si des utilisateurs travaillent actuellement sur des fichiers du partage et que vous exécutez :
net share Docs /delete
leur accès peut être interrompu.
Il est donc préférable, sur un serveur de production, de vérifier les sessions et les fichiers ouverts avant de supprimer brutalement une ressource utilisée.
PowerShell fournit notamment :
Get-SmbSession
et :
Get-SmbOpenFile
Supprimer un partage en production sans regarder qui travaille dessus revient un peu à démonter la porte d’un bureau pendant une réunion.
Techniquement faisable.
Socialement visible.
Les partages dont le nom termine par $
Un nom de partage terminé par :
$
est traditionnellement considéré comme caché lors de certaines opérations de parcours du réseau.
Par exemple :
net share Archives$=D:\Archives
Le partage peut être directement joint avec :
\\serveur\Archives$
sous réserve des permissions appropriées.
Un partage caché n’est pas un partage sécurisé.
Le caractère $ évite essentiellement son affichage dans certaines listes de navigation.
Une personne connaissant son nom peut toujours tenter de s’y connecter.
Mettre un dollar à la fin d’un nom n’est donc pas l’équivalent réseau d’une cape d’invisibilité militaire.
Les partages administratifs
Windows crée, selon son édition et sa configuration, plusieurs ressources particulières destinées notamment à l’administration distante.
C$
\\serveur\C$
correspond à la racine du volume C: lorsqu’un partage administratif de ce type est actif.
On peut également rencontrer :
D$
E$
F$
pour d’autres volumes.
ADMIN$
ADMIN$ pointe généralement vers le répertoire système Windows et sert notamment à certains mécanismes d’administration distante.
IPC$
IPC$ est différent.
Ce n’est pas un dossier où l’administrateur range ses fichiers secrets.
Il s’agit d’une ressource particulière utilisée notamment pour les communications interprocessus et les named pipes.
Elle participe à différents mécanismes de communication réseau Windows.
La supprimer parce qu’elle « semble vide » serait donc une excellente démonstration du principe suivant :
Un élément incompris n’est pas nécessairement inutile.
Ne supprimez pas les partages administratifs par réflexe
On trouve parfois des guides de durcissement proposant de désactiver systématiquement :
C$
ADMIN$
Il existe des scénarios où cette décision est voulue.
Mais ces ressources peuvent être utilisées par :
- des outils d’administration distante ;
- des solutions de déploiement ;
- des logiciels de sauvegarde ;
- des mécanismes de gestion ;
- certains produits de supervision.
Ne les désactivez donc pas simplement parce qu’un scanner vous a appris leur existence.
Un bon durcissement réduit la surface d’attaque.
Un mauvais durcissement réduit surtout le nombre de services qui fonctionnent lundi matin.
Le service Server : LanmanServer
Le partage SMB côté Windows repose notamment sur le service :
LanmanServer
Son nom affiché est généralement :
Server
Pour vérifier son état avec PowerShell :
Get-Service LanmanServer
Ou avec CMD :
sc query LanmanServer
Si ce service est arrêté, les fonctions de partage de fichiers, imprimantes et named pipes fournies par le serveur SMB deviennent indisponibles.
Un partage correctement configuré avec un serveur SMB arrêté possède approximativement la même utilité qu’un restaurant parfaitement aménagé dont personne ne déverrouille la porte.
Le pare-feu : créer un partage ne suffit pas toujours
Un partage peut exister parfaitement et rester inaccessible depuis le réseau si le pare-feu bloque SMB.
SMB moderne utilise principalement :
TCP 445
Sur les anciennes configurations utilisant NetBIOS, on peut également rencontrer les ports 137 à 139.
Mais avec SMB2 et les versions suivantes, TCP 445 est le port central.
Sur Windows 11 24H2 et Windows Server 2025, les règles de pare-feu SMB intégrées ont d’ailleurs été durcies pour ne plus ouvrir automatiquement les anciens ports NetBIOS dans les scénarios SMB modernes.
Tester le port depuis un client
PowerShell permet :
Test-NetConnection serveur -Port 445
Si vous obtenez :
TcpTestSucceeded : True
le port répond.
Si vous obtenez :
TcpTestSucceeded : False
il est inutile de commencer immédiatement à modifier les permissions NTFS.
Le client n’arrive même pas encore jusqu’à la porte.
SMB1 n’est pas nécessaire pour partager un dossier moderne
Un partage créé avec :
net share Docs=C:\Shares\Docs
n’exige pas SMB1.
Les Windows modernes utilisent SMB2 et SMB3.
Réactiver SMB1 parce qu’un partage moderne ne fonctionne pas est donc généralement une mauvaise piste, sauf si vous devez réellement communiquer avec un équipement ancien qui ne sait rien faire d’autre.
Dans ce cas, la question suivante devrait probablement être :
« Pourquoi cet équipement vit-il encore sur le même réseau que le reste de l’entreprise ? »
Le cache hors connexion
net share possède aussi l’option :
/cache:
qui contrôle certains comportements liés à la mise en cache côté client.
Les valeurs historiques comprennent notamment :
| Option | Principe |
|---|---|
/cache:manual |
Autorise la mise en cache manuelle de documents et programmes |
/cache:documents |
Mise en cache automatique des documents |
/cache:programs |
Mise en cache automatique de documents et programmes |
/cache:BranchCache |
Utilisation avec BranchCache |
/cache:none |
Désactive la mise en cache hors connexion pour le partage |
Par exemple :
net share Docs=C:\Shares\Docs /cache:none
Ces options sont surtout pertinentes dans des environnements où la fonction Offline Files ou BranchCache est réellement utilisée.
Ne modifiez pas la stratégie de cache au hasard dans l’espoir que cela « accélère le réseau ».
Le mot cache exerce depuis longtemps un pouvoir psychologique excessif sur les informaticiens.
Modifier certains paramètres d’un partage existant
net share sait aussi modifier certains paramètres.
Par exemple :
net share Docs /remark:"Documentation technique"
ou :
net share Docs /users:20
ou :
net share Docs /cache:none
Pour une administration plus fine des ACL SMB d’un partage déjà créé, les commandes PowerShell modernes sont généralement plus pratiques.
PowerShell : la version moderne
net share reste rapide et parfaitement utilisable.
Mais Windows propose aujourd’hui le module PowerShell SmbShare.
Lister les partages
Get-SmbShare
Créer un partage
New-SmbShare -Name "Docs" -Path "C:\Shares\Docs"
Créer avec permissions
New-SmbShare `
-Name "Docs" `
-Path "C:\Shares\Docs" `
-ReadAccess "CONTOSO\Docs-Read" `
-FullAccess "CONTOSO\Docs-Admins"
PowerShell permet de fournir directement plusieurs ensembles :
-ReadAccess;-ChangeAccess;-FullAccess;-NoAccess.
Afficher les ACL d’un partage
Get-SmbShareAccess -Name "Docs"
Une sortie peut ressembler conceptuellement à :
Name AccountName AccessControlType AccessRight
---- ----------- ----------------- -----------
Docs CONTOSO\Docs-Read Allow Read
Docs CONTOSO\Docs-Admins Allow Full
C’est généralement plus lisible que de deviner les permissions à partir d’une série de boîtes de dialogue ouvertes les unes sur les autres.
Ajouter une permission à un partage existant
Grant-SmbShareAccess `
-Name "Docs" `
-AccountName "CONTOSO\Docs-Modify" `
-AccessRight Change
Avec :
-Force
on peut éviter la demande de confirmation dans les scripts maîtrisés :
Grant-SmbShareAccess -Name "Docs" -AccountName "CONTOSO\Docs-Modify" -AccessRight Change -Force
Retirer une permission
Revoke-SmbShareAccess `
-Name "Docs" `
-AccountName "CONTOSO\Docs-Read"
Cette commande retire les ACE d’autorisation correspondantes pour ce compte sur le partage.
Bloquer explicitement un compte
PowerShell permet également d’ajouter une entrée de refus :
Block-SmbShareAccess `
-Name "Docs" `
-AccountName "CONTOSO\UtilisateurInterdit"
Les règles de refus doivent être utilisées avec discernement.
Les ACL Windows sont déjà capables d’obtenir des résultats remarquablement complexes uniquement avec des autorisations et des groupes imbriqués.
Il n’est pas toujours nécessaire d’y ajouter une mine antipersonnel.
Supprimer un partage avec PowerShell
Remove-SmbShare -Name "Docs"
Sans confirmation :
Remove-SmbShare -Name "Docs" -Force
Comme avec net share ... /delete, cela supprime le partage, pas les fichiers contenus dans son répertoire.
Chiffrement SMB
Les versions modernes de SMB peuvent chiffrer le trafic d’un partage.
PowerShell permet par exemple :
Set-SmbShare -Name "Docs" -EncryptData $true
Ou directement lors de la création :
New-SmbShare `
-Name "Confidentiel" `
-Path "D:\Confidentiel" `
-EncryptData $true
Le chiffrement SMB protège le trafic entre client et serveur compatible.
Il ne remplace évidemment pas :
- les permissions ;
- la sécurité des comptes ;
- BitLocker sur les disques lorsque nécessaire ;
- les sauvegardes ;
- ni le fait d’éviter que le mot de passe du directeur soit
Directeur2026!.
Access-Based Enumeration : ne montrer que ce qui est accessible
Un partage peut contenir :
Finance
RH
Direction
Production
Avec le comportement classique, un utilisateur peut éventuellement voir les noms de certains dossiers même s’il ne possède pas les droits pour les ouvrir.
PowerShell permet d’activer :
AccessBased
avec :
Set-SmbShare -Name "Services" -FolderEnumerationMode AccessBased
Avec Access-Based Enumeration — ABE, SMB masque les fichiers et répertoires auxquels l’utilisateur n’a pas accès.
C’est utile dans les partages regroupant plusieurs services.
Alice de la comptabilité n’a pas nécessairement besoin de constater quotidiennement l’existence du répertoire :
Direction\Plan_social_confidentiel
même si elle reçoit ensuite un beau message « Access denied ».
Créer un partage moderne complet avec PowerShell
Un exemple plus réaliste :
New-SmbShare `
-Name "Docs" `
-Path "D:\Shares\Docs" `
-Description "Documentation interne" `
-ReadAccess "CONTOSO\Docs-Read" `
-ChangeAccess "CONTOSO\Docs-Modify" `
-FullAccess "CONTOSO\Docs-Admins" `
-FolderEnumerationMode AccessBased `
-CachingMode None
On peut ensuite activer le chiffrement :
Set-SmbShare -Name "Docs" -EncryptData $true -Force
C’est plus long que :
net share Docs=D:\Shares\Docs
mais nettement plus explicite pour une configuration de production.
Comme souvent, plus on demande à Windows de documenter précisément nos intentions, plus il exige de caractères en échange.
Créer un partage à distance avec PowerShell
Les cmdlets SMB peuvent également travailler avec une CimSession.
Par exemple :
$session = New-CimSession -ComputerName FS01
New-SmbShare `
-CimSession $session `
-Name "Docs" `
-Path "D:\Shares\Docs" `
-ReadAccess "CONTOSO\Docs-Read"
Cela permet d’administrer un serveur sans ouvrir physiquement une session dessus.
Un avantage important lorsque le serveur se trouve dans un datacenter, un autre bâtiment ou simplement à quatre mètres de votre chaise mais que vous refusez d’abandonner votre café.
Partage caché personnalisé
Avec net share :
net share Maintenance$=D:\Maintenance /grant:"CONTOSO\IT",FULL
Le partage se joint ensuite avec :
\\serveur\Maintenance$
Le dollar réduit sa visibilité dans certains mécanismes d’énumération.
Les permissions, elles, restent indispensables.
Diagnostiquer un partage inaccessible
Un utilisateur annonce :
« Le partage ne marche pas. »
Cette phrase contient environ trois pour cent des informations nécessaires au diagnostic.
1. Le partage existe-t-il ?
Sur le serveur :
net share
ou :
Get-SmbShare
2. Le chemin local existe-t-il ?
dir C:\Shares\Docs
3. Le service SMB fonctionne-t-il ?
Get-Service LanmanServer
4. Le client atteint-il TCP 445 ?
Depuis le client :
Test-NetConnection FS01 -Port 445
5. Les permissions du partage sont-elles correctes ?
Get-SmbShareAccess -Name Docs
6. Les permissions NTFS sont-elles correctes ?
icacls C:\Shares\Docs
7. Quelle identité le client utilise-t-il réellement ?
Sur le client :
net use
ou :
Get-SmbConnection
Si une ancienne connexion existe avec un autre compte, vous pouvez notamment rencontrer la fameuse erreur 1219 étudiée avec net use.
Les utilisateurs voient le partage mais pas les fichiers
C’est généralement une bonne indication que :
- le réseau fonctionne ;
- SMB fonctionne ;
- le partage existe ;
- mais les permissions du contenu nécessitent une enquête.
Vérifiez :
Get-SmbShareAccess -Name Docs
puis :
icacls C:\Shares\Docs
Et surtout les groupes auxquels appartient réellement l’utilisateur.
Une permission accordée au groupe Compta-Lecture est parfaitement inutile à Jean si quelqu’un a simplement oublié d’ajouter Jean au groupe.
Le système d’exploitation n’est pas assez intelligent pour comprendre l’organigramme affiché près de la machine à café.
Le partage existe localement mais personne ne le voit sur le réseau
Vérifiez notamment :
- le profil réseau Windows ;
- les règles du pare-feu ;
- le service
LanmanServer; - la résolution DNS ;
- la connectivité TCP 445 ;
- les politiques de sécurité SMB.
Ne confondez pas non plus :
« Le partage n’apparaît pas dans Réseau. »
et :
« Le partage n’est pas accessible. »
Un partage peut ne pas être découvert graphiquement et rester parfaitement accessible avec :
\\serveur\Docs
La découverte réseau et SMB ne sont pas exactement le même mécanisme.
Un partage n’est pas une sauvegarde
Cette précision paraît triviale jusqu’au jour où elle ne l’est plus.
Créer :
\\serveur\Archives
ne transforme pas automatiquement le contenu en sauvegarde.
Si un ransomware possède des droits d’écriture sur ce partage, il peut éventuellement chiffrer les fichiers aussi consciencieusement que ceux du poste local.
Un partage fournit un accès réseau.
Une sauvegarde suppose notamment :
- des copies indépendantes ;
- des politiques de rétention ;
- des contrôles d’accès adaptés ;
- idéalement une certaine immutabilité ou isolation ;
- et surtout des tests de restauration.
Un dossier nommé BACKUP n’acquiert aucune propriété particulière grâce aux majuscules.
Quelques exemples complets
Partage simple
mkdir D:\Shares\Docs
net share Docs=D:\Shares\Docs
Partage avec commentaire
net share Docs=D:\Shares\Docs /remark:"Documentation interne"
Partage lecture seule pour un groupe
net share Docs=D:\Shares\Docs /grant:"CONTOSO\Docs-Read",READ
Lecture pour les utilisateurs, contrôle total pour les administrateurs
net share Docs=D:\Shares\Docs /grant:"CONTOSO\Docs-Read",READ /grant:"CONTOSO\Docs-Admins",FULL
Limiter à dix utilisateurs
net share Docs=D:\Shares\Docs /users:10
Désactiver le cache hors connexion
net share Docs=D:\Shares\Docs /cache:none
Partage caché
net share Maintenance$=D:\Maintenance
Afficher le partage
net share Docs
Supprimer le partage
net share Docs /delete
net share ou PowerShell ?
| Besoin | Outil conseillé |
|---|---|
| Voir rapidement les partages dans CMD | net share |
| Créer rapidement un partage simple | net share |
| Automatisation PowerShell | New-SmbShare |
| Lire les ACL SMB | Get-SmbShareAccess |
| Modifier proprement les droits | Grant-SmbShareAccess / Revoke-SmbShareAccess |
| Activer le chiffrement SMB | Set-SmbShare |
| Activer Access-Based Enumeration | Set-SmbShare |
| Gérer à distance | PowerShell + CimSession |
net share reste excellent pour les opérations courantes.
PowerShell devient préférable lorsque la configuration doit être :
- plus détaillée ;
- automatisée ;
- administrée à distance ;
- reproductible ;
- ou exploitée comme des objets plutôt que comme du texte affiché dans une console.
Les commandes à retenir
| Commande | Fonction |
|---|---|
net share |
Lister les partages locaux |
net share Docs |
Afficher les informations du partage Docs |
net share Docs=C:\Shares\Docs |
Créer un partage |
/grant:compte,READ |
Accorder la lecture au niveau du partage |
/grant:compte,CHANGE |
Accorder la modification au niveau du partage |
/grant:compte,FULL |
Accorder le contrôle total au niveau du partage |
/users:N |
Limiter les utilisateurs simultanés |
/unlimited |
Utiliser la limite maximale disponible |
/remark:"texte" |
Ajouter une description |
/cache:none |
Désactiver la mise en cache hors connexion du partage |
net share Docs /delete |
Supprimer le partage sans supprimer son dossier |
Get-SmbShare |
Lister les partages avec PowerShell |
Get-SmbShareAccess |
Afficher les permissions SMB |
New-SmbShare |
Créer un partage moderne avec PowerShell |
Set-SmbShare |
Modifier les propriétés avancées d’un partage |
Remove-SmbShare |
Supprimer un partage |
Une méthode propre pour créer un partage en production
Une séquence raisonnable ressemble à ceci :
1. Créer le répertoire
mkdir D:\Shares\Docs
2. Définir les ACL NTFS
Par exemple :
icacls "D:\Shares\Docs" /grant "CONTOSO\Docs-Read:(OI)(CI)RX"
icacls "D:\Shares\Docs" /grant "CONTOSO\Docs-Modify:(OI)(CI)M"
3. Créer le partage
net share Docs=D:\Shares\Docs /grant:"CONTOSO\Docs-Read",READ /grant:"CONTOSO\Docs-Modify",CHANGE /remark:"Documentation interne"
4. Vérifier
net share Docs
Et avec PowerShell :
Get-SmbShareAccess -Name Docs
5. Tester le réseau
Depuis un client :
Test-NetConnection FS01 -Port 445
6. Tester avec un utilisateur réel
\\FS01\Docs
Un partage qui fonctionne avec Domain Admins n’est pas nécessairement correctement configuré.
Domain Admins possède cette étrange capacité à faire disparaître les problèmes de permissions jusqu’à ce qu’un véritable utilisateur arrive.
Bonnes pratiques
- Utilisez des groupes de sécurité plutôt que des comptes individuels.
- Définissez clairement les permissions SMB et NTFS.
- Appliquez le principe du moindre privilège.
- Évitez Everyone:Full simplement pour régler une erreur.
- Utilisez des noms de partage explicites.
- Ajoutez une description utile.
- Ne considérez pas le caractère $ comme une fonction de sécurité.
- Ne modifiez pas les partages administratifs sans comprendre leurs usages.
- N’exposez jamais SMB directement à Internet sur TCP 445.
- Laissez SMB1 désactivé sauf nécessité réellement documentée.
- Vérifiez les sessions avant de supprimer un partage utilisé.
- Pour les configurations avancées, préférez les cmdlets SmbShare de PowerShell.
Conclusion : partager, oui, mais avec des ACL
net share est l’une de ces commandes Windows anciennes dont la carrière refuse obstinément de se terminer.
Sa mission reste pourtant parfaitement actuelle :
- voir ce que la machine partage ;
- publier un dossier ;
- lui donner un nom réseau ;
- définir certaines autorisations ;
- ajouter une description ;
- puis supprimer le partage lorsque celui-ci n’est plus nécessaire.
Mais créer un partage ne consiste pas simplement à taper :
net share Truc=C:\Truc
et à rentrer chez soi.
Un partage correctement administré suppose de comprendre :
le chemin local,
le nom SMB,
les permissions du partage,
les ACL NTFS,
l’identité des utilisateurs,
le service SMB,
et le pare-feu.
La bonne nouvelle est que lorsque toutes ces couches sont correctement configurées, le fonctionnement devient presque invisible.
Un utilisateur ouvre :
\\FS01\Docs
et trouve ses fichiers.
Il ne voit pas les ACL, les sessions SMB, TCP 445, Kerberos, les groupes Active Directory ou les heures passées à organiser le serveur.
C’est généralement le signe que l’administrateur a bien travaillé.
Et si quelqu’un vous demande pourquoi il ne suffit pas de mettre :
Everyone : Full Control
partout, vous pouvez répondre calmement :
« Parce que je tiens encore vaguement à mon emploi. »
