PSSession mới qua các ranh giới tên miền


8

Tôi đang cố gắng đưa ra một máy ảo cần có khả năng tạo các phiên mới (với New-PSSession). Dĩ nhiên, about_Remote_Troubledhoot rất hấp dẫn là người bạn đồng hành liên tục của tôi!

Sau khi đưa lên một máy cơ bản (Win 8.1 Enterprise):

  • Tên miền chính của công ty tôi là, nói , mycompany.com.
  • Chúng tôi có một miền phát triển dev.mycompany.comđể các nhà phát triển có một hộp cát để chơi.
  • Tôi đã thêm VM mới (có tên my-vm) vào miền phát triển dev.mycompany.com.
  • Tôi có một tài khoản cục bộ trên VM mới, my-vm\msorensnằm trong nhóm Quản trị viên trên máy cục bộ.

Trở ngại đầu tiên:

Cố gắng chạy chỉ New-PSSessionthất bại với truy cập bị từ chối vì các vấn đề tên miền chéo. Theo trang xử lý sự cố được tham chiếu ở trên:

Khi người dùng trong một tên miền khác là thành viên của nhóm Quản trị viên trên máy tính cục bộ, người dùng không thể kết nối với máy tính cục bộ từ xa với các đặc quyền của Quản trị viên.

Tôi không tin điều này là đúng (do thiếu kinh nghiệm của tôi trong các vấn đề về miền) nhưng việc áp dụng công thức cho phương thuốc đó đã cho phép cơ bản New-PSSessionhoạt động:

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

(Và điều đó, trong khi kém an toàn hơn, vẫn ổn, vì nó chỉ là một VM sandbox.)

Trở ngại thứ hai:

Với bản vá ở trên, tôi có thể thực hiện thành công bất kỳ thứ nào trong số này:

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

Tuy nhiên, nhu cầu thực tế của tôi là cung cấp FQDN của máy:

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

Điều đó thất bại vì thiếu thông tin đăng nhập. Điều này đưa chúng ta đến điều này:

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

Tôi đã thử thông tin đăng nhập cục bộ (my-vm) của mình, dẫn đến WinRM không thể xử lý yêu cầu; không có máy chủ đăng nhập có sẵn .

Tôi đã thử thông tin đăng nhập tên miền của công ty tôi (lưu ý rằng mycompany.com không phải tên miền mà VM thực sự có trên dev.mycompany.com), dẫn đến việc Access bị từ chối .

Có cách nào để làm cho công việc này?


Bạn đã thử chỉ định một hậu tố UPN? myuser@mydom.com
red888

1
Liệu dev.mycompany.comtên miền có tin tưởng mycompany.comtên miền? Nếu không, bạn có thể không kết nối được. Ngoài ra, chúng tôi có một môi trường rất giống với môi trường của bạn. Tài khoản công ty chính của tôi là Quản trị viên trên máy ảo của tôi, thuộc miền dev của chúng tôi và tôi có thể đăng nhập vào VM.
các mảnh vỡ rải rác

Câu trả lời:


8

Trong công việc chúng ta có hoàn cảnh tương tự. Dưới đây là một số bước chúng tôi thực hiện tại các máy tính đồng nghiệp mới để họ có thể kết nối với các máy chủ này bên ngoài miền của chúng tôi như thế nào.

Về phía khách hàng

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

Về phía máy chủ

Enable-PSRemoting -Force
winrm quickconfig

Dành cho HTTPS

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

Đối với HTTP

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

Kiểm tra với

Test-WsMan ComputerName
Test-WsMan ComputerName -UseSSL

Tạo một phiên với

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

Tất nhiên bạn cần cấu hình tường lửa của mình để cho máy chủ nghe trên cổng từ xa powershell.

Chỉnh sửa: Đặt Trustedhosts với PowerShell

Hoặc với PowerShell (với tư cách là Quản trị viên)

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

Và kiểm tra (không cần Admin cho điều đó)

Get-Item WSMan:\localhost\Client\TrustedHosts

1
Hoặc, thay vì New-PSSession, bạn chỉ có thể thực hiện Enter-PSSession. Ngoài ra, tôi chỉ dòng này - winrm đặt winrm / config / client '@ {Trustedhosts = "Computer1"}' - vì tôi đã từ xa làm việc trong miền từ trước.
Gomibushi
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.