Share via


Azure VM:s brandvägg för gästoperativsystem blockerar inkommande trafik

Den här artikeln beskriver hur du åtgärdar problemet med fjärrskrivbordsportalen (RDP) som inträffar om gästoperativsystemets brandvägg blockerar inkommande trafik.

Symptom

Du kan inte använda en RDP-anslutning för att ansluta till en virtuell Azure-dator (VM). Från Startdiagnostik –> Skärmbild som visar att operativsystemet är helt inläst på välkomstskärmen (Ctrl+Alt+Del).

Orsak

Orsak 1

RDP-regeln har inte konfigurerats för att tillåta RDP-trafik.

Orsak 2

Brandväggsprofilerna för gästsystemet är konfigurerade för att blockera alla inkommande anslutningar, inklusive RDP-trafiken.

Skärmbild av alternativet blockera alla inkommande anslutningar under fliken Domänprofil i fönstret för brandväggsinställning.

Lösning

Innan du följer de här stegen bör du ta en ögonblicksbild av systemdisken för den berörda virtuella datorn som en säkerhetskopia. Mer information finns i Ögonblicksbild av en disk.

Åtgärda problemet genom att använda någon av metoderna i Så här använder du fjärrverktyg för att felsöka problem med virtuella Azure-datorer för att fjärransluta till den virtuella datorn och redigera sedan brandväggsreglerna för gästoperativsystemet till Tillåt RDP-trafik.

Felsökning online

Anslut till seriekonsolen och öppna sedan en PowerShell-instans. Om seriekonsolen inte är aktiverad på den virtuella datorn går du till "Reparera den virtuella datorn offline.

Åtgärd 1

  1. Om Azure-agenten är installerad och fungerar korrekt på den virtuella datorn kan du använda alternativet "Återställ endast konfiguration" under Hjälpmed att >återställa lösenord på vm-menyn.

  2. Om du kör det här återställningsalternativet gör du följande:

    • Aktiverar en RDP-komponent om den är inaktiverad.

    • Aktiverar alla Windows-brandväggsprofiler.

    • Kontrollera att RDP-regeln är aktiverad i Windows-brandväggen.

    • Om föregående steg inte fungerar återställer du brandväggsregeln manuellt. Det gör du genom att köra frågor mot alla regler som innehåller namnet "Fjärrskrivbord" genom att köra följande kommando:

      netsh advfirewall firewall show rule dir=in name=all | select-string -pattern "(Name.*Remote Desktop)" -context 9,4 | more
      

      Om RDP-porten har angetts till någon annan port än 3389 måste du hitta en anpassad regel som kan ha skapats och angetts till den här porten. Kör följande kommando för att fråga efter alla inkommande regler som har en anpassad port:

      netsh advfirewall firewall show rule dir=in name=all | select-string -pattern "(LocalPort.*<CUSTOM PORT>)" -context 9,4 | more
      
  3. Om du ser att regeln är inaktiverad aktiverar du den. Om du vill öppna en hel grupp, till exempel den inbyggda fjärrskrivbordsgruppen, kör du följande kommando:

    netsh advfirewall firewall set rule group="Remote Desktop" new enable=yes
    

    Om du vill öppna den specifika TCP-in-regeln (Fjärrskrivbord) kör du annars följande kommando:

    netsh advfirewall firewall set rule name="<CUSTOM RULE NAME>" new enable=yes
    
  4. För felsökning kan du inaktivera brandväggsprofilerna:

    netsh advfirewall set allprofiles state off
    

    När du har felsökt och konfigurerat brandväggen korrekt aktiverar du brandväggen igen.

    Obs!

    Du behöver inte starta om den virtuella datorn för att tillämpa ändringarna.

  5. Försök att upprätta en RDP-anslutning för att få åtkomst till den virtuella datorn.

