Windows Server 2012 defaults to single-session Remote Desktop Protocol (RDP) connections for administration, unlike its predecessors (Server 2000/2003) which allowed 2 concurrent sessions plus console access. While this simplifies reconnection scenarios, it limits legitimate administrative workflows requiring parallel sessions.
Before proceeding, note that enabling 2 concurrent admin sessions complies with Windows Server 2012's EULA. This differs from full Terminal Services which requires additional licensing. The solution involves modifying system policies rather than installing the Remote Desktop Services role.
Since Windows Server 2012 removed the graphical configuration snap-in, we'll use PowerShell and Registry edits:
# First, verify current RDP configuration:
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server" -Name "fDenyTSConnections"
# Should return 0 (RDP enabled)
# Check concurrent sessions limit:
Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server" -Name "MaxInstanceCount"
# Default is 0xFFFFFFFF (single session)
# Enable multiple sessions:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server" -Name "MaxInstanceCount" -Value 2
For completeness, these are the equivalent Registry changes:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server]
"MaxInstanceCount"=dword:00000002
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services]
"MaxInstanceCount"=dword:00000002
After making changes:
- Restart the server or restart the TermService service
- Attempt two simultaneous RDP connections from different client machines
- Use
qwinsta
command to verify active sessions
If encountering problems:
- Ensure no conflicting Group Policies are applied (
gpresult /h report.html
) - Verify the Remote Desktop Firewall rule is enabled
- Check Event Viewer for TerminalServices logs
For domain-joined servers, you can enforce this via GPO:
Computer Configuration > Policies > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Connections
"Limit number of connections" = Enabled (Set to 2)
Remember this is a server-wide setting affecting all administrative RDP sessions, not per-user.
Unlike Windows Server 2000/2003 which allowed multiple concurrent Remote Desktop sessions by default, Windows Server 2012 enforces single-session behavior for security and administration simplicity. The EULA still permits 2 administrative RDP sessions plus console access, but Microsoft changed the default configuration.
For quick configuration, modify these registry keys:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server] "fDenyTSConnections"=dword:00000000 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Licensing Core] "EnableConcurrentSessions"=dword:00000001 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services] "MaxInstanceCount"=dword:00000002
Save as enable_rdp_sessions.reg
and merge it. Restart the server or Terminal Services service.
For scripted deployment in Azure VMs:
# Enable RDP and concurrent sessions Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server' -Name "fDenyTSConnections" -Value 0 Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server\Licensing Core' -Name "EnableConcurrentSessions" -Value 1 Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services' -Name "MaxInstanceCount" -Value 2 # Configure firewall Enable-NetFirewallRule -DisplayGroup "Remote Desktop" # Restart service Restart-Service -Name TermService -Force
For domain environments, create a GPO with these settings:
- Computer Configuration > Policies > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Connections:
- "Limit number of connections": Enabled (set to 2)
- "Restrict Remote Desktop Services users to a single Remote Desktop Services session": Disabled
- Computer Configuration > Policies > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Licensing:
- "Use the specified Remote Desktop license servers": Disabled
After configuration:
# Check active sessions (from another machine) qwinsta /server:yourserver # Expected output shows available slots: SESSIONNAME USERNAME ID STATE TYPE DEVICE console 0 Conn wdcon rdp-tcp 65536 Listen rdpwd rdp-tcp#1 user1 1 Active rdpwd rdp-tcp#2 user2 2 Active rdpwd
If sessions still don't work:
- Ensure you're using Windows Server 2012 Standard/Datacenter (not Essentials)
- Verify no third-party RDP management tools are overriding settings
- Check Event Viewer > Windows Logs > Application for Terminal Services errors
- Run
gpupdate /force
if using Group Policy