Não é possível executar o Powershell remoto usando o Active Directory

5

Estamos tentando se conectar a um servidor remoto via Powershell e usar o módulo ActiveDirectory. Ao tentar fazer isso localmente, tudo parece estar bem.

PS C:\Users\bar> Import-Module ActiveDirectory
PS C:\Users\bar> Get-ADUser 'baz'

DistinguishedName : CN=Foo Baz,OU=baz.myhost.com,OU=FooMachine,DC=foo,DC=blah,DC=loc
Enabled           : True
GivenName         : Baz
Name              : Foo Baz
ObjectClass       : user
ObjectGUID        : <some guid>
SamAccountName    : baz
SID               : <more info here>
Surname           : Baz
UserPrincipalName : baz@foo

Quando fazemos o samething remotamente, não temos muita sorte.

C:\> Enter-PSSession -ComputerName 172.1.2.3 -Credential foo\bar
[172.1.2.3]: PS C:\Users\bar\Documents> Import-Module ActiveDirectory
WARNING: Error initializing default drive: 'Unable to contact the server. This
may be because this server does not exist, it is currently down, or it does not
 have the Active Directory Web Services running.'.
[172.1.2.3]: PS C:\Users\bar\Documents> Get-ADUser 'baz'
Unable to contact the server. This may be because this server does not exist, i
t is currently down, or it does not have the Active Directory Web Services runn
ing.
    + CategoryInfo          :
    + FullyQualifiedErrorId : Unable to contact the server. This may be becaus
   e this server does not exist, it is currently down, or it does not have th
  e Active Directory Web Services running.,Microsoft.ActiveDirectory.Managem
 ent.Commands.GetADUser

[172.1.2.3]: PS C:\Users\bar\Documents>

Christopher, temos controladores de domínio 2 - 2008 R2 em execução nesse domínio. O serviço da web do diretório ativo está sendo executado em ambos ("Import-Module ActiveDirectory" funciona bem no console do servidor - ele não é um controlador de domínio pela maneira

    
por Mark 17.11.2010 / 21:35

5 respostas

3

O CREDSSP seria necessário neste cenário, alguém?

    
por 17.11.2010 / 23:06
6

Aqui está um exemplo de como usar o CredSSP para resolver um problema similar. Eu testei isso, e ele funciona para resolver o erro do AD Web Services que você postou na sua pergunta.

Para resumir a partir do artigo, primeiro você precisa ativar o CredSSP no cliente e no servidor.

No cliente: Enable-WSManCredSSP -Role Client -DelegateComputer [computer name] -Force

No servidor: Enable-WSManCredSSP -Role Server –Force

Em seguida, você precisa obter ou fazer a credencial para se conectar à outra máquina e criar uma sessão que use essa credencial. Em seguida, você pode usar Invoke-Command para executar seus comandos / script do PowerShell em um bloco de script nessa nova sessão. Aqui está um exemplo parcial do artigo, usando os comandos da sua pergunta:

$credential = Get-Credential -Credential iammred\administrator

$session = New-PSSession -cn SQL1.Iammred.Net -Credential $credential -Authentication Credssp

Invoke-Command -Session $session -ScriptBlock { Import-Module ActiveDirectory; Get-ADUser 'baz' }

No entanto, isso interativamente pede suas credenciais, então, se você quiser evitar isso, precisará fazer algo parecido com isso com $credential :

$credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList "DOMAIN\username",$pass;

em que $pass é uma string segura da senha associada à conta.

    
por 26.11.2013 / 19:46
2

A partir deste link - link

Para usar o módulo do AD, além de ter uma máquina do Server 2008 R2 ou Windows 7 com o módulo AD PowerShell, se você não estiver executando servidores do Servidor 2008 R2, precisará:

link

Se você optar por um servidor AD Server 2003 ou 2008 com o complemento acima, você ainda precisará de um sistema Server 2008 R2 ou Windows 7 para poder utilizar o módulo AD. Usando o controle remoto do PowerShell, você seria capaz de usar qualquer sistema com o PowerShell v2 instalado para chamar os cmdlets do módulo AD remotamente, conforme descrito aqui:

link

    
por 17.11.2010 / 21:57
2

você se conectou ao servidor usando um endereço IP. Dessa forma, o Kerberos não pode ser usado para autenticar (é por isso que você precisou usar credenciais). Então, quando o servidor tenta autenticar em seu nome, você se depara com um problema de segundo salto. O servidor não pode entregar as credenciais a terceiros, assim você recebe erros.

Seu cenário requer que você conecte o cliente via Kerberos ao servidor. Isso só é possível se o seu cliente for membro do domínio e você usar o nome do servidor e não o endereço IP dele.

Tobias www.powershell.com

    
por 17.11.2010 / 22:54
2

Eu tive o mesmo problema com alguns dos nossos ambientes e o que funcionou foi uma alteração no firewall. Aparentemente, o ADWS usa porta 9389 que não era permitida no servidor que estava tentando administrar remotamente o DC usando o powershell. Uma vez que permitimos a porta, tudo está funcionando bem.

    
por 16.11.2016 / 02:08