Puis-je désactiver WSD (Web Services for Devices) sur Server 2012 / R2? Comment?


12

Je cherche un moyen de désactiver WSD sur Server 2012 et Server 2012 R2. Fondamentalement, un certain nombre de nos imprimantes sur un certain nombre de nos serveurs d'impression ont décidé qu'il est préférable d'utiliser ce service sanglant que d'utiliser les ports TCP / IP qui leur ont été attribués, et ils se convertissent eux-mêmes en ports WSD, ce qui empêche les utilisateurs de imprimer sur ces imprimantes.

Sur le serveur Windows 2008 R2, je peux empêcher ce comportement en arrêtant et en désactivant le service énumérateur de bus IP PnP-X.Cependant , ce service ne semble pas être présent dans Server 2012.

Les seules suggestions que j'ai rencontrées pour arrêter ce comportement sont toutes sous-optimales.

  1. Désactiver la découverte du réseau (sur laquelle WDS s'appuie pour fonctionner)
  2. Bloquer WDS sur le pare-feu
  3. Désactivez la fonctionnalité WDS sur les imprimantes.

Je voudrais un moyen de désactiver ce service (et seulement ce service) sur le serveur d'impression, car toutes les autres options impliquent beaucoup plus de travail que je ne le souhaiterais (2, 3) ou ont des effets secondaires indésirables (1 ). Quelqu'un connaît-il un moyen de procéder?

Réponses:


8

Je crains qu'il n'y ait pas de commutateur "Off" pour WSD spécifiquement pour la découverte d'imprimantes dans Windows Server

Au lieu de désactiver le service «Hôte du fournisseur de découverte de fonctions», vous pouvez modifier l'action des règles sortantes suivante sur Refuser, dans le pare-feu Windows avec sécurité avancée:

entrez la description de l'image ici

Cela bloquera spécifiquement les événements de découverte WSD et WSDAPI

Si vos serveurs d'impression sont séparés de vos réseaux d'imprimantes, bloquez plutôt le trafic interzone sur ces ports spécifiques :

  • TCP 5357 - WSDAPIEvents
  • TCP 5358 - WSDEvents Secure
  • UPD 3702 - Publication WSD

Je ne pense pas que vous ayez besoin de désactiver WSD entrant sur vos serveurs d'impression.


Vous voulez probablement bloquer également les entrées, sur nos serveurs d'impression, n'est-ce pas? Espérant honnêtement éviter cette option, car cela signifierait activer le pare-feu Windows sur nos serveurs d'impression, ce qui créerait plus de travail que nous ne pouvons en gérer, et ... des problèmes avec notre personnel technique, pour démarrer. Mais, si c'est la meilleure des mauvaises options, c'est la route que je vais emprunter.
HopelessN00b

3

1) Fusionnez ce fichier reg:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WSDPrintDevice]
"Type"=dword:00000001
"Start"=dword:00000004
"ErrorControl"=dword:00000001
"Tag"=dword:00000028
"ImagePath"=hex(2):00,00
"DisplayName"="@WSDPrint.Inf,%WSDPrintDevice.SVCDESC%;WSD Print Support"
"Group"="Extended Base"
"Owners"=hex(7):00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WSDPrintDevice\Enum]
"Count"=dword:00000000
"NextInstance"=dword:00000000

Cela désactive le démarrage du service d'impression WSD et supprime l'emplacement de WSDPrint.Inf si quelque chose veut le forcer à démarrer.

2) Renommez les extensions de ces 3 fichiers de votre dossier WINDOWS \ INF en .bak:

WSDPrint.Inf
WSDPrint.PNF
WSDScDrv.inf

Cela empêche le démarrage des périphériques d'impression WSD.

Alors que les imprimantes WSD sont affichées dans la fenêtre Ajouter une imprimante, et il semble que vous puissiez les ajouter, les ports WSD ne sont jamais créés et le pilote WSD pour l'imprimante n'est pas installé. Tous les critères sont satisfaits. Vérifié dans Windows Server 2012 R2.

1 inconvénient: vous devez renommer les 3 fichiers à leur nom d'origine avant de faire des mises à jour Windows liées à l'impression ou WSD. Et puis changez-les en .bak après l'installation réussie du correctif.


