Quando o Windows Server 2019 Essentials de repente recusa sessões Remote Desktop, a rotina da equipe de TI para. Felizmente, quase sempre é possível restaurar o acesso mesmo sem contato físico com o equipamento, seguindo um roteiro de diagnóstico estruturado.
Visão geral do problema
Em servidores Essentials, o serviço Terminal Services mantém somente duas sessões administrativas simultâneas. Se qualquer uma delas ficar “presa” em estado Desconectado, o sistema continuará reservando o slot, e a próxima tentativa resultará no alerta “O servidor tem conexões limitadas; tente novamente mais tarde”. O sintoma tende a surgir após:
- Queda súbita de energia ou desconexão de VPN;
- Sinal de Wi‑Fi instável em laptops de suporte remoto;
- Cliente RDP encerrado abruptamente (bateria descarregada);
- Falhas de atualização que reiniciam serviços sem encerrar as sessões.
Como o RDP opera na edição Essentials
A edição Essentials não requer CALs RDS nem servidor de licenciamento, mas impõe dois limites fundamentais:
- Duas sessões administrativas. Não há caminho oficial para ampliar este número sem migrar para Standard ou Datacenter.
- Sem acesso de usuários padrão via RDP. O recurso destina‑se exclusivamente ao gerenciamento.
Por isso, qualquer sessão remanescente — mesmo desligada — pode impedir novos logins. Entender esse comportamento é metade da solução.
Sintomas típicos de bloqueio de sessão
Indicador | Explicação |
---|---|
Mensagem de limite de conexões | Gerenciador de sessão detecta contagem > 2 |
query session só exibe services e console | Sessões órfãs podem não aparecer de imediato |
Reinicialização soft via shutdown /r /t 0 não resolve | Sessões persistem até desligamento completo |
Event Viewer registra ID 50 de TermService | Relata falha de criação de sessão por atingir o limite |
Checklist rápido de diagnóstico
Área | Ação sugerida | Detalhes |
---|---|---|
Sessões “presas” | Forçar logoff com reset session ID | Remove entradas Desconectado da tabela de sessões |
Serviços RDP | Reiniciar TermService e SessionEnv | Camada de transporte pode travar após patch |
Firewall/AV | Validar porta 3389 e exceções | AV pode isolar svchost.exe ‑k NetworkService |
Rede | Checar VLAN, ACL ou VPN | ACL nova pode afetar somente RDP, deixando ping/SMB intactos |
Atualizações | Revisar KBs recentes | Patches como KB5008218 já causaram travamento de TLS |
Logs | Event Viewer ⇢ System | Application | IDs 1028, 17 e 20499 costumam indicar time‑out de autenticação |
Passo a passo detalhado para restaurar o acesso
1) Localizar e limpar sessões órfãs
Abra um prompt já conectado (WinRM, SSH via OpenSSH ou PowerShell Direct em Hyper‑V) e execute:
quser /server:<nome_servidor>
Anote o ID da sessão com estado Desconectado ou Unknown
rwinsta <ID> /server:<nome_servidor>
A instrução rwinsta
libera imediatamente o slot. Se ambos os IDs se recusarem a desaparecer, recorra a:
reset session /server:<nome_servidor> <ID>
2) Reiniciar serviços RDP
Get-Service termservice, umrdpservice, sessionenv |
Restart-Service -Force -ErrorAction SilentlyContinue
Isso renova as pilhas de Terminal Services, User‑Mode RDP e ambiente de sessão. Caso o serviço recuse reinício, taskkill /f /pid
no svchost correspondente remove o bloqueio.
3) Validar configurações de firewall e antivírus
No prompt administrativo execute:
# Firewall nativo
Get-NetFirewallRule -DisplayName "Remote Desktop*" |
Select-Object DisplayName, Enabled, Action
Antivírus Defender
Get-MpPreference | Select-Object -Expand ExclusionProcess
Qualquer regra Block
no perfil Domain ou ausência de exceção para svchost.exe
podem impedir novas conexões, apesar de sessões existentes continuarem ativas.
4) Revisar rede e VPN
Use tracert
e tnc -servelocal -Port 3389
a partir de sub‑redes diferentes para confirmar rota. Mudanças de ACL em Layer 3 costumam bloquear SYN → ACK da porta 3389 mas permitem ICMP.
5) Checar atualizações problemáticas
Execute wmic qfe list brief /format:table
para listar KBs instaladas. Se o bloqueio começou logo após patch Tuesday, desinstale o update suspeito:
wusa /uninstall /kb:<número> /quiet /promptrestart
6) Inspecionar o Event Viewer
Busque por IDs 20499 (licenciamento), 50 (TermService), 1028 (Serviço de Área de Trabalho Remota) e erros de Schannel. Eles revelam falhas de TLS 1.2, corrupção de perfil ou panes de handshake CredSSP.
Automatizando a limpeza de sessões
Para evitar bloqueios recorrentes, adicione uma tarefa agendada que varre sessões órfãs a cada hora:
# Salve como C:\Scripts\LimpaSessaoRDP.ps1
$sessions = quser | Select-String "Disc" | ForEach-Object {
($_ -split '\s+')[2]
}
foreach ($s in $sessions) { rwinsta $s }
Depois registre a tarefa:
schtasks /create /tn "LimpaSessaoRDP" `
/tr "powershell.exe -NoLogo -ExecutionPolicy Bypass -File C:\Scripts\LimpaSessaoRDP.ps1" `
/sc hourly /ru SYSTEM
Prevenindo novas indisponibilidades
- Política de tempo limite: no gpedit.msc vá a Computer Configuration ⇢ Administrative Templates ⇢ Windows Components ⇢ Remote Desktop Services ⇢ Remote Session Environment e defina Set time limit for disconnected sessions.
- Monitoramento: ative Performance Monitor (RDSM) ou ferramentas SNMP para alertar quando a contagem de sessões exceder 1.
- Canal alternativo: habilite Windows Admin Center na porta 6516; ele não depende de RDP.
- Procedimentos de encerramento: crie script de logoff no evento 24 (Shell Logon) do Event Viewer para garantir saída limpa ao fechar mstsc.
Alternativas de acesso emergencial
Se nenhuma sessão possa ser derrubada e o firewall filtre 3389, ainda restam rotas de recuperação:
- PowerShell Remoting (WinRM): habilite previamente com
Enable-PSRemoting ‑Force
. - Console via hypervisor: em hosts Hyper‑V, utilize vmconnect.exe.
- iLO, DRAC ou IPMI: placas de gerenciamento fora de banda permitem console incluso em BIOS.
- Remote KVM sobre IP: dispositivo dedicado que emula teclado/vídeo/mouse mesmo fora do SO.
Conclusão
Na maioria dos casos, o erro de limite de conexões em Windows Server 2019 Essentials deve‑se a sessões administrativas que não foram encerradas corretamente. A sequência de ações quser → rwinsta → reinício de serviços resolve em minutos. Para minimizar reincidência, aplique políticas de idle timeout, monitore sessões e mantenha canais de administração alternativos como WinRM e Windows Admin Center.