Phiên PS từ xa không thành công trên máy chủ không tên miền


10

Tôi đang cố gắng kết nối với một máy chủ Win2008R2 từ xa không tham gia bằng PS từ máy chủ Win8 (cùng mạng con, đó là VM cục bộ). Đã thử mọi thứ tôi có thể tìm thấy, không có gì hoạt động.

NGƯỜI PHỤC VỤ:

PS C:\Users\Administrator> winrm quickconfig
PS C:\Users\Administrator> enable-psremoting

KHÁCH HÀNG:

PS C:\scripts> $cred = get-credential -username "administrator" -message "Enter password"

PS C:\scripts> $sess = new-pssession -computername 10.10.106.2 -credential $cred -authentication default
new-pssession : [10.10.106.2] Connecting to remote server 10.10.106.2 failed with the following error message : The
WinRM client cannot process the request. If the authentication scheme is different from Kerberos, or if the client
computer is not joined to a domain, then HTTPS transport must be used or the destination machine must be added to the
TrustedHosts configuration setting. Use winrm.cmd to configure TrustedHosts. Note that computers in the TrustedHosts
list might not be authenticated. You can get more information about that by running the following command: winrm help
config. For more information, see the about_Remote_Troubleshooting Help topic.
At line:1 char:9
  + $sess = new-pssession -computername 10.10.106.2 -credential $cred -authenticatio ...
  + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [New-PSSession], PSRemotingTransportException
    + FullyQualifiedErrorId : ServerNotTrusted,PSSessionOpenFailed

PS C:\scripts> winrm set winrm/config/client '@{TrustedHosts="10.10.106.2"}'
WSManFault
Message = The client cannot connect to the destination specified in the request. Verify that the service on the dest
ination is running and is accepting requests. Consult the logs and documentation for the WS-Management service running o
n the destination, most commonly IIS or WinRM. If the destination is the WinRM service, run the following command on the
destination to analyze and configure the WinRM service: "winrm quickconfig".
Error number:  -2144108526 0x80338012
The client cannot connect to the destination specified in the request. Verify that the service on the destination is run
ning and is accepting requests. Consult the logs and documentation for the WS-Management service running on the destinat
ion, most commonly IIS or WinRM. If the destination is the WinRM service, run the following command on the destination t
o analyze and configure the WinRM service: "winrm quickconfig".

PS C:\scripts> $sess = new-pssession -computername 10.10.106.2 -credential $cred -usessl
new-pssession : [10.10.106.2] Connecting to remote server 10.10.106.2 failed with the following error message : WinRM
cannot complete the operation. Verify that the specified computer name is valid, that the computer is accessible over
the network, and that a firewall exception for the WinRM service is enabled and allows access from this computer. By
default, the WinRM firewall exception for public profiles limits access to remote computers within the same local
subnet. For more information, see the about_Remote_Troubleshooting Help topic.
At line:1 char:9
  + $sess = new-pssession -computername 10.10.106.2 -credential $cred -usessl
  +         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [New-PSSession], PSRemotin   gTransportException
    + FullyQualifiedErrorId : WinRMOperationTimeout,PSSessionOpenFailed

Oh và RDP hoạt động tốt giữa hai máy chủ có cùng thông tin đăng nhập.

Ngay cả điều này hoạt động:

PS C:\scripts> Get-WinEvent -computername 10.10.106.2 -credential $cred

Câu trả lời:


17

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

cho https

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

cho http

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

Kiểm tra với

Test-WsMan ComputerName
Test-WsMan ComputerName -UseSSL

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

5

Vấn đề của bạn, như được tìm thấy trong một trong những thông báo lỗi đó là:

Nếu sơ đồ xác thực khác với Kerberos hoặc nếu máy khách không được kết nối với một miền, thì phải sử dụng vận chuyển HTTPS hoặc máy đích phải được thêm vào cài đặt cấu hình Trustedhosts.

Về cơ bản, bạn cần đặt WinRM để sử dụng HTTPS (thay vì HTTP mặc định) hoặc thêm máy bạn đang kết nối với tư cách là Máy chủ đáng tin cậy trên máy bạn đang kết nối.


Tôi không thể sử dụng lệnh đó vì không có chứng chỉ hợp lệ trên máy chủ. Như bạn thấy trong câu hỏi ban đầu của mình, tôi đã cố gắng thêm máy vào Trustedhosts ở phía máy khách. Tôi có cần phải làm tương tự ở phía máy chủ không?
Dendory

