Préparer vos PC Windows pour un inventaire sans agent
Rendez vos PC Windows lisibles par NetBlade sans rien installer : compte admin, WMI, SMB, pare-feu, UAC à distance, script d'activation et PC pilote.
NetBlade lit un PC Windows par le réseau, avec les interfaces de gestion propres à Windows, et n’y installe rien. En contrepartie, chaque PC doit accepter une connexion administrateur depuis le PC où tourne NetBlade et laisser passer ce trafic dans son pare-feu. Cet article explique précisément ce qu’il faut, ce qui change entre un domaine et un groupe de travail, ce que modifie le script d’activation de NetBlade et comment l’annuler, et comment valider le tout sur un seul PC avant de toucher aux autres.
Avant de commencer
- NetBlade installé et un premier scan effectué, pour que les PC figurent dans Appareils (Bien démarrer).
- Un compte administrateur pour les PC que vous voulez lire : un compte de domaine administrateur local, ou un compte administrateur local sur chaque PC.
- Un accès physique ou à distance à un PC qui servira de pilote, sur lequel vous pouvez exécuter quelque chose en tant qu’administrateur.
- L’adresse IP du PC qui exécute NetBlade. Elle ne doit pas changer : si elle vient du DHCP, créez-lui une réservation sur votre serveur DHCP (l’étape 7 explique pourquoi).
1. Savoir ce qu’utilise une lecture
La lecture d’un PC Windows (Analyse approfondie sur la fiche d’un appareil, ou Inventaire approfondi sur la liste des appareils) passe par la gestion Windows, et NetBlade demande aussi que le partage de fichiers lui soit ouvert :
| Quoi | Port | À quoi il sert |
|---|---|---|
| Gestion Windows (WMI) | TCP 135 plus les ports RPC dynamiques du service WMI | La lecture elle-même : matériel, système, mises à jour, services, défenses |
| Partage de fichiers (SMB) | TCP 445 | Ouvert en même temps que WMI ; c’est aussi la porte d’entrée de PsExec |
| WinRM | TCP 5985 | Uniquement les actions à distance, pas la lecture |
Il faut aussi un identifiant administrateur Windows pour ce PC. BitLocker et le TPM, en particulier, ne peuvent être lus que par un administrateur ; sans lui, la fiche indique qu’un administrateur est nécessaire.
Avec cela, NetBlade lit le nom, le domaine, le système d’exploitation et sa build, le fabricant, le modèle et le numéro de série, le processeur, la mémoire, l’utilisateur connecté, les lecteurs et les disques physiques, les cartes réseau, les écrans, les imprimantes, la batterie, les périphériques en défaut et l’USB, les mises à jour installées, les services à démarrage automatique, les programmes qui démarrent avec Windows, les fonctionnalités facultatives, les profils, les administrateurs et comptes locaux, les sessions ouvertes, les dossiers partagés et qui peut y écrire, les programmes installés, ainsi que les défenses : antivirus, pare-feu par profil, BitLocker, TPM, démarrage sécurisé, UAC, Bureau à distance, SMBv1 et redémarrage en attente.
Remarque : Le PC qui exécute NetBlade se lit lui-même sans identifiant ni préparation.
2. Domaine ou groupe de travail : ce qui change
| Dans un domaine | Dans un groupe de travail | |
|---|---|---|
| Compte | Un compte de domaine administrateur local des PC | Un compte administrateur local sur chaque PC |
| UAC à distance | Aucun souci pour les comptes de domaine | À assouplir pour les comptes locaux (étape 5) |
| WinRM pour les actions à distance | Kerberos, rien de plus sur ce PC | Ce PC doit inscrire la cible dans TrustedHosts |
Dans un domaine, il y a une commodité de plus : quand aucun identifiant enregistré ne permet d’entrer, NetBlade essaie le compte Windows sous lequel il tourne. Si vous ouvrez la session du PC NetBlade avec un compte de domaine administrateur local des PC, ces PC peuvent être lus sans aucun identifiant enregistré. Pour une configuration propre, enregistrez tout de même un compte dédié (voir Bien gérer les identifiants).
3. Choisir et enregistrer le compte
- Décidez quel compte NetBlade utilisera. Dans un domaine, le choix habituel est un compte informatique dédié, membre du groupe local Administrateurs des postes de travail. Dans un groupe de travail, le compte administrateur local de chaque PC.
- Dans NetBlade, ouvrez Identifiants et appuyez sur Ajouter….
- Réglez Protocole sur Windows (WMI) et saisissez le Nom d’utilisateur sous la forme indiquée par l’application :
DOMAIN\userpour un compte de domaine, ou.\Administratorpour un compte local. - Saisissez le mot de passe, choisissez la Portée (pour l’instant, Un site ou Un appareil pour le PC pilote) et ajoutez un libellé.
- Appuyez sur Enregistrer.
4. Essayer sur un PC pilote
Ne préparez pas vingt PC pour découvrir ensuite que le compte était le mauvais. Choisissez-en un.
- Sur la page Identifiants, saisissez l’adresse du PC pilote dans Machine sur laquelle tester et appuyez sur Tester. La colonne DERNIER TEST indique « Fonctionne » ou « Échec ».
- Ouvrez la fiche du PC pilote depuis Appareils et appuyez sur Analyse approfondie.
- Regardez l’état de lecture juste sous le nom de l’appareil. « Lu le … via … » signifie que cela a fonctionné. « Jamais lu » ou « Échec de la lecture » ouvre un panneau avec la raison et ce qu’il faut faire.
Si cela a fonctionné, passez directement à l’étape 7. Si le panneau indique que le pare-feu bloque la lecture, par exemple « C’est un PC Windows, mais son pare-feu bloque la lecture : il ne répond que sur les ports … », continuez avec l’étape 5.
5. Ouvrir le PC avec le script d’activation
Quand un PC Windows ne peut pas être lu, sa fiche propose un script qui ouvre exactement ce dont NetBlade a besoin, et uniquement vers le PC qui exécute NetBlade.
- Sur la fiche du PC pilote, cliquez sur l’état de lecture (Jamais lu ou Échec de la lecture).
- Appuyez sur Télécharger le script d’activation et enregistrez le fichier.
- Dans le même panneau, enregistrez aussi dès maintenant le Script pour annuler les modifications, et gardez-le avec l’autre.
- Copiez le script d’activation sur le PC pilote et double-cliquez dessus. C’est un fichier
.cmd: il demande lui-même les droits administrateur et indique ce qu’il fait, ligne par ligne. - De retour dans NetBlade, appuyez sur Relire maintenant.
Attention : Les boutons d’activation et d’annulation n’apparaissent sur la fiche que tant que le PC n’a pas été lu avec succès. Dès que la lecture fonctionne, ils disparaissent : enregistrez donc le script d’annulation en même temps que le script d’activation.
Ce que le script modifie sur ce PC :
- Il ajoute des règles de pare-feu, autorisées uniquement depuis l’adresse IPv4 du PC NetBlade, nommées
NetBlade - WMI (135),NetBlade - WMI (RPC),NetBlade - Services (RPC),NetBlade - SMB (445)etNetBlade - WinRM (5985). La règle Services ouvre la gestion des services à distance, pour que PsExec démarre immédiatement au lieu d’attendre. - Il règle le service WMI en démarrage automatique et le démarre.
- Il active WinRM avec
Enable-PSRemoting -Force -SkipNetworkProfileCheck, pour les actions à distance. - Uniquement si le PC n’est pas dans un domaine, il règle
LocalAccountTokenFilterPolicysur 1 (l’étape 6 explique pourquoi).
L’exécuter deux fois est sans danger : il supprime d’abord ses propres règles, et vous n’en avez donc qu’un seul jeu.
6. Comprendre l’UAC à distance et LocalAccountTokenFilterPolicy
Par défaut, quand un administrateur local se connecte à un PC par le réseau, Windows retire les droits d’administrateur de cette connexion. C’est la restriction à distance du Contrôle de compte d’utilisateur. Le résultat est déroutant : les ports sont ouverts, le mot de passe est bon, et la lecture est quand même refusée avec « WMI : accès refusé (0x80070005) ».
La valeur de registre LocalAccountTokenFilterPolicy, réglée sur 1 sous HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System, lève cette restriction pour qu’un administrateur local conserve ses droits à distance. Le script d’activation ne la règle que sur les PC hors domaine, car les comptes de domaine ne sont pas filtrés de cette façon.
Si vous préparez plutôt un PC à la main, le guide des actions à distance de l’application donne cette commande, à exécuter dans PowerShell en tant qu’administrateur sur ce PC :
New-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System' -Name LocalAccountTokenFilterPolicy -Value 1 -PropertyType DWord -Force
Attention : Cela abaisse un peu la protection de ce PC : n’importe quel compte administrateur local peut désormais être utilisé par le réseau. Ne l’utilisez que là où c’est nécessaire, avec un mot de passe administrateur local robuste et unique sur chaque PC. Le script d’annulation la supprime, tout comme l’action à distance « Rétablir les restrictions UAC à distance ».
7. Déployer sur les autres PC
Une fois que le pilote se lit correctement, répétez l’opération pour les autres.
- PC par PC, avec le script. Téléchargez le script d’activation depuis la fiche de chaque PC et exécutez-le sur ce PC. Le script est construit pour l’adresse IP actuelle du PC NetBlade. C’est pourquoi cette adresse ne doit pas changer : si elle change, les règles de pare-feu ne correspondent plus et les lectures s’arrêtent jusqu’à ce que vous exécutiez un nouveau script.
- Dans un domaine, par stratégie de groupe. NetBlade ne génère pas de stratégies, mais le même résultat peut s’obtenir de façon centralisée. Pour WinRM, l’application elle-même indique : Configuration ordinateur › Modèles d’administration › Composants Windows › Gestion à distance de Windows › Service WinRM › « Autoriser la gestion de serveurs à distance via WinRM ». Pour WMI et SMB, l’approche habituelle consiste en des règles de pare-feu entrantes pour TCP 135, les ports RPC du service WMI et TCP 445, restreintes à l’adresse du PC NetBlade. Il s’agit d’administration Windows générale : testez-la d’abord sur un PC.
- Élargir l’identifiant. Quand le pilote fonctionne, ouvrez Identifiants, appuyez sur Portée… sur l’identifiant et étendez-le à Un site ou Partout.
Lisez-les ensuite tous : Appareils, Inventaire approfondi, ou Sites, Lire tous les appareils. Le site indique combien ont été lus et combien n’avaient aucun identifiant applicable.
8. Préparer aussi les actions à distance (facultatif)
La lecture n’utilise pas WinRM, mais les actions à distance, si. Si vous prévoyez de les utiliser, ouvrez Actions à distance sur une fiche et dépliez Ce dont la machine distante a besoin. L’application liste, dans l’ordre où ils manquent le plus souvent :
- Un compte administrateur sur cette machine, enregistré dans Identifiants.
- WinRM activé sur la machine distante :
Enable-PSRemoting -Force -SkipNetworkProfileCheck. - Un réseau privé ou de domaine, pas un réseau public. Sur la machine distante, en tant qu’administrateur :
Get-NetConnectionProfile | Set-NetConnectionProfile -NetworkCategory Private
- Hors domaine, faire confiance à la machine depuis ce PC (mettez son IP à la place de l’exemple) :
Set-Item WSMan:\localhost\Client\TrustedHosts -Value '192.168.1.50' -Concatenate -Force
- Hors domaine avec un compte local, la clé
LocalAccountTokenFilterPolicyde l’étape 6. - PsExec, quand WinRM est absent : le port 445 ouvert sur la machine distante et le partage ADMIN$ actif. Pour ouvrir le 445 :
Enable-NetFirewallRule -Name 'FPS-SMB-In-TCP'
Les détails se trouvent dans Actions à distance, en toute sécurité.
9. Comment tout annuler
Sur chaque PC préparé avec le script, exécutez le Script pour annuler les modifications que vous avez enregistré. Il supprime les règles de pare-feu de NetBlade et l’accès administratif à distance pour les comptes locaux. Il laisse WinRM activé ; si vous n’en avez pas besoin, désactivez-le dans PowerShell en tant qu’administrateur :
Disable-PSRemoting
Si vous n’avez pas conservé le script d’annulation, les mêmes résultats sont disponibles sous forme d’actions à distance depuis un NetBlade fonctionnel : « Rétablir les restrictions UAC à distance », « Supprimer une règle de pare-feu » pour chacune des règles NetBlade - … listées à l’étape 5, et « Désactiver WinRM ». Elles passent par l’accès même que vous supprimez : gardez donc « Rétablir les restrictions UAC à distance » pour la fin. Conserver le script d’annulation est plus simple.
Vérifier que tout a fonctionné
- L’état de lecture de la fiche indique « Lu le … via … », et les onglets Matériel, Logiciels, Système et Sécurité sont remplis.
- L’onglet Sécurité affiche l’état de BitLocker et du TPM au lieu de « nécessite un administrateur ».
- Sur le tableau de bord, Machines lues augmente et la ligne de couverture indique combien d’appareils sont lus en profondeur.
En cas de problème
- « WMI : accès refusé (0x80070005) ». Le compte n’est pas autorisé. Avec un compte local ou Microsoft,
LocalAccountTokenFilterPolicydoit être activé (le script d’activation s’en charge). Dans un domaine, vérifiez que le compte fait partie du groupe local Administrateurs du PC. - « WMI : échec d’ouverture de session (0x8007052E) ». Nom d’utilisateur ou mot de passe incorrect. Vérifiez la forme :
DOMAIN\userou.\Administrator. - « WMI : accès refusé (0x80041003) ». Le compte n’a pas de droits sur l’espace de noms WMI. Utilisez un compte administrateur.
- « WMI : type d’ouverture de session non accordé (0x80070569) ». Une stratégie de sécurité locale de ce PC refuse le type d’ouverture de session. Vérifiez la stratégie de sécurité locale de ce PC.
- « pas de réponse de WMI (pare-feu, ou pas un Windows) ». Le pare-feu bloque WMI ou l’appareil n’est pas sous Windows. Exécutez le script d’activation.
- « aucun identifiant ne s’applique à cet appareil ». Aucun identifiant Windows ne le couvre. Enregistrez-en un pour l’appareil, le site ou partout.
- « le mot de passe enregistré ne peut pas être lu avec ce compte ». L’identifiant a été enregistré par un autre utilisateur Windows de ce PC. Enregistrez-le de nouveau en étant connecté avec l’utilisateur qui exécute NetBlade.
- Cela fonctionnait, puis tout s’est arrêté sur tous les PC en même temps. L’adresse IP du PC NetBlade a probablement changé, et les règles ne correspondent plus. Réservez son adresse et exécutez de nouveaux scripts.
- Une action à distance a pris plus d’une demi-minute. Le pare-feu de ce PC bloque la gestion des services à distance et PsExec attend avant de se rabattre sur une autre méthode. Téléchargez de nouveau le script d’activation et exécutez-le : la version actuelle ouvre aussi cet accès, toujours uniquement pour ce PC.
Ensuite
Maintenant que les PC sont lisibles, configurez correctement vos comptes : Bien gérer les identifiants. Lisez ensuite vos équipements réseau avec SNMP.
← Tous les tutoriels Guide des fonctionnalités → Le produit: NetBlade Windows →