Condividi tramite


Risoluzione dei problemi relativi alle connessioni Desktop remoto

Provare l'agente virtuale: consente di identificare e risolvere rapidamente i problemi comuni di connessione delle sessioni di Desktop remoto

Segui questa procedura quando un client Desktop remoto non riesce a connettersi a un desktop remoto, ma non fornisce messaggi o altri sintomi utili per identificare la causa.

Verificare lo stato del protocollo RDP

Verificare lo stato del protocollo RDP in un computer locale

Per verificare e modificare lo stato del protocollo RDP in un computer locale, vedi Come abilitare Desktop remoto.

Nota

Se le opzioni Desktop remoto non sono disponibili, vedi Verificare se un oggetto Criteri di gruppo blocca RDP.

Verificare lo stato del protocollo RDP in un computer remoto

Importante

In questa sezione, nei passaggi del metodo o dell'attività viene illustrata la modalità di modifica del Registro di sistema. Se, tuttavia, si modifica il Registro di sistema in modo errato, possono verificarsi gravi problemi. Pertanto, assicurarsi di osservare attentamente la procedura seguente. Al fine di protezione, eseguire il backup del registro di sistema prima di modificarlo, in modo da poterlo ripristinare in caso di problemi. Per ulteriori informazioni su come eseguire il backup e il ripristino del Registro di sistema, vedi Come eseguire il backup e il ripristino del Registro di sistema in Windows.

Per verificare e modificare lo stato del protocollo RDP in un computer remoto, usa una connessione al Registro di sistema in rete:

  1. Prima di tutto, vai al menu Start e scegli Esegui. Nella casella di testo visualizzata immetti regedt32.

  2. Nell'editor del Registro di sistema scegli Connetti a Registro di sistema in rete dal menu File.

  3. Nella finestra di dialogo Seleziona computer immetti il nome del computer remoto, fai clic su Controlla nomi e quindi su OK.

  4. Passare a HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server e a HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services.

    Screenshot dell'editor del Registro di sistema che mostra la voce fDenyTSConnections.

    • Se il valore della chiave fDenyTSConnections è 0, RDP è abilitato.
    • Se il valore della chiave fDenyTSConnections è 1, RDP è disabilitato.
  5. Per abilitare RDP, modifica il valore di fDenyTSConnections sostituendo 1 con 0.

Verificare se un oggetto Criteri di gruppo blocca RDP in un computer locale

Se non riesci ad abilitare RDP nell'interfaccia utente o se il valore di fDenyTSConnections viene reimpostato su 1 dopo che è stato modificato, è possibile che un oggetto Criteri di gruppo esegua l'override delle impostazioni a livello di computer.

Per controllare la configurazione di Criteri di gruppo in un computer locale, aprire una finestra del prompt dei comandi come amministratore e immettere il comando seguente:

gpresult /H c:\gpresult.html

Al termine dell'esecuzione di questo comando, apri gpresult.html. In Configurazione computer\Modelli amministrativi\Componenti di Windows\Servizi Desktop remoto\Host sessione Desktop remoto\Connessioni trovare il criterio Consenti la connessione remota tramite Servizi Desktop remoto.

  • Se l'impostazione di questo criterio è Abilitato, i criteri di gruppo non bloccano le connessioni RDP.

  • Se l'impostazione di questo criterio è Disabilitato, controlla Oggetto Criteri di gruppo dominante. Questo è l'oggetto Criteri di gruppo che blocca le connessioni RDP.

    Screenshot di un segmento di esempio di gpresult.html in cui il protocollo RDP bloccato a livello di dominio sta disabilitando RDP.

    Screenshot di un segmento di esempio di gpresult.html in cui Criteri di gruppo locali sta disabilitando RDP.

Verificare se un oggetto Criteri di gruppo blocca RDP in un computer remoto

Per verificare la configurazione di Criteri di gruppo in un computer remoto, il comando è quasi identico a quello per un computer locale:

