Não consigo executar scripts do PowerShell em um servidor remoto, mas apenas na minha máquina atual - por favor ajude.
A execução do script a seguir para fornecer uma lista de um diretório temporário no servidor remoto funciona de outras máquinas no mesmo servidor com minhas credenciais, no entanto, não funciona para nenhum usuário da minha máquina.
Invoke-Command -ComputerName <server_name> -Credential (Get-Credential) -ScriptBlock { Get-ChildItem "D:\temp" }
Eu recebo o seguinte erro:
[server_name] A conexão ao servidor remoto server_name falhou com a seguinte mensagem de erro: Falha no logon: nome de usuário desconhecido ou senha incorreta. Para obter mais informações, consulte o tópico da Ajuda about_Remote_Trou Troubleshooting. + CategoryInfo: OpenError: (server_name: String) [], PSRemotingTransportException + FullyQualifiedErrorId: LogonFailure, PSSessionStateBroken
- Sim, existe ad: drive.
- Sim, existe um diretório temporário
- Sim, minhas credenciais são boas - posso fazer a área de trabalho remota no servidor e executar o script com sucesso em outras máquinas.
Estou executando o PowerShell 3 - baixado em http://www.microsoft.com/en-us/download/details.aspx?id=34595 e ele foi instalado com sucesso.
Uma chamada para $ PsVersionTable no meu laptop me dá o seguinte:
Nome Valor
---- -----WSManStackVersion 3.0
PSCompatibleVersions {1.0, 2.0, 3.0}
SerializationVersion
1.1.0.1 BuildVersion
6.2.9200.16398 PSVersion 3.0
CLRVersion 4.0.30319.586
PSRemotingProtocolVersion 2.2
Estou executando o Windows 7 e o servidor está executando o Windows 2003. Sei que o powershell 3 não funciona bem com o servidor Windows 2003, mas o comando acima é executado com êxito em outras máquinas clientes, portanto, não pense que isso seja um problema.
Alguma ideia?
fonte
Enter-PSSession
nessa máquina?Enable-PSRemoting -force
novamente; parece ser um problema com o WinRM para mim.Respostas:
Portanto, após alguns testes de diagnóstico adicionais (efetuando login em outra máquina para executá-lo, inicializando em outra instalação do SO no mesmo laptop), tudo se resumiu à necessidade de executar o seguinte comando:
Além disso, ao fazer uma investigação mais aprofundada, encontrei este site que poderia ajudar outras pessoas com problemas remotos no PowerShell (postando para referência).
fonte
Suponho que você esteja usando o PowerShell v2.0 no Windows Server 2003 e que você ativou o WINRM 2.0 no servidor também. O PowerShell v3.0 WINRM deve se conectar ao Window Server 2003 nesse caso.
Certifique-se de executar o Enable-PSRemoting no servidor, conforme descrito pelas notas "WestDiscGolf". Além disso, você precisa verificar as regras de firewall no seu cliente Windows 7 apenas para ter certeza.
Faça outra tentativa. :)
fonte