New-PSSession oltre i confini del dominio


8

Sto cercando di far apparire una macchina virtuale che deve essere in grado di creare nuove sessioni (con New-PSSession). Il coinvolgente about_Remote_Tro troubleshooting è il mio compagno costante, ovviamente!

Dopo aver avviato una macchina di base (Win 8.1 Enterprise):

  • Dominio principale della mia azienda è, diciamo, mycompany.com.
  • Abbiamo un dominio di sviluppo in dev.mycompany.commodo che gli sviluppatori abbiano una sandbox con cui giocare.
  • Ho aggiunto la nuova macchina virtuale (denominata my-vm) al dominio di sviluppo dev.mycompany.com.
  • Ho un account locale sulla nuova macchina virtuale, my-vm\msorensche si trova nel gruppo Administrators sulla macchina locale.

Primo ostacolo:

Tentativo di esecuzione non New-PSSessionriuscito con accesso negato a causa di problemi tra domini. Per la pagina di risoluzione dei problemi di cui sopra:

Quando un utente in un altro dominio è membro del gruppo Administrators nel computer locale, l'utente non può connettersi al computer locale in remoto con i privilegi di amministratore.

Non sono convinto che questo sia vero (a causa della mia inesperienza nei problemi di dominio), ma l'applicazione della ricetta per quel rimedio ha permesso alla base New-PSSessiondi funzionare:

New-ItemProperty `
-Name LocalAccountTokenFilterPolicy `
-Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System `
-PropertyType DWord `
-Value 1

(E questo, sebbene meno sicuro, va bene, in quanto è solo una macchina virtuale sandbox.)

Secondo ostacolo:

Con la patch di cui sopra ho potuto eseguire con successo uno di questi:

PS> New-PSSession
PS> New-PSSession -ComputerName localhost
PS> New-PSSession -ComputerName my-vm

Tuttavia, la mia effettiva necessità è di fornire l'FQDN della macchina:

PS> New-PSSession -ComputerName my-vm.dev.mycompany.com

Ciò fallisce a causa delle credenziali mancanti. Il che ci porta a questo:

PS> New-PSSession -ComputerName my-vm.dev.mycompany.com -Credential (Get-Credential)

Ho provato le mie credenziali locali (my-vm), il che ha portato WinRM a non poter elaborare la richiesta; nessun server di accesso disponibile .

Ho provato le credenziali di dominio della mia azienda (si noti che mycompany.com non è il dominio in cui la VM si trova effettivamente su dev.mycompany.com), il che ha comportato l' accesso negato .

C'è un modo per farlo funzionare?


Hai provato a specificare un suffisso UPN? myuser@mydom.com
red888,

1
Il dev.mycompany.comdominio si fida del mycompany.comdominio? In caso contrario, potrebbe non essere possibile connettersi. Inoltre, abbiamo un ambiente molto simile al tuo. Il mio account aziendale principale è un amministratore sulla mia macchina virtuale, che si trova sul nostro dominio di sviluppo, e sono in grado di accedere alla macchina virtuale.
frammenti schizzati

Risposte:


8

Al lavoro abbiamo la stessa situazione. Ecco alcuni passaggi che facciamo sui nuovi computer di colleghi in modo che siano in grado di connettersi a questi server come sono al di fuori del nostro dominio.

Dal lato client

winrm quickconfig
winrm set winrm/config/client '@{TrustedHosts="Computer1,Computer2"}'

Sul lato server

Enable-PSRemoting -Force
winrm quickconfig

Per HTTPS

winrm create winrm/config/Listener?Address=*+Transport=HTTPS @{Hostname="_";CertificateThumbprint="_"}

Per HTTP

winrm create winrm/config/Listener?Address=*+Transport=HTTP

Prova con

Test-WsMan ComputerName
Test-WsMan ComputerName -UseSSL

Crea una sessione con

New-PSSession -ComputerName Computer1 -Credential (Get-Credential)

Ovviamente è necessario configurare il firewall per consentire al server di ascoltare sulla porta remota di PowerShell.

Modifica: imposta TrustedHosts con PowerShell

O con PowerShell (come amministratore)

Set-Item -Path WSMan:\localhost\Client\TrustedHosts -Value "Computer1,Computer2"

E controlla (non è necessario l'amministratore per quello)

Get-Item WSMan:\localhost\Client\TrustedHosts

1
Oppure, invece di una New-PSSession, puoi semplicemente fare una Enter-PSSession. Inoltre, ho solo questa riga - winrm set winrm / config / client '@ {TrustedHosts = "Computer1"}' - dal momento che avevo remoti che funzionavano all'interno del dominio da prima.
Gomibushi,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.