gpresult /S <computer name> /H c:\gpresult-<computer name>.html

Il file prodotto da questo comando (gpresult-<nome computer>.html) usa per le informazioni lo stesso formato usato dalla versione per il computer locale (gpresult.html).

Modifica di un oggetto Criteri di gruppo che blocca

Puoi modificare queste impostazioni nell'Editor oggetti Criteri di gruppo e nella Console Gestione Criteri di gruppo. Per altre informazioni su come usare i criteri di gruppo, vedi Gestione avanzata di Criteri di gruppo.

Per modificare il criterio che blocca, usa uno dei metodi seguenti:

  • Nell'Editor oggetti Criteri di gruppo accedi al livello appropriato di oggetti Criteri di gruppo (ad esempio, locali o di dominio) e passa a Configurazione computer>Modelli amministrativi>Componenti di Windows>Servizi Desktop remoto>Host sessione Desktop remoto>Connessioni>Consenti la connessione remota tramite Servizi Desktop remoto.
    1. Imposta il criterio su Abilitato o Non configurato.
    2. Nei computer interessati aprire una finestra del prompt dei comandi come amministratore ed eseguire il gpupdate /force comando .
  • Nella Console Gestione Criteri di gruppo passa all'unità organizzativa (OU) in cui il criterio che blocca è applicato ai computer interessati ed elimina tale criterio dall'unità organizzativa.

Verificare lo stato dei servizi RDP

Sia nel computer (client) locale sia nel computer (di destinazione) remoto devono essere in esecuzione i servizi seguenti:

  • Servizi Desktop remoto (TermService)
  • Redirector porta UserMode di Servizi Desktop remoto (UmRdpService)

Puoi usare lo snap-in Servizi di MMC per gestire i servizi in locale o in remoto. Puoi anche usare PowerShell per gestire i servizi in locale o in remoto se il computer remoto è configurato in modo da accettare cmdlet di PowerShell remoti.

Screenshot dei servizi Desktop remoto nello snap-in Servizi MMC.

In tutti e due i computer, se uno o entrambi i servizi non sono in esecuzione, avviali.

Nota

Se si avvia il servizio Servizi Desktop remoto, selezionare Sì per riavviare automaticamente il servizio UserMode Port Redirector di Servizi Desktop remoto.

Verificare che il listener RDP sia funzionante

Importante

In questa sezione, nei passaggi del metodo o dell'attività viene illustrata la modalità di modifica del Registro di sistema. Se, tuttavia, si modifica il Registro di sistema in modo errato, possono verificarsi gravi problemi. Pertanto, assicurarsi di osservare attentamente la procedura seguente. Al fine di protezione, eseguire il backup del registro di sistema prima di modificarlo, in modo da poterlo ripristinare in caso di problemi. Per ulteriori informazioni su come eseguire il backup e il ripristino del Registro di sistema, vedi Come eseguire il backup e il ripristino del Registro di sistema in Windows.

Verificare lo stato del listener RDP

