Восстановление службы
Проблема:
Не удается запустить службу брандмауэра Windows, либо служба вообще не отображается в списке служб. В частности, могут возникать следующие неполадки:
-
пункт Брандмауэр Windows/Общий доступ к Интернету (ICS) не отображается в списке Службы панели управления;
-
пункт Брандмауэр Windows/Общий доступ к Интернету (ICS) отображается в списке Службы, но не удается запустить службу;
-
при попытке доступа к параметрам брандмауэра Windows выводится следующее сообщение об ошибке: Вследствие неопределенной ошибки не удается отобразить параметры брандмауэра Windows.
Решение:
-
Выполняем скрипт:
Код: Выделить всё
Rundll32 setupapi,InstallHinfSection Ndi-Steelhead 132 %windir%\inf\netrass.inf
либо заносим в реестр:
Код: Выделить всё
Windows Registry Editor Version 5.00 [-HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess] [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess] "DependOnGroup"=hex(7):00,00 "DependOnService"=hex(7):4e,00,65,00,74,00,6d,00,61,00,6e,00,00,00,57,00,69,00,\ 6e,00,4d,00,67,00,6d,00,74,00,00,00,00,00 "Description"="Обеспечивает поддержку служб трансляции адресов, адресации и разрешения имен или предотвращает вторжение служб в домашней сети или сети небольшого офиса." "DisplayName"="Брандмауэр Windows/Общий доступ к Интернету (ICS)" "ErrorControl"=dword:00000001 "ImagePath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\ 74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,\ 00,76,00,63,00,68,00,6f,00,73,00,74,00,2e,00,65,00,78,00,65,00,20,00,2d,00,\ 6b,00,20,00,6e,00,65,00,74,00,73,00,76,00,63,00,73,00,00,00 "ObjectName"="LocalSystem" "Start"=dword:00000000 "Type"=dword:00000001 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Epoch] "Epoch"=dword:00002cd0 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters] "ServiceDll"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,\ 00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,\ 69,00,70,00,6e,00,61,00,74,00,68,00,6c,00,70,00,2e,00,64,00,6c,00,6c,00,00,\ 00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy] [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile] [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile\AuthorizedApplications] [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile\AuthorizedApplications\List] "%windir%\\system32\\sessmgr.exe"="%windir%\\system32\\sessmgr.exe:*:enabled:@xpsp2res.dll,-22019" [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile] [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications] [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List] "%windir%\\system32\\sessmgr.exe"="%windir%\\system32\\sessmgr.exe:*:enabled:@xpsp2res.dll,-22019" [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Setup] "ServiceUpgrade"=dword:00000001 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Setup\InterfacesUnfirewalledAtUpdate] "All"=dword:00000001 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Enum] "0"="Root\\LEGACY_SHAREDACCESS\\0000" "Count"=dword:00000001 "NextInstance"=dword:00000001
-
Устанавливаем нормальные права на ветку реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess.
-
Меняем значение параметра "Start" на "2", значение параметра "Type" - на "20" (16-ричное, или "32" - 10-чное).
-
Перезагружаемся.
-
Запускаем из командной строки:
Код: Выделить всё
Netsh firewall reset
Материал взят отсюда и отсюда.
Примечания:
-
Иногда после вызова функции
Код: Выделить всё
Rundll32 setupapi,InstallHinfSection Ndi-Steelhead 132 %windir%\inf\netrass.inf
возникает ошибка:
Операция не выполнена
В этом случае помогает импортирование ветки реестра «HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess» с корректно работающего компьютера с аналогичной Windows и таким же Сервис Паком на проблемный компьютер с последующей перезагрузкой.
-
Для восстановление дескриптора безопасности по умолчанию для службы SharedAccess нужно выполнить команду:
Код: Выделить всё
SC sdset SharedAccess D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
либо удалить раздел реестра «HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Security» и перезагрузить компьютер.
Если для управления брандмауэром Windows используется модель Microsoft COM, DCOM или Microsoft COM+, то для восстановления дескриптора безопасности по умолчанию для службы SharedAccess необходимо удалить раздел реестра «HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\{ce166e40-1e72-45b9-94c9-3b2050e8f180}»
Подробнее смотрим в статье Определенные административные шаблоны из руководства по безопасности Windows XP могут мешать запуску службы брандмауэра Windows на компьютере с Windows XP с пакетом обновления 2 (SP2)