Dela via


Felsökning av allmän fjärrskrivbordsanslutning

Prova vår virtuella agent – Det kan hjälpa dig att snabbt identifiera och åtgärda vanliga anslutningsproblem för fjärrskrivbordssessioner

Använd de här stegen när en fjärrskrivbordsklient inte kan ansluta till ett fjärrskrivbord men inte tillhandahåller meddelanden eller andra symtom som kan hjälpa dig att identifiera orsaken.

Kontrollera statusen för RDP-protokollet

Kontrollera rdp-protokollets status på en lokal dator

Information om hur du kontrollerar och ändrar status för RDP-protokollet på en lokal dator finns i Så här aktiverar du Fjärrskrivbord.

Kommentar

Om alternativen för fjärrskrivbord inte är tillgängliga kan du läsa Kontrollera om ett grupprincipobjekt blockerar RDP.

Kontrollera status för RDP-protokollet på en fjärrdator

Viktigt!

Det här avsnittet, metoden eller uppgiften innehåller steg som beskriver hur du ändrar registret. Det kan uppstå allvarliga problem om du gör detta felaktigt. Följ därför noggrant dessa steg. Säkerhetskopiera registret innan du ändrar det så att du kan återställa det om ett problem uppstår. Mer information om hur du säkerhetskopierar och återställer registret finns i Hur du säkerhetskopierar och återställer registret i Windows.

Om du vill kontrollera och ändra status för RDP-protokollet på en fjärrdator använder du en nätverksregisteranslutning:

  1. Gå först till Start-menyn och välj sedan Kör. I textrutan som visas anger du regedt32.

  2. I Registereditorn väljer du Arkiv och sedan Anslut nätverksregister.

  3. I dialogrutan Välj dator anger du namnet på fjärrdatorn, markerar Kontrollera namn och väljer sedan OK.

  4. Navigera till HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server och till HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services.

    Skärmbild av registereditorn som visar posten fDenyTSConnections.

    • Om värdet för nyckeln fDenyTSConnections är 0 aktiveras RDP.
    • Om värdet för nyckeln fDenyTSConnections är 1 inaktiveras RDP.
  5. Om du vill aktivera RDP ändrar du värdet för fDenyTSConnections från 1 till 0.

Kontrollera om ett grupprincipobjekt (GPO) blockerar RDP på en lokal dator

Om du inte kan aktivera RDP i användargränssnittet eller om värdet för fDenyTSConnections återgår till 1 när du har ändrat det, kan ett grupprincipobjekt åsidosätta inställningarna på datornivå.

Om du vill kontrollera grupprincipkonfigurationen på en lokal dator öppnar du kommandotolken som administratör och anger följande kommando:

gpresult /H c:\gpresult.html

När det här kommandot har slutförts öppnar du gpresult.html. I Datorkonfiguration\Administrativa mallar\Windows-komponenter\Fjärrskrivbordstjänster\Värd för fjärrskrivbordssession\Anslutningar hittar du principen Tillåt användare att ansluta via fjärrskrivbordstjänster .

  • Om inställningen för den här principen är Aktiverad blockerar grupprincipen inte RDP-anslutningar.

  • Om inställningen för den här principen är Inaktiverad kontrollerar du Vinnande grupprincipobjekt. Det här är grupprincipobjektet som blockerar RDP-anslutningar.

    Skärmbild av ett exempelsegment med gpresult.html där RDP:n blockera RDP på domännivå inaktiverar RDP.

    Skärmbild av ett exempelsegment med gpresult.html där lokal grupprincip inaktiverar RDP.

Kontrollera om ett grupprincipobjekt blockerar RDP på en fjärrdator

Om du vill kontrollera grupprincipkonfigurationen på en fjärrdator är kommandot nästan detsamma som för en lokal dator:

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

Filen som det här kommandot skapar (gpresult-datornamn><.html) använder samma informationsformat som den lokala datorversionen (gpresult.html) använder.

Ändra ett blockerande grupprincipobjekt

Du kan ändra de här inställningarna i grupprincipobjektredigeraren (GPE) och grupprinciphanteringskonsolen (GPM). Mer information om hur du använder grupprinciper finns i Avancerad grupprinciphantering.

Om du vill ändra blockeringsprincipen använder du någon av följande metoder:

  • I GPE får du åtkomst till lämplig nivå av grupprincipobjekt (till exempel lokal eller domän) och navigerar till Administrativa mallar för datorkonfiguration>Windows-komponenter>Fjärrskrivbordstjänster>>Fjärrskrivbord Sessionsvärdanslutningar>>Tillåt användare att ansluta via fjärrskrivbordstjänster.
    1. Ange principen till antingen Aktiverad eller Inte konfigurerad.
    2. Öppna ett kommandotolksfönster som administratör på de datorer som påverkas och kör gpupdate /force kommandot.
  • I GPM navigerar du till organisationsenheten (OU) där blockeringsprincipen tillämpas på de berörda datorerna och tar bort principen från organisationsenheten.