Per questa procedura, usa un'istanza di PowerShell con autorizzazioni amministrative. Per un computer locale, puoi anche usare un prompt dei comandi con autorizzazioni amministrative. In questa procedura viene tuttavia usato PowerShell perché gli stessi cmdlet funzionano sia in locale che in remoto.

  1. Per connetterti a un computer remoto, esegui il cmdlet seguente:

    Enter-PSSession -ComputerName <computer name>
    
  2. Immetti qwinsta.

    Screenshot del comando qwinsta che elenca i processi in ascolto sulle porte del computer.

  3. Se l'elenco include rdp-tcp con stato Listen, il listener RDP funziona. Passa a Verificare la porta del listener RDP. In caso contrario, continua con il passaggio 4.

  4. Esporta la configurazione del listener RDP da un computer funzionante.

    1. Accedi a un computer che abbia un sistema operativo della stessa versione del computer interessato e passa al Registro di sistema di tale computer, ad esempio tramite l'editor del Registro di sistema.

    2. Passa alla voce seguente del Registro di sistema:

      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp

    3. Esportare la voce in un .reg file. Ad esempio, nell'editor del Registro di sistema fai clic con il pulsante destro del mouse sulla voce, scegli Esporta e quindi immetti un nome file per le impostazioni esportate.

    4. Copiare il file esportato .reg nel computer interessato.

  5. Per importare la configurazione del listener RDP, apri una finestra di PowerShell con autorizzazioni amministrative nel computer interessato oppure apri la finestra di PowerShell ed esegui in remoto la connessione al computer interessato.

    1. Per eseguire il backup della voce esistente del Registro di sistema, immetti il cmdlet seguente:

      cmd /c 'reg export "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-tcp" C:\Rdp-tcp-backup.reg'
      
    2. Per rimuovere la voce esistente del Registro di sistema, immetti i cmdlet seguenti:

      Remove-Item -path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-tcp' -Recurse -Force
      
    3. Per importare la nuova voce del Registro di sistema e quindi riavviare il servizio, immetti i cmdlet seguenti:

      cmd /c 'regedit /s c:\<filename>.reg'
      Restart-Service TermService -Force
      

      Sostituire <filename> con il nome del file esportato .reg .

  6. Testa la connessione provando a eseguire di nuovo la connessione al desktop remoto. Se ancora non riesci a connetterti, riavvia il computer interessato.

  7. Se il problema persiste, verifica lo stato del certificato autofirmato RDP.

Verificare lo stato del certificato autofirmato RDP

  1. Se ti è ancora impossibile eseguire la connessione, apri lo snap-in Certificati di MMC. Quando ti viene chiesto di selezionare l'archivio certificati da gestire, seleziona Account del computer e quindi il computer interessato.
  2. Nella sottocartella Certificati di Desktop remoto elimina il certificato autofirmato RDP.
  3. Nel computer interessato riavvia Servizi Desktop remoto.
  4. Aggiorna lo snap-in Certificati.
  5. Se il certificato autofirmato RDP non è stato ricreato, verifica le autorizzazioni della cartella MachineKeys.

Verificare le autorizzazioni della cartella MachineKeys

  1. Nel computer interessato aprire Explorer, quindi passare a C:\ProgramData\Microsoft\Crypto\RSA\.
  2. Fare clic con il pulsante destro del mouse su MachineKeys, selezionare Proprietà>Sicurezza>avanzata.
  3. Assicurati che siano configurate le autorizzazioni seguenti:
    • Builtin\Administrators: controllo completo
    • Tutti: Lettura, Scrittura

Verificare la porta del listener RDP

Sia nel computer (client) locale sia nel computer (di destinazione) remoto il listener RDP deve essere in ascolto sulla porta 3389. Nessun'altra applicazione deve usare questa porta.

Importante

In questa sezione, nei passaggi del metodo o dell'attività viene illustrata la modalità di modifica del Registro di sistema. Se, tuttavia, si modifica il Registro di sistema in modo errato, possono verificarsi gravi problemi. Pertanto, assicurarsi di osservare attentamente la procedura seguente. Al fine di protezione, eseguire il backup del registro di sistema prima di modificarlo, in modo da poterlo ripristinare in caso di problemi. Per ulteriori informazioni su come eseguire il backup e il ripristino del Registro di sistema, vedi Come eseguire il backup e il ripristino del Registro di sistema in Windows.

