PSSession Baru melintasi batas domain

8

Saya mencoba memunculkan mesin virtual yang perlu dapat membuat sesi baru (dengan New-PSSession). About_Remote_Troubleshooting yang sangat menarik adalah teman tetap saya, tentu saja!

Setelah memunculkan mesin dasar (Win 8.1 Enterprise):

  • Domain utama perusahaan saya adalah, katakanlah mycompany.com,.
  • Kami memiliki domain pengembangan dev.mycompany.comsehingga pengembang memiliki kotak pasir untuk bermain.
  • Saya menambahkan VM baru (bernama my-vm) ke domain pengembangan dev.mycompany.com.
  • Saya memiliki akun lokal di VM baru, my-vm\msorensyang ada di grup Administrators di mesin lokal.

Rintangan Pertama:

Mencoba menjalankan hanya New-PSSessiongagal dengan akses ditolak karena masalah lintas-domain. Per halaman pemecahan masalah yang dirujuk di atas:

Ketika pengguna di domain lain adalah anggota grup Administrators di komputer lokal, pengguna tidak dapat terhubung ke komputer lokal dari jarak jauh dengan hak istimewa Administrator.

Saya tidak yakin ini benar (karena pengalaman saya dalam masalah domain), tetapi menerapkan resep untuk pengobatan tersebut memungkinkan dasar New-PSSessionuntuk bekerja:

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

(Dan itu, meskipun kurang aman, tidak apa-apa, karena itu hanya VM kotak pasir.)

Rintangan kedua:

Dengan tambalan di atas, saya bisa melakukan semua ini dengan sukses:

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

Namun, kebutuhan saya yang sebenarnya adalah memberikan FQDN dari mesin:

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

Itu gagal karena kehilangan kredensial. Yang membawa kita ke ini:

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

Saya telah mencoba kredensial lokal saya (my-vm), yang mengakibatkan WinRM tidak dapat memproses permintaan; tidak ada server masuk yang tersedia .

Saya telah mencoba kredensial domain perusahaan saya (perhatikan bahwa mycompany.com bukan domain yang sebenarnya dimiliki oleh VM di dev.mycompany.com), yang mengakibatkan Access ditolak .

Apakah ada cara untuk membuat ini berfungsi?

Michael Sorens
sumber
Sudahkah Anda mencoba menentukan akhiran UPN? [email protected]
red888
1
Apakah dev.mycompany.comdomain mempercayai mycompany.comdomain? Jika tidak, Anda mungkin tidak dapat terhubung. Juga, kami memiliki lingkungan yang sangat mirip dengan lingkungan Anda. Akun perusahaan utama saya adalah Administrator di VM saya, yang ada di domain dev kami, dan saya bisa masuk ke VM.
Bipisan bit

Jawaban:

8

Di tempat kerja kami memiliki situasi yang sama. Berikut beberapa langkah yang kami lakukan di komputer rekan kerja baru sehingga mereka dapat terhubung ke server ini bagaimana berada di luar domain kami.

Di sisi klien

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

Di sisi server

Enable-PSRemoting -Force
winrm quickconfig

Untuk HTTPS

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

Untuk HTTP

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

Tes dengan

Test-WsMan ComputerName
Test-WsMan ComputerName -UseSSL

Buat sesi dengan

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

Tentu saja Anda perlu mengkonfigurasi firewall Anda agar server mendengarkan pada port remoting powershell.

Sunting: Setel TrustedHosts dengan PowerShell

Atau dengan PowerShell (sebagai Admin)

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

Dan periksa (tidak perlu Admin untuk itu)

Get-Item WSMan:\localhost\Client\TrustedHosts
dhcgn
sumber
1
Atau, daripada PSSession Baru, Anda bisa melakukan Enter-PSSession. Selain itu, saya hanya baris ini - winrm atur winrm / config / client '@ {TrustedHosts = "Computer1"}' - karena saya telah melakukan remoting dalam intra-domain dari sebelumnya.
Gomibushi