1,939 24/05/2025 07/04/2026 3 min

Le cause del timeout RDP possono essere molteplici e spesso interconnesse, spaziando da problemi di rete a configurazioni errate del sistema operativo o del firewall. Una delle prime aree da investigare è la connettività di rete. Problemi di latenza elevata, perdita di pacchetti (packet loss) o larghezza di banda insufficiente possono impedire una comunicazione RDP stabile. È cruciale verificare la qualità della connessione tra il client e il server remoto. Strumenti come ping e tracert (o traceroute su Linux/macOS) possono aiutare a diagnosticare problemi di latenza e a identificare eventuali nodi problematici nel percorso di rete. Un ping -t prolungato può rivelare la perdita di pacchetti. Se la rete è il problema, ottimizzare la larghezza di banda, ridurre la latenza o utilizzare una connessione più stabile sono soluzioni necessarie.

Il Servizio Desktop Remoto (Remote Desktop Services) deve essere in esecuzione e configurato correttamente. Questo può essere verificato tramite services.msc. Le Politiche di Gruppo (Group Policy) giocano un ruolo significativo. Su server Active Directory, o anche su macchine standalone tramite gpedit.msc (per edizioni Pro ed Enterprise di Windows), le seguenti policy sono particolarmente rilevanti:

  • Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Session Time Limits: qui si possono configurare limiti di tempo per sessioni disconnesse, attive ma inattive, o attive ma non limitate. Se impostati su valori bassi, possono causare disconnessioni inaspettate.
  • Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Connections: qui si trova l'opzione "Configure keep-alive connection interval", che può aiutare a prevenire i timeout dovuti all'inattività della sessione, mantenendo attiva la connessione inviando pacchetti keep-alive.

Per regolare i timeout dal lato client, esistono due approcci principali:

Tramite Editor del Registro di Sistema
Aprire Regedit e navigare fino alla chiave:
HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client
Creare o modificare questi valori DWORD:

  • KeepAliveEnable (impostare a 1 per abilitare)
  • KeepAliveInterval (valore in millisecondi, es. 30000 per 30 secondi)
  • SessionTimeout (durata massima sessione in ms)

Tramite File RDP Personalizzato
Dopo aver salvato una connessione come file .rdp, modificarlo con un editor di testo per includere parametri come:
autoreconnection enabled:i:1
disable wallpaper:i:1

Configurazione sul Computer Remoto (Server)

Utilizzando Criteri di Gruppo
Aprire gpedit.msc e navigare a:
Configurazione computer > Modelli amministrativi > Componenti di Windows > Servizi Desktop remoto
Nella sezione "Limitazioni timeout connessione" configurare:

  • Durata sessioni attive
  • Timeout per sessioni disconnesse
  • Timeout per inattività

Via PowerShell
Comandi utili per modificare rapidamente le impostazioni:

powershell

Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" -Name "MaxDisconnectionTime" -Value 3600000

Modifica Manuale nel Registro
Navigare a:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
Modificare i valori relativi ai timeout secondo necessità.

Ottimizzazioni Avanzate

Per migliorare la stabilità della connessione:

  • Configurare i parametri Keep-Alive di TCP modificando:
    HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  • Ottimizzare le impostazioni di rete nel file RDP aggiungendo:
    networkautodetect:i:0
    bandwidthautodetect:i:0

Verifica e Monitoraggio

Per controllare le impostazioni correnti:

powershell

Get-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" | Select-Object Max*

Visualizzare le sessioni attive con:

quser /server:localhost

Raccomandazioni Generali

Valori di timeout consigliati:

  • Sessioni attive: 4-8 ore
  • Sessioni inattive: 30-60 minuti
  • Sessioni disconnesse: 15-30 minuti

Per ambienti con requisiti di sicurezza elevati, evitare timeout eccessivamente lunghi su server esposti a Internet. In ambienti enterprise, considerare l'uso di Remote Desktop Gateway per una gestione centralizzata delle connessioni