Per verificare o modificare la porta RDP, usa l'editor del Registro di sistema:

  1. Vai al menu Start, scegli Esegui e quindi immetti regedt32 nella casella di testo visualizzata.

    • Per eseguire la connessione a un computer remoto, scegli Connetti a Registro di sistema in rete dal menu File.
    • Nella finestra di dialogo Seleziona computer immetti il nome del computer remoto, fai clic su Controlla nomi e quindi su OK.
  2. Aprire il Registro di sistema e passare a HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\<listener>.

    Screenshot della sottochiave PortNumber per il protocollo RDP.

  3. Se PortNumber ha un valore diverso da 3389, impostalo su 3389.

    Importante

    Puoi far funzionare i servizi di Desktop remoto usando un'altra porta. Questa operazione non è tuttavia consigliata. Questo articolo non illustra come risolvere i problemi relativi a questo tipo di configurazione.

  4. Dopo aver modificato il numero di porta, riavvia Servizi Desktop remoto.

Verificare che un'altra applicazione non stia provando a usare la stessa porta

Per questa procedura, usa un'istanza di PowerShell con autorizzazioni amministrative. Per un computer locale, puoi anche usare un prompt dei comandi con autorizzazioni amministrative. In questa procedura viene tuttavia usato PowerShell perché gli stessi cmdlet funzionano sia in locale che in remoto.

  1. Aprire una finestra di PowerShell. Per connettersi a un computer remoto, immettere Enter-PSSession -ComputerName <computer name>.

  2. Immettere il comando seguente:

    cmd /c 'netstat -ano | find "3389"'
    

    Screenshot del comando netstat che genera un elenco di porte e dei servizi in ascolto.

  3. Cercare una voce per la porta TCP 3389 (o la porta RDP assegnata) con lo stato In ascolto.

    Nota

    L'identificatore (PID) del processo o del servizio che usa la porta è visualizzato nella colonna PID.

  4. Per determinare quale applicazione usa la porta 3389 (o la porta RDP assegnata), immetti il comando seguente:

    cmd /c 'tasklist /svc | find "<pid listening on 3389>"'
    

    Screenshot del comando tasklist che segnala i dettagli di un processo specifico.

  5. Cercare una voce per il numero PID associato alla porta (dall'output netstat ). I servizi o i processi associati a tale PID vengono visualizzati nella colonna destra.

  6. Se un'applicazione o un servizio diverso da Servizi Desktop remoto (TermServ.exe) usa la porta, è possibile risolvere il conflitto usando uno dei metodi seguenti:

    • Configura l'altra applicazione o l'altro servizio in modo che usi una porta diversa (scelta consigliata).
    • Disinstalla l'altra applicazione o l'altro servizio.
    • Configura RDP in modo che usi una porta diversa e quindi riavvia Servizi Desktop remoto (scelta non consigliata).

Verificare se la porta RDP è bloccata da un firewall

Usare lo psping strumento per verificare se è possibile raggiungere il computer interessato usando la porta 3389.

  1. Passare a un computer diverso che non è interessato e scaricare psping.

  2. Aprire una finestra del prompt dei comandi come amministratore, passare alla directory in cui è stato installato pspinge quindi immettere il comando seguente:

    psping -accepteula <computer IP>:3389
    
  3. Controllare l'output del psping comando per ottenere risultati come il seguente:

    • Connecting to \<computer IP\>: il computer remoto è raggiungibile.
    • (0% loss): tutti i tentativi di connessione hanno avuto esito positivo.
    • The remote computer refused the network connection: il computer remoto non è raggiungibile.
    • (100% loss): tutti i tentativi di connessione non sono riusciti.
  4. Eseguire psping su più computer per verificare la possibilità di connettersi al computer interessato.

  5. Nota se il computer interessato blocca le connessioni da tutti i computer, da qualche altro computer o solo da un altro computer.

  6. Passaggi successivi consigliati:

    • Chiedi agli amministratori di rete di verificare che la rete consenta il traffico RDP verso il computer interessato.
    • Esamina le configurazioni degli eventuali firewall tra i computer di origine e il computer interessato (incluso Windows Firewall nel computer interessato) per determinare se la porta RDP viene bloccata da un firewall.