2

Le service que vous souhaitez est "Host Provider Discovery Provider" (également appelé fdPHost). Cela désactivera le protocole WS-Discovery. Cependant, cela a également pour effet de désactiver la prise en charge SSDP.


Je ne suis pas sûr que ce soit ça. Ni le service hôte ni l'éditeur ne sont en cours d'exécution et sont définis sur un démarrage manuel.
HopelessN00b

Je crois qu'ils se déclenchent au besoin comme certains autres, mais vous pourriez avoir raison.
Nathan C

La méthode de découverte utilisée semble dépendre de l'exécution d'un service spécifique (Functional Discovery Resource Publication). Avec ce service arrêté, NETBIOS est utilisé et avec lui, WSD est utilisé.

Cela a quelques impacts que Microsoft détaille dans cet article de blog: blogs.technet.microsoft.com/networking/2010/12/06/…
Thomas

2

Installez l'imprimante manuellement via Périphériques et imprimantes sur le réseau. Sélectionnez l'option "Ajouter une imprimante à l'aide d'une adresse TCP / Ip ou d'un nom d'hôte. Dans la fenêtre suivante, assurez-vous de changer l'option Type de périphérique en Périphérique TCP / IP et NON l'option Détection automatique (qui est généralement la valeur par défaut). Entrez l'adresse IP de l'imprimante et cliquez sur Suivant. Terminez l'installation normalement à partir de ce point. Cela devrait résoudre ce problème.


1

Voici un fichier reg et un fichier batch pour en faire une opération en 2 clics:

https://drive.google.com/open?id=1mlx_ziiygRib9f4UkweBvAV8n-DXYNKg

disablewsdservice.reg est le hack de registre donné par RoelDS :

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WSDPrintDevice]
"Type"=dword:00000001
"Start"=dword:00000004
"ErrorControl"=dword:00000001
"Tag"=dword:00000028
"ImagePath"=hex(2):00,00
"DisplayName"="@WSDPrint.Inf,%WSDPrintDevice.SVCDESC%;WSD Print Support"
"Group"="Extended Base"
"Owners"=hex(7):00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WSDPrintDevice\Enum]
"Count"=dword:00000000
"NextInstance"=dword:00000000

disablewsdservice.EN.bat est un fichier de commandes pour s'approprier les fichiers que vous devez renommer avant de les renommer. Il se termine également par l'exécution du hack de registre.

TAKEOWN /F %WINDIR%\INF\WSDPrint.Inf
ICACLS %WINDIR%\INF\WSDPrint.Inf /grant administrators:F
ren %WINDIR%\INF\WSDPrint.Inf WSDPrint.Inf.bak
TAKEOWN /F %WINDIR%\INF\WSDPrint.PNF
ICACLS %WINDIR%\INF\WSDPrint.PNF /grant administrators:F
ren %WINDIR%\INF\WSDPrint.PNF WSDPrint.PNF.bak
TAKEOWN /F %WINDIR%\INF\WSDScDrv.inf
ICACLS %WINDIR%\INF\WSDScDrv.inf /grant administrators:F
ren %WINDIR%\INF\WSDScDrv.inf WSDScDrv.inf.bak
disablewsdservice.reg

Vous devez exécuter le fichier de commandes dans une invite de commandes élevée (administrateur). Utilisez le fichier EN pour toute version anglaise de Windows et le fichier FR pour toute version française.

Vous pouvez exécuter le lot, puis le reg, ou l'inverse n'a pas d'importance.

Testé avec succès sur W10 LTSC.


0

Ce que j'ai fait: 1 - Accédez à l'interface Web de l'imprimante et désactivez tous les éléments relatifs WS à partir des paramètres réseau (WS Discovery, WS Scan, WS Print). Cela empêchera l'imprimante de publier à nouveau via WSD 2 - Vérifiez les ordinateurs et changez le port en TCP / IP si nécessaire.

Effectuez ces étapes rapides pour toutes les nouvelles imprimantes.

J'espère que cela vous aidera

Désolé pour mon anglais

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.