Microsoft Remote Desktop 0x4



TLDR: Modify your power plan to ensure your VM isn’t going to sleep! I had recently deployed a new Windows 10 based VM that would serve as an RDP jump box to access lab resources. I am on Big Sur 11.2.2 trying to connect to a VM on Azure using Microsoft remote Desktop 10.5.1 Solution: Do not shut down the VM through Azure. Instead, shut the VM down via the VM, and then go to Azure to de-allocate the VM. Download this app from Microsoft Store for Windows 10, Windows 8.1, Windows 10 Mobile, Windows Phone 8.1, Windows 10 Team (Surface Hub), HoloLens. See screenshots, read the latest customer reviews, and compare ratings for Microsoft Remote Desktop.

-->

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.Use these steps when a Remote Desktop client can't connect to a remote desktop but doesn't provide messages or other symptoms that would help identify the cause.

Verificare lo stato del protocollo RDPCheck the status of the RDP protocol

When the server is in this state and returning 0x4 to the v.10 Mac client, what errors (if any) do Windows Remote Desktop Connection (MSTSC.EXE) and the v.8 Mac client return. Based on my research, in some cases, MSTSC returns 'Internal Error' and the v.8 Mac client returns 'Connection Reset by Peer'. You have a Mac Computer and are running Microsoft Desktop (RDP) throws an Error code: 0x4 just randomly when you try to connect to a computer you have configured for connection. For us, this problem just randomly started this year after Microsoft updated their RDP software.

Verificare lo stato del protocollo RDP in un computer localeCheck the status of the RDP protocol on a local computer

Per verificare e modificare lo stato del protocollo RDP in un computer locale, vedi Come abilitare Desktop remoto.To check and change the status of the RDP protocol on a local computer, see How to enable Remote Desktop.

Nota

Se le opzioni Desktop remoto non sono disponibili, vedi Verificare se un oggetto Criteri di gruppo blocca RDP.If the remote desktop options are not available, see Check whether a Group Policy Object is blocking RDP.

Microsoft remote desktop error code 0x407

Verificare lo stato del protocollo RDP in un computer remotoCheck the status of the RDP protocol on a remote computer

Importante

Segui attentamente le istruzioni della sezione.Follow this section's instructions carefully.Un'errata modifica del Registro di sistema può causare gravi problemi.Serious problems can occur if the registry is modified incorrectly.Prima di iniziare a modificare il Registro di sistema, eseguirne il backup in modo da poterlo ripristinare in caso di problemi.Before you start modifying the registry, back up the registry so you can restore it in case something goes wrong.

Per verificare e modificare lo stato del protocollo RDP in un computer remoto, usa una connessione al Registro di sistema in rete:To check and change the status of the RDP protocol on a remote computer, use a network registry connection:

Remote
  1. Prima di tutto, vai al menu Start e scegli Esegui.First, go to the Start menu, then select Run.Nella casella di testo visualizzata immetti regedt32.In the text box that appears, enter regedt32.
  2. Nell'editor del Registro di sistema scegli Connetti a Registro di sistema in rete dal menu File.In the Registry Editor, select File, then select Connect Network Registry.
  3. Nella finestra di dialogo Seleziona computer immetti il nome del computer remoto, fai clic su Controlla nomi e quindi su OK.In the Select Computer dialog box, enter the name of the remote computer, select Check Names, and then select OK.
  4. Passa a HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server.Navigate to HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server.
    • Se il valore della chiave fDenyTSConnections è 0, RDP è abilitato.If the value of the fDenyTSConnections key is 0, then RDP is enabled.
    • Se il valore della chiave fDenyTSConnections è 1, RDP è disabilitato.If the value of the fDenyTSConnections key is 1, then RDP is disabled.
  5. Per abilitare RDP, modifica il valore di fDenyTSConnections sostituendo 1 con 0.To enable RDP, change the value of fDenyTSConnections from 1 to 0.

Remote Desktop Error Code 0x516

Verificare se un oggetto Criteri di gruppo blocca RDP in un computer localeCheck whether a Group Policy Object (GPO) is blocking RDP on a local computer

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.If you can't turn on RDP in the user interface or the value of fDenyTSConnections reverts to 1 after you've changed it, a GPO may be overriding the computer-level settings.

