Tôi đang khắc phục sự cố mà tôi gặp phải với cảm biến PRTG không thu thập thông tin Windows Update từ một trong các máy chủ của chúng tôi. Nó đang sử dụng WinRM và lệnh PowerShell từ xa để làm điều đó.
Máy chủ 1 - Máy chủ phát hành
Máy chủ 2 - Máy chủ đang hoạt động
Khi tôi cố gắng sử dụng Enter-PSSession -ComputerName Server1
hoặc winrs -r:Server1 dir
để kiểm tra kết nối, tôi tiếp tục gặp các lỗi sau:
PS C:\WINDOWS\system32> winrs -r:Server1 dir
Lỗi Winrs: WinRM không thể xử lý yêu cầu. Đã xảy ra lỗi sau với mã lỗi 0x80090322 khi sử dụng xác thực Kerberos: Đã xảy ra lỗi bảo mật không xác định.
Nguyên nhân có thể là:
-Tên người dùng hoặc mật khẩu được chỉ định không hợp lệ.
-Kerberos được sử dụng khi không có phương thức xác thực và không có tên người dùng nào được chỉ định.
-Kerberos chấp nhận tên người dùng miền, nhưng không chấp nhận tên người dùng cục bộ.
-Tên dịch vụ chính (SPN) cho tên máy tính từ xa và cổng không tồn tại.
-Máy khách và máy tính từ xa nằm trong các miền khác nhau và không có sự tin cậy giữa hai miền.
Sau khi kiểm tra các vấn đề trên, hãy thử như sau:
-Kiểm tra Trình xem sự kiện để biết các sự kiện liên quan đến xác thực.
-Thay đổi phương thức xác thực; thêm máy tính đích vào cài đặt cấu hình WinRM TrustedHosts hoặc sử dụng truyền tải HTTPS.
Lưu ý rằng các máy tính trong danh sách Trustedhosts có thể không được xác thực.
-Để biết thêm thông tin về cấu hình WinRM, hãy chạy lệnh sau: winrm help config.
PS C:\WINDOWS\system32> Enter-PSSession -ComputerName Server1
Enter-PSSession: Kết nối với máy chủ từ xa Server1 không thành công với thông báo lỗi sau: WinRM không thể xử lý yêu cầu. Các
đã xảy ra lỗi sau với mã lỗi 0x80090322 khi sử dụng xác thực Kerberos: Đã xảy ra lỗi bảo mật không xác định.
Nguyên nhân có thể là:
-Tên người dùng hoặc mật khẩu được chỉ định không hợp lệ.
-Kerberos được sử dụng khi không có phương thức xác thực và không có tên người dùng nào được chỉ định.
-Kerberos chấp nhận tên người dùng miền, nhưng không chấp nhận tên người dùng cục bộ.
-Tên dịch vụ chính (SPN) cho tên máy tính từ xa và cổng không tồn tại.
-Máy khách và máy tính từ xa nằm trong các miền khác nhau và không có sự tin cậy giữa hai miền.
Sau khi kiểm tra các vấn đề trên, hãy thử như sau:
-Kiểm tra Trình xem sự kiện để biết các sự kiện liên quan đến xác thực.
-Thay đổi phương thức xác thực; thêm máy tính đích vào cài đặt cấu hình WinRM TrustedHosts hoặc sử dụng truyền tải HTTPS.
Lưu ý rằng các máy tính trong danh sách Trustedhosts có thể không được xác thực.
-Để biết thêm thông tin về cấu hình WinRM, hãy chạy lệnh sau: winrm help config. Để biết thêm thông tin, hãy xem
about_Remote_Chủ đề trợ giúp khắc phục sự cố.
Tại dòng:1 ký tự:1
+ Enter-PSSession -ComputerName Server1
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : UnlimitedArgument: (Server1:String) [Enter-PSSession], PSRemotingTransportException
+ FullQualifiedErrorId : CreateRemoteRunspaceFailed
Nếu tôi chạy lệnh trên bất kỳ máy chủ nào khác của chúng tôi thì kết nối thành công, đây là máy chủ duy nhất gây rắc rối cho tôi.
Nếu tôi chạy lệnh Enter-PSSession
với -Chứng chỉ
chuyển đổi bằng tài khoản người dùng của tôi, tôi cũng gặp lỗi tương tự, nhưng nếu tôi chạy lệnh và chỉ định tài khoản quản trị viên cục bộ của máy chủ thì nó sẽ kết nối. Các máy chủ khác hoạt động tốt.
PS C:\WINDOWS\system32> Enter-PSSession -ComputerName Server1 -Credential Server1\administrator
[Máy chủ1]: PS C:\Users\Administrator\Documents> thoát
PS C:\WINDOWS\system32> Enter-PSSession -ComputerName Server1 -miền thông tin xác thực\myuser
Enter-PSSession: Kết nối với máy chủ từ xa Server1 không thành công với thông báo lỗi sau: WinRM không thể xử lý yêu cầu. Các
đã xảy ra lỗi sau với mã lỗi 0x80090322 khi sử dụng xác thực Đàm phán: Đã xảy ra lỗi bảo mật không xác định.
Nguyên nhân có thể là:
-Tên người dùng hoặc mật khẩu được chỉ định không hợp lệ.
-Kerberos được sử dụng khi không có phương thức xác thực và không có tên người dùng nào được chỉ định.
-Kerberos chấp nhận tên người dùng miền, nhưng không chấp nhận tên người dùng cục bộ.
-Tên dịch vụ chính (SPN) cho tên máy tính từ xa và cổng không tồn tại.
-Máy khách và máy tính từ xa nằm trong các miền khác nhau và không có sự tin cậy giữa hai miền.
Sau khi kiểm tra các vấn đề trên, hãy thử như sau:
-Kiểm tra Trình xem sự kiện để biết các sự kiện liên quan đến xác thực.
-Thay đổi phương thức xác thực; thêm máy tính đích vào cài đặt cấu hình WinRM TrustedHosts hoặc sử dụng truyền tải HTTPS.
Lưu ý rằng các máy tính trong danh sách Trustedhosts có thể không được xác thực.
-Để biết thêm thông tin về cấu hình WinRM, hãy chạy lệnh sau: winrm help config. Để biết thêm thông tin, hãy xem
about_Remote_Chủ đề trợ giúp khắc phục sự cố.
Tại dòng:1 ký tự:1
+ Enter-PSSession -ComputerName Server1 -credential alpenaw2k.local\kemp ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : UnlimitedArgument: (Server1:String) [Enter-PSSession], PSRemotingTransportException
+ FullQualifiedErrorId : CreateRemoteRunspaceFailed
PS C:\WINDOWS\system32> Enter-PSSession -ComputerName Server2
[Máy chủ2]: PS C:\Users\user\Documents> thoát
Tái bút C:\WINDOWS\system32>
nếu tôi chạy Mới-PSSession
từ máy chủ cục bộ, tôi sẽ gặp lỗi tương tự, trừ khi tôi chỉ định -Kích hoạt quyền truy cập mạng
chuyển đổi và sau đó nó sẽ kết nối. Điều này làm tôi bối rối.Trình xem sự kiện cung cấp cho tôi ID sự kiện 161 liên quan đến xác thực người dùng và lỗi 142 đối với phiên không tạo được.
nếu tôi chạy Kiểm tra-WSMan
từ máy chủ cục bộ và máy chủ từ xa, nó cho thấy nó đang chạy.
Đây là cấu hình WinRM và cấu hình trình nghe:
PS C:\Windows\system32> winrm lấy winrm/config
cấu hình
MaxEnvelopeSizekb = 500
Thời gian chờ tối đa = 60000
MaxBatchItems = 32000
MaxProviderRequests = 4294967295
Khách hàng
Độ trễ mạng = 5000
Tiền tố URL = wsman
AllowUnencrypted = false
xác thực
Cơ bản = đúng
Tiêu hóa = đúng
Kerberos = đúng
Đàm phán = đúng
Giấy chứng nhận = đúng
Tín dụngSSP = sai
Cổng mặc định
HTTP = 5985
HTTPS = 5986
Máy chủ đáng tin cậy = 10.10.10.142
Dịch vụ
RootSDDL = O:NSG:BAD:P(A;;GA;;;BA)(A;;GR;;;IU)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW; ;;WD)
MaxConcurrentOperations = 4294967295
MaxConcurrentOperationsPerUser = 1500
EnumerationTimeoutms = 240000
Kết nối tối đa = 300
MaxPacketRetrievalTimeSeconds = 120
AllowUnencrypted = false
xác thực
Cơ bản = sai
Kerberos = đúng
Đàm phán = đúng
Giấy chứng nhận = sai
Tín dụngSSP = sai
CbtHardeningLevel = Thoải mái
Cổng mặc định
HTTP = 5985
HTTPS = 5986
Bộ lọc IPv4 = *
Bộ lọc IPv6 = *
EnableCompatibilityHttpListener = false
EnableCompatibilityHttpsListener = false
Giấy Chứng NhậnDấu Tay
AllowRemoteAccess = true
người chiến thắng
AllowRemoteShellAccess = true
Thời gian chờ nhàn rỗi = 7200000
Người dùng đồng thời tối đa = 2147483647
MaxShellRunTime = 2147483647
MaxProcessesPerShell = 2147483647
MaxMemoryPerShellMB = 2147483647
MaxShellsPerUser = 2147483647
PS C:\Windows\system32> winrm liệt kê winrm/config/listener
Thính giả
Địa chỉ = *
Vận chuyển = HTTP
Cổng = 5985
tên máy chủ
Đã bật = đúng
Tiền tố URL = wsman
Giấy Chứng NhậnDấu Tay
ListeningOn = 10.10.10.87, 127.0.0.1, ::1, fe80::4579:db85:c9cb:ead0%6
Những thứ khác tôi đã thử:
- Tôi không có cài đặt GPO nào cho WinRM.
- Tôi đã xóa và tạo lại trình nghe.
- Tôi đã thiết lập lại cấu hình của WinRM nhiều lần.
- Tường lửa nâng cao của Windows bị tắt đối với Công khai, Riêng tư và Miền
các mạng.
- tôi đã kiểm tra
Set-PSSessionConfiguration -Name Microsoft.PowerShell -ShowSecurityDescriptorUI
quyền và
đặc quyền có vẻ ổn.
- Tôi đã sử dụng địa chỉ IP thay vì tên máy chủ giống nhau
kết quả.
- Tôi đã thêm máy tính của mình vào danh sách máy chủ đáng tin cậy và nó không
công việc. Điều này không cần thiết mặc dù cả hai máy tính
nằm trên cùng một miền.
- Đã chạy
Kích hoạt-PSRemoting-Force
(Mặc dù điều này là không cần thiết
vì WinRM được bật theo mặc định cho Máy chủ 2012 trở đi).
- Tôi đã thêm người dùng của mình vào Quản trị viên cục bộ và Điều khiển từ xa
Quản lý người dùng trên máy chủ không may mắn.
- Tôi đã điều chỉnh sổ đăng ký của
ĐĂNG KÝ THÊM HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1
và điều này không
làm việc bất kể giá trị của nó.
- Tôi đã khởi động lại và chạy một
sfc /quét bây giờ
như một nỗ lực cuối cùng.
Thông số kỹ thuật của máy chủ, máy trạm và người dùng của tôi:
- Tài khoản miền của tôi là Quản trị viên miền.
- Máy chủ là Windows Server 2019 Standard.
- Máy trạm là Windows 10 Pro.
- PowerShell Phiên bản 5 cho cả hai.
- Cả hai máy tính đều nằm trên cùng một miền.
- Cả hai máy tính đều được cập nhật.
Tôi có thể sử dụng tài khoản quản trị viên cục bộ để thăm dò thông tin này và khắc phục sự cố đáng sợ của mình, nhưng điều đó không khắc phục được sự cố cơ bản.
Từ máy chủ từ xa, không có mục lỗi nào trong Nhật ký quản lý từ xa của Windows, nhưng trên máy tính của tôi, tôi có:
ID sự kiện lỗi - 142
Thao tác WSMan Liệt kê không thành công, mã lỗi 2150858909
ID sự kiện lỗi - 49
Thao tác giao thức WinRM không thành công do lỗi sau: WinRM không thể xử lý yêu cầu. Đã xảy ra lỗi sau với mã lỗi 0x80090322 khi sử dụng xác thực Kerberos: Đã xảy ra lỗi bảo mật không xác định.
Nguyên nhân có thể là:
-Tên người dùng hoặc mật khẩu được chỉ định không hợp lệ.
-Kerberos được sử dụng khi không có phương thức xác thực và không có tên người dùng nào được chỉ định.
-Kerberos chấp nhận tên người dùng miền, nhưng không chấp nhận tên người dùng cục bộ.
-Tên dịch vụ chính (SPN) cho tên máy tính từ xa và cổng không tồn tại.
-Máy khách và máy tính từ xa nằm trong các miền khác nhau và không có sự tin cậy giữa hai miền.
Sau khi kiểm tra các vấn đề trên, hãy thử như sau:
-Kiểm tra Trình xem sự kiện để biết các sự kiện liên quan đến xác thực.
-Thay đổi phương thức xác thực; thêm máy tính đích vào cài đặt cấu hình WinRM TrustedHosts hoặc sử dụng truyền tải HTTPS.
Lưu ý rằng các máy tính trong danh sách Trustedhosts có thể không được xác thực.
-Để biết thêm thông tin về cấu hình WinRM, hãy chạy lệnh sau: winrm help config..
ID sự kiện lỗi - 161
WinRM không thể xử lý yêu cầu. Đã xảy ra lỗi sau với mã lỗi 0x80090322 khi sử dụng xác thực Kerberos: Đã xảy ra lỗi bảo mật không xác định.
Nguyên nhân có thể là:
-Tên người dùng hoặc mật khẩu được chỉ định không hợp lệ.
-Kerberos được sử dụng khi không có phương thức xác thực và không có tên người dùng nào được chỉ định.
-Kerberos chấp nhận tên người dùng miền, nhưng không chấp nhận tên người dùng cục bộ.
-Tên dịch vụ chính (SPN) cho tên máy tính từ xa và cổng không tồn tại.
-Máy khách và máy tính từ xa nằm trong các miền khác nhau và không có sự tin cậy giữa hai miền.
Sau khi kiểm tra các vấn đề trên, hãy thử như sau:
-Kiểm tra Trình xem sự kiện để biết các sự kiện liên quan đến xác thực.
-Thay đổi phương thức xác thực; thêm máy tính đích vào cài đặt cấu hình WinRM TrustedHosts hoặc sử dụng truyền tải HTTPS.
Lưu ý rằng các máy tính trong danh sách Trustedhosts có thể không được xác thực.
-Để biết thêm thông tin về cấu hình WinRM, hãy chạy lệnh sau: winrm help config.
Tôi có thể RDP vào máy chủ tốt, đó là cách tôi đã thực hiện một số thử nghiệm cục bộ.
Tôi đã thử nghiệm hai lệnh này:
gwmi win32_operatingsystem -ComputerName Server1
thực thi bình thường mà không có vấn đề gì, điều đó chỉ định máy chủ từ xa và RDPing để chạy cục bộ.
Get-CimInstance win32_operatingsystem -ComputerName Server1
Tôi không thể chạy từ máy trạm của mình, nhưng nếu tôi RDP vào máy chủ và chạy nó, nó sẽ hoạt động bình thường.
đầu ra của ĐặtSPN -X
không trả về SPN chồng chéo
đầu ra của ĐặtSPN -L
trả về:
ServicePrincipalNames đã đăng ký cho CN=Server1,OU=Servers,OU=Organization,DC=Organization,DC=LOCAL:
TERMSRV/Server1.DOMAIN.LOCAL
WSMAN/Server1.DOMAIN.LOCAL
Bị hạn chếKrbHost/Server1.DOMAIN.LOCAL
HOST/Server1.DOMAIN.LOCAL
ĐIỀU KHOẢNSRV/Máy chủ1
WSMAN/Máy chủ1
KrbHost/Server1 bị hạn chế
MÁY CHỦ/Máy Chủ1
Bất kỳ và tất cả các đề xuất được đánh giá rất cao.