Affected versions: Windows Server 2022

πŸ“– ~1 min read

Table of contents
  1. Symptom & Impact
  2. Quick Checks
  3. Deep Diagnosis
  4. Primary Fix
  5. Verification
  6. Prevention & Hardening

Symptom & Impact

Remote Desktop sessions fail before credential prompt with NLA or authentication package errors. Administrative access is disrupted, delaying patching and incident response. Jump-host workflows become unreliable for operations teams.

Quick Checks

Confirm Terminal Services certificate binding and validate private key accessibility by SYSTEM.

Get-ItemProperty 'HKLM:SYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp'
Get-ChildItem Cert:LocalMachineRemote Desktop
Get-Service TermService

Deep Diagnosis

Trace Schannel and RemoteConnectionManager logs to identify expired thumbprints or mismatched EKU chains.

Get-WinEvent -LogName System -MaxEvents 120 | Where-Object {$_.ProviderName -match 'Schannel|TermService'}
certutil -store -v 'Remote Desktop'
qwinsta

Primary Fix

Rebind a valid machine certificate with Server Authentication EKU and restart RDP services cleanly.

Still having issues? Our IT Solutions & Services team can diagnose and resolve this for you. Get in touch for a free consultation.

$cert=(Get-ChildItem Cert:LocalMachineMy | Where-Object {$_.EnhancedKeyUsageList.FriendlyName -contains 'Server Authentication'} | Sort-Object NotAfter -Descending | Select -First 1)
wmic /namespace:\rootcimv2TerminalServices PATH Win32_TSGeneralSetting Set SSLCertificateSHA1Hash=$($cert.Thumbprint)
Restart-Service TermService -Force

Verification

New RDP sessions should complete NLA with no certificate trust or handshake failures.

Test-NetConnection server01 -Port 3389
Get-WinEvent -LogName 'Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational' -MaxEvents 30

Prevention & Hardening

Automate certificate lifecycle checks and alert before expiration to avoid abrupt management lockouts.

Get-ChildItem Cert:LocalMachineMy | Where-Object {$_.NotAfter -lt (Get-Date).AddDays(30)}
wevtutil qe System /q:'*[System[Provider[@Name="Schannel"] and (Level=2)]]' /f:text /c:10

Illustrative mockup for windows-server-2022 β€” terminal_or_powershell
Diagnostics commands in PowerShell β€” Illustrative mockup β€” Progressive Robot
Illustrative mockup for windows-server-2022 β€” event_or_log_viewer
Event log verification for Windows Server 2022 β€” Illustrative mockup β€” Progressive Robot

Need Expert Help?

If you cannot resolve this yourself, our team offers hands-on Server Management, Managed IT Services, and flexible Support Plans. Contact us today β€” we respond within one business day.