Per verificare la configurazione di Criteri di gruppo in un computer locale, apri una finestra del prompt dei comandi come amministratore e immetti il comando seguente:To check the group policy configuration on a local computer, open a Command Prompt window as an administrator, and enter the following command:

Al termine del comando, apri gpresult.html.After this command finishes, open gpresult.html.In Configurazione computerModelli amministrativiComponenti di WindowsServizi Desktop remotoHost sessione Desktop remotoConnessioni trova il criterio Consenti la connessione remota tramite Servizi Desktop remoto.In Computer ConfigurationAdministrative TemplatesWindows ComponentsRemote Desktop ServicesRemote Desktop Session HostConnections, find the Allow users to connect remotely by using Remote Desktop Services policy.

  • Se l'impostazione di questo criterio è Abilitato, i criteri di gruppo non bloccano le connessioni RDP.If the setting for this policy is Enabled, Group Policy is not blocking RDP connections.

  • Se l'impostazione di questo criterio è Disabilitato, controlla Oggetto Criteri di gruppo dominante.If the setting for this policy is Disabled, check Winning GPO.Questo è l'oggetto Criteri di gruppo che blocca le connessioni RDP.This is the GPO that is blocking RDP connections.

Verificare se un oggetto Criteri di gruppo blocca RDP in un computer remotoCheck whether a GPO is blocking RDP on a remote computer

Per verificare la configurazione di Criteri di gruppo in un computer remoto, il comando è quasi identico a quello per un computer locale:To check the Group Policy configuration on a remote computer, the command is almost the same as for a local computer:

Il file generato da questo comando (gpresult-<computer name>.html) usa lo stesso formato di informazioni usato dalla versione del computer locale (gpresult.html).The file that this command produces (gpresult-<computer name>.html) uses the same information format as the local computer version (gpresult.html) uses.

Modifica di un oggetto Criteri di gruppo che bloccaModifying a blocking GPO

Puoi modificare queste impostazioni nell'Editor oggetti Criteri di gruppo e nella Console Gestione Criteri di gruppo.You can modify these settings in the Group Policy Object Editor (GPE) and Group Policy Management Console (GPM).Per altre informazioni su come usare i criteri di gruppo, vedi Gestione avanzata di Criteri di gruppo.For more information about how to use Group Policy, see Advanced Group Policy Management.

Microsoft

Per modificare il criterio che blocca, usa uno dei metodi seguenti:To modify the blocking policy, use one of the following methods:

Microsoft remote desktop for mac error 0x4
  • 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.In GPE, access the appropriate level of GPO (such as local or domain), and navigate to Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Connections > Allow users to connect remotely by using Remote Desktop Services.
    1. Imposta il criterio su Abilitato o Non configurato.Set the policy to either Enabled or Not configured.
    2. Nei computer interessati apri una finestra del prompt dei comandi come amministratore ed esegui il comando gpupdate /force.On the affected computers, open a command prompt window as an administrator, and run the gpupdate /force command.
  • 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.In GPM, navigate to the organizational unit (OU) in which the blocking policy is applied to the affected computers and delete the policy from the OU.

Verificare lo stato dei servizi RDPCheck the status of the RDP services

Sia nel computer (client) locale sia nel computer (di destinazione) remoto devono essere in esecuzione i servizi seguenti:On both the local (client) computer and the remote (target) computer, the following services should be running:

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

Puoi usare lo snap-in Servizi di MMC per gestire i servizi in locale o in remoto.You can use the Services MMC snap-in to manage the services locally or remotely.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.You can also use PowerShell to manage the services locally or remotely (if the remote computer is configured to accept remote PowerShell cmdlets).

In tutti e due i computer, se uno o entrambi i servizi non sono in esecuzione, avviali.On either computer, if one or both services are not running, start them.

Nota

Se avvii Servizi Desktop remoto, fai clic su per riavviare automaticamente il servizio Redirector porta UserMode di Servizi Desktop remoto.If you start the Remote Desktop Services service, click Yes to automatically restart the Remote Desktop Services UserMode Port Redirector service.

