Я пытаюсь запустить сценарий, который удаленно устанавливает программу для пользователя в моем домене. Я могу нормально запустить сценарий на моем собственном компьютере, но когда я запускаю сценарий для другого компьютера в домене, я получаю сообщение об ошибке
. Подключение к удаленному серверу (имя компьютера) не удалось со следующим сообщением об ошибке: WinRM не может завершить операцию. Убедитесь, что указанное имя компьютера действительно, и что компьютер доступен через сеть и что исключение брандмауэра для службы WinRM включено и разрешает доступ с этого компьютера. По по умолчанию исключение брандмауэра WinRM для общедоступных профилей ограничивает доступ к удаленным компьютерам в том же локальном подсеть. Для получения дополнительной информации см. Раздел справки about_Remote_Troubleshooting
Я настроил WinRM и WinRM GPO, я отключил брандмауэр, но все равно получаю ту же ошибку. Я чувствую, что исчерпал все возможности, поэтому мне бы очень хотелось помочь.
Что я пробовал:
WSManFault
Message = WinRM cannot complete the operation. Verify that the specified computer name is valid, that the computer is accessible over the network, and that a firewall exception for the WinRM service is enabled and allows access from this computer. By default, the WinRM firewall exception for public profiles limits access to remote computers within the same local subnet.
Error number: -2144108250 0x80338126
WinRM cannot complete the operation. Verify that the specified computer name is valid, that the computer is accessible over the network, and that a firewall exception for the WinRM service is enabled and allows access from this computer. By default, the WinRM firewall exception for public profiles limits access to remote computers within the same local subnet.
Config
MaxEnvelopeSizekb = 500
MaxTimeoutms = 60000
MaxBatchItems = 32000
MaxProviderRequests = 4294967295
Client
NetworkDelayms = 5000
URLPrefix = wsman
AllowUnencrypted = false
Auth
Basic = true
Digest = true
Kerberos = true
Negotiate = true
Certificate = true
CredSSP = false
DefaultPorts
HTTP = 5985
HTTPS = 5986
TrustedHosts = ()ComputerName)
Service
RootSDDL = O:NSG:BAD:P(A;;GA;;;BA)(A;;GR;;;IU)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD)
MaxConcurrentOperations = 4294967295
MaxConcurrentOperationsPerUser = 1500
EnumerationTimeoutms = 240000
MaxConnections = 300
MaxPacketRetrievalTimeSeconds = 120
AllowUnencrypted = false
Auth
Basic = false
Kerberos = true
Negotiate = true
Certificate = false
CredSSP = false
CbtHardeningLevel = Relaxed
DefaultPorts
HTTP = 5985
HTTPS = 5986
IPv4Filter = * [Source="GPO"]
IPv6Filter = * [Source="GPO"]
EnableCompatibilityHttpListener = false
EnableCompatibilityHttpsListener = false
CertificateThumbprint
AllowRemoteAccess = true [Source="GPO"]
Winrs
AllowRemoteShellAccess = true
IdleTimeout = 7200000
MaxConcurrentUsers = 2147483647
MaxShellRunTime = 2147483647
MaxProcessesPerShell = 2147483647
MaxMemoryPerShellMB = 2147483647
MaxShellsPerUser = 2147483647
Win32_Service
AcceptPause = false
AcceptStop = true
Caption = Windows Remote Management (WS-Management)
CheckPoint = 0
CreationClassName = Win32_Service
DelayedAutoStart = null
Description = Windows Remote Management (WinRM) service implements the WS-Management protocol for remote management. WS-Management is a standard web services protocol used for remote software and hardware management. The WinRM service listens on the network for WS-Management requests and processes them. The WinRM Service needs to be configured with a listener using winrm.cmd command line tool or through Group Policy in order for it to listen over the network. The WinRM service provides access to WMI data and enables event collection. Event collection and subscription to events require that the service is running. WinRM messages use HTTP and HTTPS as transports. The WinRM service does not depend on IIS but is preconfigured to share a port with IIS on the same machine. The WinRM service reserves the /wsman URL prefix. To prevent conflicts with IIS, administrators should ensure that any websites hosted on IIS do not use the /wsman URL prefix.
DesktopInteract = false
DisplayName = Windows Remote Management (WS-Management)
ErrorControl = Normal
ExitCode = 0
InstallDate = null
Name = WinRM
PathName = C:\WINDOWS\System32\svchost.exe -k NetworkService -p
ProcessId = 15760
ServiceSpecificExitCode = 0
ServiceType = Share Process
Started = true
StartMode = Auto
StartName = NT AUTHORITY\NetworkService
State = Running
Status = OK
SystemCreationClassName = Win32_ComputerSystem
SystemName = (ComputerName)
TagId = 0
WaitHint = 0
Я не могу вспомнить на данный момент каждую конкретную мелочь, которую я пробовал, но если вы предложите что-то, я могу убедиться, что я это пробовал.
У меня есть последовал многим онлайн-предложениям, в том числе Remote PowerShell, Ошибки WinRM: WinRM не может завершить операцию
, но все равно ... ничего.
Если вы не настроили список разрешенных сетевых адресов/доверенных хостов в групповой политике/локальной политике, то это может быть одной из причин.
Административные шаблоны > Компоненты Windows > Удаленное управление Windows > Служба WinRM
Разрешить управление удаленным сервером через WinRM
Эта настройка политики позволяет вам управлять тем, будет ли служба Windows Remote Management (WinRM) автоматически прослушивать в сети запросы на транспорт HTTP через порт HTTP по умолчанию.
Если вы включите эту настройку политики, служба WinRM будет автоматически прослушивать в сети запросы на HTTP-транспорте через порт HTTP по умолчанию.
Чтобы разрешить службе WinRM принимать запросы по сети, настройте политику брандмауэра Windows с исключениями для порта 5985 (порт по умолчанию для HTTP).
Если вы отключите или не настроите эту установку политики, служба WinRM не будет отвечать на запросы с удаленного компьютера, независимо от того, настроены ли какие-либо прослушиватели WinRM.
Служба прослушивает адреса, указанные фильтрами IPv4 и IPv6. Фильтр IPv4 определяет один или несколько диапазонов адресов IPv4, а фильтр IPv6 - один или несколько диапазонов IPv6-адресов. Если указано, служба перечисляет доступные IP-адреса на компьютере и использует только адреса, которые попадают в один из диапазонов фильтра.
Вам следует использовать звездочку (*), чтобы указать, что служба прослушивает все доступные IP-адреса на компьютере. При использовании * другие диапазоны фильтра игнорируются. Если оставить фильтр пустым, то сервис не будет прослушивать ни один из адресов.
Например, если вы хотите, чтобы сервис прослушивал только IPv4-адреса, оставьте фильтр IPv6 пустым.
Диапазоны задаются с помощью синтаксиса IP1-IP2. Несколько диапазонов разделены с помощью "," (запятой) в качестве разделителя.
Примеры фильтров IPv4:\n2.0.0.1-2.0.0.20, 24.0.0.1-24.0.0.22 Example IPv6 filters:\n3FFE:FFFF:7654:FEDA:1245:BA98:0000:0000-3FFE:FFFF:7654:FEDA:1245:BA98:3210: 4562
Административные шаблоны > Компоненты Windows > Удаленное управление Windows > Доверенные хозяева WinRM-клиента
Trusted Hosts
Эта настройка политики позволяет вам управлять тем, использует ли клиент Windows Remote Management (WinRM) список, указанный в списке доверенных хозяев, чтобы определить, является ли целевой хост доверенной сущностью. Если вы включите эту настройку политики, WinRM клиент использует список, указанный в Списке Доверенных Хозяев, чтобы определить, является ли целевой узел доверенной сущностью. WinRM клиент использует этот список, когда ни HTTPS, ни Kerberos не используются для идентификации хоста.
Если вы отключите или не сконфигурируете эту установку политики, и WinRM клиент должен использовать список доверенных хостов, вы должны сконфигурировать список доверенных хостов локально на каждом компьютере.
Поскольку вы можете делать такие вещи, как создание папки, но не можете устанавливать программу, вам может потребоваться изменить политику выполнения.
Set-ExecutionPolicy RemoteSigned -force