RDP vào máy chủ từ xa và đặt Máy chủ tin cậy từ phiên RDP của bạn, nếu đó là cách bạn muốn thực hiện. Tôi nghĩ sẽ dễ dàng hơn và tốt hơn nhiều khi chỉ đặt WinRM / WinRS sử dụng HTTPS thay vì HTTP trên tất cả các máy tính tôi quản lý (vì nhiều lý do hơn là vấn đề cụ thể này), nhưng tôi đoán đó là cuộc gọi của bạn.
Vô vọngN00b

Vâng, nhưng PS HTTPS rõ ràng yêu cầu chứng chỉ thực (không phải tự ký) cùng với tên DNS công khai. Tại sao nó không sử dụng mã hóa giống như RDP? Đừng cần bất cứ điều gì đặc biệt cho nó. Đây là một VM cục bộ để phát triển và vì vậy, không có lựa chọn nào, không thể có được một CA công khai cho nó.
Dendory

winrm set winrm/config/client '@{TrustedHosts="10.10.106.1"}'đã làm việc trên máy chủ, nhưng tôi vẫn nhận được thông báo lỗi tương tự trên máy khách của mình, nó vẫn không kết nối.
Dendory

1
@Dendory WinRM qua HTTPS hoạt động tốt với chứng chỉ do cơ quan cấp chứng chỉ nội bộ cấp, miễn là bạn phải thiết lập máy đúng cách để tin tưởng vào CA phát hành. Nó không yêu cầu máy phải có tên DNS bên ngoài hợp lệ, chỉ là bạn sử dụng tên DNS của nó và chứng chỉ cũng vậy. Nếu đó không phải là một lựa chọn, vì bất kỳ lý do gì, bạn sẽ phải hy vọng rằng ai đó sẽ đi cùng, người có thể giúp bạn làm cho nó hoạt động chỉ với mục nhập Máy chủ tin cậy (mục?) - Tôi chỉ không làm theo cách đó, bởi vì nó quá đau ở mông và dường như không hoạt động đáng tin cậy đối với tôi.
Vô vọngN00b

1

Vấn đề của tôi là một ví dụ được lưu trữ trong AWS.

  • Tôi đã phải mở 5985 trong nhóm bảo mật cá thể
  • Tôi đã phải sửa đổi quy tắc tường lửa để cho phép 5985 cho tất cả các cấu hình và mọi địa chỉ từ xa

    New-NetFirewallRule -Name PsRemoteHttp -Direction Inward -Action Cho phép -Protatio tcp -LocalPort 5985 -DisplayName PsRemoteHttp

Tôi đã làm việc này khi tôi chạy test-wsman:

"Theo mặc định, ngoại lệ tường lửa WinRM cho các cấu hình công khai giới hạn quyền truy cập vào các máy tính từ xa trong cùng một mạng con cục bộ."


0

Cuối cùng tôi cũng có được công việc của mình ... trong đó xxx.xxx.xxx.xxx là Địa chỉ IP.

PS C:\Users\Administrator> winrm quickconfig
WinRM service is already running on this machine.
WinRM is already set up for remote management on this computer.
PS C:\Users\Administrator> Enable-PSRemoting -Force
WinRM is already set up to receive requests on this computer.
WinRM is already set up for remote management on this computer.
PS C:\Users\Administrator> winrm set winrm/config/client '@{TrustedHosts="xxx.xxx.xxx.xxx"}'
Client
    NetworkDelayms = 5000
    URLPrefix = wsman
    AllowUnencrypted = false
    Auth
        Basic = true
        Digest = true
        Kerberos = true
        Negotiate = true
        Certificate = true
        CredSSP = false
    DefaultPorts
        HTTP = 5985
        HTTPS = 5986
    TrustedHosts = xxx.xxx.xxx.xxx

PS C:\Users\Administrator> Enter-PSSession  -ComputerName xxx.xxx.xxx.xxx -Credential "~\Administrator"
[xxx.xxx.xxx.xxx]: PS C:\Users\Administrator\Documents>

0

Sau nhiều tháng xảy ra sự cố này, đối với tôi, hóa ra tôi cần thêm cả IP của Máy chủ từ xa và Tên DNS của nó vào các máy chủ đáng tin cậy. Chỉ thêm IP là không đủ!

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.