Verificare che il listener RDP sia funzionanteCheck that the RDP listener is functioning

Importante

Segui attentamente le istruzioni della sezione.Follow this section's instructions carefully.Un'errata modifica del Registro di sistema può causare gravi problemi.Serious problems can occur if the registry is modified incorrectly.Prima di iniziare a modificare il Registro di sistema, eseguine il backup in modo da poterlo ripristinare in caso di problemi.Before you starty modifying the registry, back up the registry so you can restore it in case something goes wrong.

Verificare lo stato del listener RDPCheck the status of the RDP listener

Per questa procedura, usa un'istanza di PowerShell con autorizzazioni amministrative.For this procedure, use a PowerShell instance that has administrative permissions.Per un computer locale, puoi anche usare un prompt dei comandi con autorizzazioni amministrative.For a local computer, you can also use a command prompt that has administrative permissions.In questa procedura viene tuttavia usato PowerShell perché gli stessi cmdlet funzionano sia in locale che in remoto.However, this procedure uses PowerShell because the same cmdlets work both locally and remotely.

  1. Per connetterti a un computer remoto, esegui il cmdlet seguente:To connect to a remote computer, run the following cmdlet:

  2. Immetti qwinsta.Enter qwinsta.

  3. Se l'elenco include rdp-tcp con stato Listen, il listener RDP funziona.If the list includes rdp-tcp with a status of Listen, the RDP listener is working.Passa a Verificare la porta del listener RDP.Proceed to Check the RDP listener port.In caso contrario, continua con il passaggio 4.Otherwise, continue at step 4.

  4. Esporta la configurazione del listener RDP da un computer funzionante.Export the RDP listener configuration from a working computer.

    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.Sign in to a computer that has the same operating system version as the affected computer has, and access that computer's registry (for example, by using Registry Editor).
    2. Passa alla voce seguente del Registro di sistema:Navigate to the following registry entry:
      HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-TcpHKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp
    3. Esporta la voce in un file con estensione reg.Export the entry to a .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.For example, in Registry Editor, right-click the entry, select Export, and then enter a filename for the exported settings.
    4. Copia nel computer interessato il file con estensione reg esportato.Copy the exported .reg file to the affected computer.
  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.To import the RDP listener configuration, open a PowerShell window that has administrative permissions on the affected computer (or open the PowerShell window and connect to the affected computer remotely).

    1. Per eseguire il backup della voce esistente del Registro di sistema, immetti il cmdlet seguente:To back up the existing registry entry, enter the following cmdlet:

    2. Per rimuovere la voce esistente del Registro di sistema, immetti i cmdlet seguenti:To remove the existing registry entry, enter the following cmdlets:

    3. Per importare la nuova voce del Registro di sistema e quindi riavviare il servizio, immetti i cmdlet seguenti:To import the new registry entry and then restart the service, enter the following cmdlets:

      Sostituire <filename> con il nome del file con estensione reg esportato.Replace <filename> with the name of the exported .reg file.

  6. Testa la connessione provando a eseguire di nuovo la connessione al desktop remoto.Test the configuration by trying the remote desktop connection again.Se ancora non riesci a connetterti, riavvia il computer interessato.If you still can't connect, restart the affected computer.

  7. Se il problema persiste, verifica lo stato del certificato autofirmato RDP.If you still can't connect, check the status of the RDP self-signed certificate.

Verificare lo stato del certificato autofirmato RDPCheck the status of the RDP self-signed certificate

  1. Se ti è ancora impossibile eseguire la connessione, apri lo snap-in Certificati di MMC.If you still can't connect, open the Certificates MMC snap-in.Quando ti viene chiesto di selezionare l'archivio certificati da gestire, seleziona Account del computer e quindi il computer interessato.When you are prompted to select the certificate store to manage, select Computer account, and then select the affected computer.
  2. Nella sottocartella Certificati di Desktop remoto elimina il certificato autofirmato RDP.In the Certificates folder under Remote Desktop, delete the RDP self-signed certificate.
  3. Nel computer interessato riavvia Servizi Desktop remoto.On the affected computer, restart the Remote Desktop Services service.
  4. Aggiorna lo snap-in Certificati.Refresh the Certificates snap-in.
  5. Se il certificato autofirmato RDP non è stato ricreato, verifica le autorizzazioni della cartella MachineKeys.If the RDP self-signed certificate has not been recreated, check the permissions of the MachineKeys folder.

