How to Enable Multiple Concurrent RDS Sessions for Same User in Windows Server 2008 R2


4 views

When migrating from Windows Server 2003 to 2008 R2, many administrators notice a crucial behavioral change: the system now restricts a single user to one active Remote Desktop session by default. This differs from Server 2003's permissive approach where multiple concurrent sessions were permitted.

For software engineers working with:

  • Multi-tab development environments
  • Parallel testing scenarios
  • CI/CD pipeline monitoring
  • Cross-session debugging

Having multiple sessions under the same credentials is often essential for efficient workflows.

To re-enable multiple sessions per user, modify these registry settings:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server]
"fSingleSessionPerUser"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Licensing Core]
"EnableConcurrentSessions"=dword:00000001

After applying these changes, restart the Remote Desktop Services:

net stop TermService & net start TermService

For domain environments, configure these policies:

  1. Computer Configuration > Policies > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Connections
  2. Set "Restrict Remote Desktop Services users to a single Remote Desktop Services session" to Disabled

To confirm the changes took effect:

query user /server:localhost

Sample successful output showing multiple sessions:

 USERNAME              SESSIONNAME        ID  STATE   IDLE TIME  LOGON TIME
 developer             console             1  Active      none   5/15/2023 8:00 AM
 developer             rdp-tcp#1           2  Active      none   5/15/2023 8:05 AM

Remember that each concurrent session consumes a CAL. With your 5 CALs/user configuration:

  • 1 user can have up to 5 active sessions
  • 5 users could each have 1 session
  • But not 2 users with 3 sessions each (would exceed total of 5 CALs)

If changes don't take effect:

  1. Check for conflicting GPOs with gpresult /h report.html
  2. Verify proper RDS role installation
  3. Ensure Terminal Services licensing is properly configured

When migrating from Windows Server 2003 to 2008 R2, many administrators encounter an unexpected change in Remote Desktop Services behavior. Where 2003 allowed multiple concurrent sessions for the same user, 2008 R2 by default restricts users to a single session.

Before making any changes, it's important to note that your per-user CAL setup (5 CALs per user) remains valid. The session limitation is a separate configuration from licensing. Each concurrent session still consumes one CAL, so with 5 CALs assigned, a user could theoretically have up to 5 simultaneous sessions.

The primary solution involves editing the RDP-Tcp connection properties:

# PowerShell method (recommended)
Import-Module RemoteDesktop
Set-RDSessionCollectionConfiguration -CollectionName "YourCollectionName" -UserProfileDisk -EnableUserProfileDisk $false
Set-RDSessionCollectionConfiguration -CollectionName "YourCollectionName" -DisconnectedSessionLimitMin 60

For environments without PowerShell remoting enabled, you can use registry edits:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server]
"fSingleSessionPerUser"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]
"MaxInstanceCount"=dword:ffffffff

For domain environments, the most maintainable solution is through Group Policy:

  1. Navigate to: Computer Configuration > Policies > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Connections
  2. Enable "Restrict Remote Desktop Services users to a single Remote Desktop Services session" and set it to Disabled
  3. Set "Limit number of connections" to your desired maximum (or disable)

After making any of these changes, test with:

query session /server:yourservername

This should show multiple sessions for the same user account if configured correctly.

  • Application compatibility - Some apps may not handle multiple instances well
  • Resource monitoring - More sessions mean higher resource usage
  • Security implications - Multiple sessions increase attack surface
  • Session management - Implement proper timeout/disconnect policies

If changes don't take effect:

# Restart required services
Restart-Service TermService -Force
Restart-Service SessionEnv -Force

Check event logs for TerminalServices-* events if problems persist.