Åtgärd 2

  1. Fråga brandväggsprofilerna för att avgöra om den inkommande brandväggsprincipen är inställd på BlockInboundAlways:

    netsh advfirewall show allprofiles | more
    

    Skärmbild av frågeresultatet för de inkommande brandväggsprofilerna som innehåller BlockInboundAlways.

    Obs!

    Följande riktlinjer gäller för brandväggsprincipen, beroende på hur den har konfigurerats:

    • BlockInbound: All inkommande trafik blockeras om du inte har en regel som tillåter den trafiken.
    • BlockInboundAlways: Alla brandväggsregler ignoreras och all trafik blockeras.
  2. Ange DefaultInboundAction till inte alltid blockerad trafik. Det gör du genom att köra följande kommando:

    netsh advfirewall set allprofiles firewallpolicy blockinbound,allowoutbound
    
  3. Fråga profilerna igen för att se till att ändringen har gjorts. Det gör du genom att köra följande kommando:

    netsh advfirewall show allprofiles | more
    

    Obs!

    Du behöver inte starta om den virtuella datorn för att tillämpa ändringarna.

  4. Se till att du lägger till regeln för inkommande trafik för RDP-anslutning.

  5. Försök igen för att komma åt den virtuella datorn via RDP.

Åtgärder offline

  1. Koppla systemdisken till en virtuell återställningsdator.

  2. Starta en fjärrskrivbordsanslutning till den virtuella återställningsdatorn.

  3. Kontrollera att disken har flaggats som Online i diskhanteringskonsolen. Observera enhetsbeteckningen som är tilldelad till den anslutna systemdisken.

Åtgärd 1

Se Så här Enable-Disable du en brandväggsregel i ett gästoperativsystem.

Åtgärd 2

  1. Koppla systemdisken till en virtuell återställningsdator.

  2. Starta en fjärrskrivbordsanslutning till den virtuella återställningsdatorn.

  3. När systemdisken är ansluten till den virtuella återställningsdatorn kontrollerar du att disken har flaggats som Online i konsolen Diskhantering. Observera enhetsbeteckningen som är tilldelad till den anslutna OS-disken.

  4. Öppna en upphöjd PowerShell-instans och kör sedan följande skript:

    REM Backup the registry prior doing any change
    robocopy f:\windows\system32\config f:\windows\system32\config.BACK /MT
    
    REM Mount the hive
    reg load HKLM\BROKENSYSTEM f:\windows\system32\config\SYSTEM
    
    REM Delete the keys to block all inbound connection scenario
    REG DELETE "HKLM\BROKENSYSTEM\ControlSet001\services\SharedAccess\Parameters\FirewallPolicy\DomainProfile" /v DoNotAllowExceptions
    REG DELETE "HKLM\BROKENSYSTEM\ControlSet001\services\SharedAccess\Parameters\FirewallPolicy\PublicProfile" /v DoNotAllowExceptions
    REG DELETE "HKLM\BROKENSYSTEM\ControlSet001\services\SharedAccess\Parameters\FirewallPolicy\StandardProfile" /v DoNotAllowExceptions
    REG DELETE "HKLM\BROKENSYSTEM\ControlSet002\services\SharedAccess\Parameters\FirewallPolicy\DomainProfile" /v DoNotAllowExceptions
    REG DELETE "HKLM\BROKENSYSTEM\ControlSet002\services\SharedAccess\Parameters\FirewallPolicy\PublicProfile" /v DoNotAllowExceptions
    REG DELETE "HKLM\BROKENSYSTEM\ControlSet002\services\SharedAccess\Parameters\FirewallPolicy\StandardProfile" /v DoNotAllowExceptions
    
    REM Unmount the hive
    reg unload HKLM\BROKENSYSTEM
    
  5. Koppla från systemdisken och återskapa den virtuella datorn.

  6. Kontrollera om problemet är löst.

Kontakta oss för att få hjälp

Om du har frågor eller behöver hjälp skapar du en supportförfrågan eller frågar Azure community support. Du kan också skicka produktfeedback till Azure-feedbackcommunityn.