Hi,
When you install only the RD Gateway role without the full RDS farm (Connection Broker, etc.), the underlying KDC Proxy Service (KpsSvc) is often not automatically configured to listen for generic Kerberos traffic, or it is configured to expect Client Certificate authentication (Smart Card) rather than Password authentication, forcing the fallback to NTLM.
To achieve Kerberos over HTTPS for a non-domain joined client on Windows Server 2025, you must manually configure the KDC Proxy registry settings and service state.
Step 1: Configure the KDC Proxy Registry (Server Side)
By default, the KDC Proxy service might be restricting authentication methods. You need to explicitly allow password-based authentication for the tunnel and define the Kerberos library: On your Server 2025 domain controller (where RDG is running), open regedit. Navigate to: HKLM\SYSTEM\CurrentControlSet\Services\KPSSVC\Settings
(Note: If the Settings key does not exist, create it.)
Create/Modify the following DWORD value:
Name: HttpsClientAuth
Value: 0
Create/Modify the following Multi-String Value (REG_MULTI_SZ):
Name: LibNames
Value: kerberos.dll
Step 2: Ensure the KDC Proxy Service is Running: On standalone RDG installations, this service is sometimes set to Manual or not running => Open services.msc. Locate KDC Proxy Server service (KpsSvc). Set the Startup type to Automatic. Start or Restart the service. Restart the Remote Desktop Gateway service as well to ensure it picks up the hook.
Step 3: Verify the RDP File Configuration (Client Side)
Your settings look correct, but the syntax must be precise for the client to understand that MyServer.MyDomain.TLD is the authoritative KDC for the realm MYDOMAIN.LOCAL.
Open your .rdp file in Notepad and ensure these lines are present:
rdgiskdcproxy:i:1
kdcproxyname:s:MyServer.MyDomain.TLD
authentication level:i:2
Step 4: For a non-domain joined client to trigger the Kerberos process via the proxy, it must know the Realm (Domain) name to request a ticket for.
Do not use: MyDomain\Administrator
You MUST use: Administrator@MyDomain.local (UPN Format)
After applying the registry changes and restarting the services: Connect via the RDP file. Open a Command Prompt on the Windows 10 Client. Run klist. You should see a Kerberos ticket for krbtgt/MYDOMAIN.LOCAL in the list.
I hope you've found something useful here. If it helps you get more insight into the issue, it's appreciated to accept the answer then. Should you have more questions, feel free to leave a message. Have a nice day!
VP