Verificare le autorizzazioni della cartella MachineKeysCheck the permissions of the MachineKeys folder

  1. Nel computer interessato apri Esplora risorse e quindi passa a C:ProgramDataMicrosoftCryptoRSA .On the affected computer, open Explorer, and then navigate to C:ProgramDataMicrosoftCryptoRSA.
  2. Fai clic con il pulsante destro del mouse su MachineKeys, scegli Proprietà, fai clic su Sicurezza e quindi su Avanzate.Right-click MachineKeys, select Properties, select Security, and then select Advanced.
  3. Assicurati che siano configurate le autorizzazioni seguenti:Make sure that the following permissions are configured:
    • BuiltinAdministrators: Controllo completoBuiltinAdministrators: Full control
    • Everyone: Lettura, ScritturaEveryone: Read, Write

Verificare la porta del listener RDPCheck the RDP listener port

Sia nel computer (client) locale sia nel computer (di destinazione) remoto il listener RDP deve essere in ascolto sulla porta 3389.On both the local (client) computer and the remote (target) computer, the RDP listener should be listening on port 3389.Nessun'altra applicazione deve usare questa porta.No other applications should be using this port.

Importante

Segui attentamente le istruzioni della sezione.Follow this section's instructions carefully.Un'errata modifica del Registro di sistema può causare gravi problemi.Serious problems can occur if the registry is modified incorrectly.Prima di iniziare a modificare il Registro di sistema, eseguine il backup in modo da poterlo ripristinare in caso di problemi.Before you starty modifying the registry, back up the registry so you can restore it in case something goes wrong.

Per verificare o modificare la porta RDP, usa l'editor del Registro di sistema:To check or change the RDP port, use the Registry Editor:

  1. Vai al menu Start, scegli Esegui e quindi immetti regedt32 nella casella di testo visualizzata.Go to the Start menu, select Run, then enter regedt32 into the text box that appears.
    • Per eseguire la connessione a un computer remoto, scegli Connetti a Registro di sistema in rete dal menu File.To connect to a remote computer, select File, and then select Connect Network Registry.
    • Nella finestra di dialogo Seleziona computer immetti il nome del computer remoto, fai clic su Controlla nomi e quindi su OK.In the Select Computer dialog box, enter the name of the remote computer, select Check Names, and then select OK.
  2. Aprire il Registro di sistema e passare a HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStations<listener> .Open the registry and navigate to HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStations<listener>.
  3. Se PortNumber ha un valore diverso da 3389, impostalo su 3389.If PortNumber has a value other than 3389, change it to 3389.

    Importante

    Puoi far funzionare i servizi di Desktop remoto usando un'altra porta.You can operate Remote Desktop services using another port.Questa operazione non è tuttavia consigliata.However, we don't recommend you do this.Questo articolo non illustra come risolvere i problemi relativi a questo tipo di configurazione.This article doesn't cover how to troubleshoot that type of configuration.

  4. Dopo aver modificato il numero di porta, riavvia Servizi Desktop remoto.After you change the port number, restart the Remote Desktop Services service.

Verificare che un'altra applicazione non stia provando a usare la stessa portaCheck that another application isn't trying to use the same port

Per questa procedura, usa un'istanza di PowerShell con autorizzazioni amministrative.For this procedure, use a PowerShell instance that has administrative permissions.Per un computer locale, puoi anche usare un prompt dei comandi con autorizzazioni amministrative.For a local computer, you can also use a command prompt that has administrative permissions.In questa procedura viene tuttavia usato PowerShell perché gli stessi cmdlet funzionano sia in locale che in remoto.However, this procedure uses PowerShell because the same cmdlets work locally and remotely.