Kontrollera statusen för RDP-tjänsterna

På både den lokala datorn (klienten) och fjärrdatorn (måldatorn) bör följande tjänster köras:

  • Fjärrskrivbordstjänster (TermService)
  • Fjärrskrivbordstjänster UserMode Port Redirector (UmRdpService)

Du kan använda MMC-snapin-modulen Services för att hantera tjänsterna lokalt eller via fjärranslutning. Du kan också använda PowerShell för att hantera tjänsterna lokalt eller via fjärranslutning (om fjärrdatorn är konfigurerad för att acceptera powershell-fjärr-cmdletar).

Skärmbild av fjärrskrivbordstjänster i MMC-snapin-modulen Services.

Starta dem om en eller båda tjänsterna inte körs på någon av datorerna.

Kommentar

Om du startar tjänsten Fjärrskrivbordstjänster väljer du Ja för att automatiskt starta om tjänsten UserMode-portomdirigering för fjärrskrivbordstjänster.

Kontrollera att RDP-lyssnaren fungerar

Viktigt!

Det här avsnittet, metoden eller uppgiften innehåller steg som beskriver hur du ändrar registret. Det kan uppstå allvarliga problem om du gör detta felaktigt. Följ därför noggrant dessa steg. Säkerhetskopiera registret innan du ändrar det så att du kan återställa det om ett problem uppstår. Mer information om hur du säkerhetskopierar och återställer registret finns i Hur du säkerhetskopierar och återställer registret i Windows.

Kontrollera statusen för RDP-lyssnaren

För den här proceduren använder du en PowerShell-instans som har administrativa behörigheter. För en lokal dator kan du också använda en kommandotolk som har administratörsbehörighet. Den här proceduren använder dock PowerShell eftersom samma cmdletar fungerar både lokalt och via fjärranslutning.

  1. Om du vill ansluta till en fjärrdator kör du följande cmdlet:

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

    Skärmbild av qwinsta-kommandot som visar de processer som lyssnar på datorns portar.

  3. Om listan innehåller rdp-tcp statusen Listenfungerar RDP-lyssnaren. Fortsätt till Kontrollera RDP-lyssnarporten. Annars fortsätter du i steg 4.

  4. Exportera RDP-lyssnarkonfigurationen från en fungerande dator.

    1. Logga in på en dator som har samma operativsystemversion som den berörda datorn har och få åtkomst till datorns register (till exempel med hjälp av Registereditorn).

    2. Gå till följande registerpost:

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

    3. Exportera posten till en .reg fil. I Registereditorn högerklickar du till exempel på posten, väljer Exportera och anger sedan ett filnamn för de exporterade inställningarna.

    4. Kopiera den exporterade .reg filen till den berörda datorn.

  5. Om du vill importera RDP-lyssnarkonfigurationen öppnar du ett PowerShell-fönster som har administratörsbehörighet på den berörda datorn (eller öppnar PowerShell-fönstret och ansluter till den berörda datorn via fjärranslutning).

    1. Om du vill säkerhetskopiera den befintliga registerposten anger du följande cmdlet:

      cmd /c 'reg export "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-tcp" C:\Rdp-tcp-backup.reg'
      
    2. Om du vill ta bort den befintliga registerposten anger du följande cmdletar:

      Remove-Item -path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-tcp' -Recurse -Force
      
    3. Om du vill importera den nya registerposten och sedan starta om tjänsten anger du följande cmdletar:

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

      Ersätt <filnamnet> med namnet på den exporterade .reg filen.

  6. Testa konfigurationen genom att prova fjärrskrivbordsanslutningen igen. Om du fortfarande inte kan ansluta startar du om den berörda datorn.

  7. Om du fortfarande inte kan ansluta kontrollerar du statusen för det självsignerade RDP-certifikatet.

Kontrollera statusen för det självsignerade RDP-certifikatet

  1. Om du fortfarande inte kan ansluta öppnar du MMC-snapin-modulen Certifikat. När du uppmanas att välja det certifikatarkiv som ska hanteras väljer du Datorkonto och sedan den berörda datorn.
  2. I mappen Certifikat under Fjärrskrivbord tar du bort det självsignerade RDP-certifikatet.
  3. Starta om tjänsten Fjärrskrivbordstjänster på den berörda datorn.
  4. Förnya snapin-modulen Certificates.
  5. Om det självsignerade RDP-certifikatet inte har återskapats kontrollerar du behörigheterna för mappen MachineKeys.

Kontrollera behörigheterna för MachineKeys-mappen

  1. Öppna Utforskaren på den berörda datorn och gå sedan till C:\ProgramData\Microsoft\Crypto\RSA\.
  2. Högerklicka på MachineKeys och välj Egenskaper>Säkerhet>Avancerat.
  3. Kontrollera att följande behörigheter är konfigurerade:
    • Builtin\Administrators: Fullständig kontroll
    • Alla: Läsa, skriva

