Como faço para restaurar o WinRM em uma máquina Windows 2008 R2 de volta ao seu estado 'pronto para uso'? Ou, alternativamente, como faço para que o WinRM comece a falar comigo novamente?
Estou logado como administrador via RDP. Qualquer tentativa de acessar ou configurar o winrm é recebida com acesso negado.
Eu tenho 3 outros servidores onde o WinRM funciona bem.
Em algum momento nos últimos 2 meses, o WinRM tornou-se inacessível no 4º servidor.
Passei cerca de 2 dias lendo, pesquisando e tentando coisas diferentes para fazer o WinRM funcionar novamente. Aqui estão alguns:
- help about_Remote_Troubleshooting
- Post de solução de problemas do WinRM de Jonathan Jordan
- Guia remoto do PowerShell
- um monte desses hits do Google
- nenhuma dessas respostas resolveu meu problema, nem respondeu minha pergunta sobre como redefinir o WinRM para um estado de instalação padrão.
LocalAccountTokenFilterPolicy está definido como 1
As regras de firewall são as mesmas para todos os servidores.
O serviço de Gerenciamento Remoto do Windows está funcionando.
Aqui estão alguns exemplos do que estou vendo com vários comandos:
PS C:\> winrm id IdentifyResponse
ProtocolVersion = http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd
ProductVendor = Microsoft Corporation
ProductVersion = OS: 6.1.7601 SP: 1.0 Stack: 2.0
winrm configuração rápida
PS C:\> winrm quickconfig
WinRM already is set up to receive requests on this machine.
WSManFault
Message = Access is denied.
Error number: -2147024891 0x80070005
winrm enumerar winrm/config/listener
PS C:\> winrm enumerate winrm/config/listener
WSManFault
Message = Access is denied.
Error number: -2147024891 0x80070005
Access is denied.
Set-PSSessionConfiguration Microsoft.Powershell -ShowSecurityDescriptorUI
Performing operation "Set-PSSessionConfiguration" on Target "Name: Microsoft.PowerShell".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Access is denied.
At line:15 char:26
+ if ((!$pluginName) -or <<<< !(test-path "$pluginDir"))
+ CategoryInfo : InvalidOperation: (:) [], InvalidOperationException
+ FullyQualifiedErrorId : WsManError
Join-Path : Access is denied.
At line:22 char:35
+ $pluginFileNamePath = Join-Path <<<< "$pluginDir" 'FileName'
+ CategoryInfo : NotSpecified: (:) [Join-Path], InvalidOperationException
+ FullyQualifiedErrorId : System.InvalidOperationException,Microsoft.PowerShell.Commands.JoinPathCommand
Test-Path : Cannot bind argument to parameter 'Path' because it is an empty string.
At line:23 char:19
+ if (!(test-path <<<< "$pluginFileNamePath"))
+ CategoryInfo : InvalidData: (:) [Test-Path], ParameterBindingValidationException
+ FullyQualifiedErrorId : ParameterArgumentValidationErrorEmptyStringNotAllowed,Microsoft.PowerShell.Commands.Test
PathCommand
Get-Item : Cannot bind argument to parameter 'LiteralPath' because it is an empty string.
At line:29 char:43
+ $pluginFileName = get-item -literalpath <<<< "$pluginFileNamePath"
+ CategoryInfo : InvalidData: (:) [Get-Item], ParameterBindingValidationException
+ FullyQualifiedErrorId : ParameterArgumentValidationErrorEmptyStringNotAllowed,Microsoft.PowerShell.Commands.GetI
temCommand
Set-PSSessionConfiguration : Session Configuration "Microsoft.PowerShell" is not a PowerShell based shell.
At line:89 char:27
+ Set-PSSessionConfiguration <<<< $args[0] $args[1] $args[2] $args[3] $args[4] $args[5] $args[6] $args[7] $args[8]
+ CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorException
+ FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Set-PSSessionConfiguration
e gerenciador de servidores