Microsoft Remote Desktop 0x4

  1. Aprire una finestra di PowerShell.Open a PowerShell window.Per eseguire la connessione a un computer remoto, immettere Enter-PSSession -ComputerName <computer name> .To connect to a remote computer, enter Enter-PSSession -ComputerName <computer name>.

  2. Immettere il comando seguente:Enter the following command:

  3. Cercare una voce per la porta TCP 3389 (o la porta RDP assegnata) con lo stato In ascolto.Look for an entry for TCP port 3389 (or the assigned RDP port) with a status of Listening.

    Nota

    L'identificatore (PID) del processo o del servizio che usa la porta è visualizzato nella colonna PID.The process identifier (PID) for the process or service using that port appears under the PID column.

  4. Per determinare quale applicazione usa la porta 3389 (o la porta RDP assegnata), immetti il comando seguente:To determine which application is using port 3389 (or the assigned RDP port), enter the following command:

  5. Cerca una voce per il numero PID associato alla porta (fornito dall'output di netstat).Look for an entry for the PID number that is associated with the port (from the netstat output).I servizi o i processi associati a tale PID vengono visualizzati nella colonna destra.The services or processes that are associated with that PID appear on the right column.

  6. Se la porta viene usata da un'applicazione o da un servizio diverso da Servizi Desktop remoto (TermServ.exe), puoi risolvere il conflitto usando uno dei metodi seguenti:If an application or service other than Remote Desktop Services (TermServ.exe) is using the port, you can resolve the conflict by using one of the following methods:

    • Configura l'altra applicazione o l'altro servizio in modo che usi una porta diversa (scelta consigliata).Configure the other application or service to use a different port (recommended).
    • Disinstalla l'altra applicazione o l'altro servizio.Uninstall the other application or service.
    • Configura RDP in modo che usi una porta diversa e quindi riavvia Servizi Desktop remoto (scelta non consigliata).Configure RDP to use a different port, and then restart the Remote Desktop Services service (not recommended).

Verificare se la porta RDP è bloccata da un firewallCheck whether a firewall is blocking the RDP port

Microsoft Remote Desktop 0x4 Error

Usa lo strumento psping per verificare se puoi raggiungere il computer interessato tramite la porta 3389.Use the psping tool to test whether you can reach the affected computer by using port 3389.

Remote Desktop Error Messages

  1. Passa a un computer diverso che non è interessato dal problema e scarica psping da https://live.sysinternals.com/psping.exe.Go to a different computer that isn't affected and download psping from https://live.sysinternals.com/psping.exe.

  2. Apri una finestra del prompt dei comandi come amministratore, passa alla directory in cui hai installato psping e quindi immetti il comando seguente:Open a command prompt window as an administrator, change to the directory in which you installed psping, and then enter the following command:

  3. Verifica se nell'output del comando psping sono presenti risultati simili ai seguenti:Check the output of the psping command for results such as the following:

    • Connessione a <computer IP> : il computer remoto è raggiungibile.Connecting to <computer IP>: The remote computer is reachable.
    • (0% loss) : tutti i tentativi di connessione hanno avuto esito positivo.(0% loss): All attempts to connect succeeded.
    • Il computer remoto ha rifiutato la connessione di rete: il computer remoto non è raggiungibile.The remote computer refused the network connection: The remote computer is not reachable.
    • (100% loss) : tutti i tentativi di connessione hanno avuto esito negativo.(100% loss): All attempts to connect failed.
  4. Esegui psping in più computer per verificarne la capacità di connettersi al computer interessato.Run psping on multiple computers to test their ability to connect to the affected computer.

  5. Nota se il computer interessato blocca le connessioni da tutti i computer, da qualche altro computer o solo da un altro computer.Note whether the affected computer blocks connections from all other computers, some other computers, or only one other computer.

  6. Passaggi successivi consigliati:Recommended next steps:

    • Chiedi agli amministratori di rete di verificare che la rete consenta il traffico RDP verso il computer interessato.Engage your network administrators to verify that the network allows RDP traffic to the affected computer.
    • 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.Investigate the configurations of any firewalls between the source computers and the affected computer (including Windows Firewall on the affected computer) to determine whether a firewall is blocking the RDP port.




Comments are closed.