Kontrollera RDP-lyssnarporten

På både den lokala datorn (klienten) och fjärrdatorn (måldatorn) bör RDP-lyssnaren lyssna på port 3389. Inga andra program ska använda den här porten.

Viktigt!

Det här avsnittet, metoden eller uppgiften innehåller steg som beskriver hur du ändrar registret. Det kan uppstå allvarliga problem om du gör detta felaktigt. Följ därför noggrant dessa steg. Säkerhetskopiera registret innan du ändrar det så att du kan återställa det om ett problem uppstår. Mer information om hur du säkerhetskopierar och återställer registret finns i Hur du säkerhetskopierar och återställer registret i Windows.

Om du vill kontrollera eller ändra RDP-porten använder du Registereditorn:

  1. Gå till „Start“ meni, välj Kör och ange sedan regedt32 i textrutan som visas.

    • Om du vill ansluta till en fjärrdator väljer du Arkiv och sedan Anslut nätverksregister.
    • I dialogrutan Välj dator anger du namnet på fjärrdatorn, markerar Kontrollera namn och väljer sedan OK.
  2. Öppna registret och navigera till HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\<listener>.

    Skärmbild av undernyckeln PortNumber för RDP-protokollet.

  3. Om PortNumber har ett annat värde än 3389 ändrar du det till 3389.

    Viktigt!

    Du kan använda fjärrskrivbordstjänster med en annan port. Vi rekommenderar dock inte att du gör detta. Den här artikeln beskriver inte hur du felsöker den typen av konfiguration.

  4. När du har ändrat portnumret startar du om tjänsten Fjärrskrivbordstjänster.

Kontrollera att ett annat program inte försöker använda samma port

För den här proceduren använder du en PowerShell-instans som har administrativa behörigheter. För en lokal dator kan du också använda en kommandotolk som har administratörsbehörighet. Den här proceduren använder dock PowerShell eftersom samma cmdletar fungerar lokalt och på distans.

  1. Öppna ett PowerShell-fönster. Om du vill ansluta till en fjärrdator anger du Enter-PSSession -ComputerName <computer name>.

  2. Ange följande kommando:

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

    Skärmbild av netstat-kommandot som skapar en lista över portar och de tjänster som lyssnar på dem.

  3. Leta efter en post för TCP-port 3389 (eller den tilldelade RDP-porten) med statusen Lyssna.

    Kommentar

    Processidentifieraren (PID) för processen eller tjänsten som använder den porten visas under PID-kolumnen.

  4. Ange följande kommando för att avgöra vilket program som använder port 3389 (eller den tilldelade RDP-porten):

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

    Skärmbild av kommandot tasklist som rapporterar information om en viss process.

  5. Leta efter en post för DET PID-nummer som är associerat med porten (från netstat utdata). De tjänster eller processer som är associerade med denna PID visas i den högra kolumnen.

  6. Om ett annat program eller en tjänst än Fjärrskrivbordstjänster (TermServ.exe) använder porten kan du lösa konflikten med någon av följande metoder:

    • Konfigurera det andra programmet eller tjänsten så att den använder en annan port (rekommenderas).
    • Avinstallera det andra programmet eller tjänsten.
    • Konfigurera RDP att använda en annan port och starta sedan om tjänsten Fjärrskrivbordstjänster (rekommenderas inte).

Kontrollera om en brandvägg blockerar RDP-porten

psping Använd verktyget för att testa om du kan nå den berörda datorn med hjälp av port 3389.

  1. Gå till en annan dator som inte påverkas och ladda ned psping.

  2. Öppna ett kommandotolksfönster som administratör, ändra till katalogen där du installerade pspingoch ange sedan följande kommando:

    psping -accepteula <computer IP>:3389
    
  3. Kontrollera resultatet av psping kommandot för att få resultat, till exempel följande:

    • Connecting to \<computer IP\>: Fjärrdatorn kan nås.
    • (0% loss): Alla försök att ansluta lyckades.
    • The remote computer refused the network connection: Fjärrdatorn kan inte nås.
    • (100% loss): Alla försök att ansluta misslyckades.
  4. Kör psping på flera datorer för att testa möjligheten att ansluta till den berörda datorn.

  5. Observera om den berörda datorn blockerar anslutningar från alla andra datorer, vissa andra datorer eller bara en annan dator.

  6. Rekommenderade nästa steg:

    • Be nätverksadministratörerna att kontrollera att nätverket tillåter RDP-trafik till den berörda datorn.
    • Undersök konfigurationerna av brandväggar mellan källdatorerna och den berörda datorn (inklusive Windows-brandväggen på den berörda datorn) för att avgöra om en brandvägg blockerar RDP-porten.