Zapora systemu operacyjnego gościa maszyny wirtualnej platformy Azure blokuje ruch przychodzący
Dotyczy: ✔️ maszyny wirtualne z systemem Windows
W tym artykule omówiono sposób rozwiązywania problemu z portalem pulpitu zdalnego (RDP), który występuje, jeśli zapora systemu operacyjnego gościa blokuje ruch przychodzący.
Symptomy
Nie można użyć połączenia RDP, aby nawiązać połączenie z maszyną wirtualną platformy Azure. Z diagnostyki rozruchu —> zrzut ekranu pokazuje, że system operacyjny jest w pełni załadowany na ekranie powitalnym (Ctrl+Alt+Del).
Przyczyna
Przyczyna 1
Reguła protokołu RDP nie jest skonfigurowana tak, aby zezwalała na ruch RDP.
Przyczyna 2
Profile zapory systemu gościa są skonfigurowane w celu blokowania wszystkich połączeń przychodzących, w tym ruchu RDP.
Rozwiązanie
Przed wykonaniem tych kroków wykonaj migawkę dysku systemowego maszyny wirtualnej, której dotyczy problem, jako kopię zapasową. Aby uzyskać więcej informacji, zobacz Migawka dysku.
Aby rozwiązać ten problem, użyj jednej z metod w temacie Jak używać narzędzi zdalnych do rozwiązywania problemów z maszyną wirtualną platformy Azure w celu zdalnego nawiązywania połączenia z maszyną wirtualną, a następnie edytuj reguły zapory systemu operacyjnego gościa, aby zezwolić na ruch RDP.
Rozwiązywanie problemów w trybie online
Połącz się z konsolą szeregową , a następnie otwórz wystąpienie programu PowerShell. Jeśli konsola szeregowa nie jest włączona na maszynie wirtualnej, przejdź do pozycji "Napraw maszynę wirtualną w trybie offline.
Środki zaradcze 1
Jeśli agent platformy Azure jest zainstalowany i działa poprawnie na maszynie wirtualnej, możesz użyć opcji "Resetuj tylko konfigurację" w obszarze Hasło do resetowania pomocy>w menu maszyny wirtualnej.
Uruchomienie tej opcji odzyskiwania powoduje wykonanie następujących czynności:
Włącza składnik RDP, jeśli jest wyłączony.
Włącza wszystkie profile zapory systemu Windows.
Upewnij się, że reguła protokołu RDP jest włączona w Zaporze systemu Windows.
Jeśli poprzednie kroki nie zadziałają, ręcznie zresetuj regułę zapory. W tym celu wykonaj zapytanie dotyczące wszystkich reguł zawierających nazwę "Pulpit zdalny", uruchamiając następujące polecenie:
netsh advfirewall firewall show rule dir=in name=all | select-string -pattern "(Name.*Remote Desktop)" -context 9,4 | more
Jeśli port RDP został ustawiony na dowolny inny port inny niż 3389, musisz znaleźć dowolną regułę niestandardową, która mogła zostać utworzona i ustawiona na ten port. Aby wykonać zapytanie dotyczące wszystkich reguł ruchu przychodzącego, które mają port niestandardowy, uruchom następujące polecenie:
netsh advfirewall firewall show rule dir=in name=all | select-string -pattern "(LocalPort.*<CUSTOM PORT>)" -context 9,4 | more
Jeśli zobaczysz, że reguła jest wyłączona, włącz ją. Aby otworzyć całą grupę, taką jak wbudowana grupa pulpitu zdalnego, uruchom następujące polecenie:
netsh advfirewall firewall set rule group="Remote Desktop" new enable=yes
W przeciwnym razie, aby otworzyć konkretną regułę pulpitu zdalnego (TCP-In), uruchom następujące polecenie:
netsh advfirewall firewall set rule name="<CUSTOM RULE NAME>" new enable=yes
Aby rozwiązać problemy, możesz włączyć opcję WYŁ. profile zapory:
netsh advfirewall set allprofiles state off
Po zakończeniu rozwiązywania problemów i poprawnym ustawieniu zapory ponownie włącz zaporę.
Uwaga 16.
Nie musisz ponownie uruchamiać maszyny wirtualnej, aby zastosować te zmiany.
Spróbuj nawiązać połączenie RDP w celu uzyskania dostępu do maszyny wirtualnej.
Środki zaradcze 2
Wykonaj zapytanie dotyczące profilów zapory, aby określić, czy zasady zapory dla ruchu przychodzącego mają wartość BlockInboundAlways:
netsh advfirewall show allprofiles | more
Uwaga 16.
Poniższe wskazówki dotyczą zasad zapory w zależności od sposobu jej konfigurowania:
- BlockInbound: cały ruch przychodzący zostanie zablokowany, chyba że masz regułę zezwalającą na ten ruch.
- BlockInboundAlways: wszystkie reguły zapory zostaną zignorowane, a cały ruch zostanie zablokowany.
Ustaw wartość DefaultInboundAction na nie zawsze zablokowany ruch. Aby to zrobić, uruchom następujące polecenie:
netsh advfirewall set allprofiles firewallpolicy blockinbound,allowoutbound
Ponownie wykonaj zapytanie dotyczące profilów, aby upewnić się, że zmiany zostały wprowadzone pomyślnie. Aby to zrobić, uruchom następujące polecenie:
netsh advfirewall show allprofiles | more
Uwaga 16.
Nie musisz ponownie uruchamiać maszyny wirtualnej, aby zastosować zmiany.
Upewnij się, że dodano regułę ruchu przychodzącego dla połączenia RDP.
Spróbuj ponownie uzyskać dostęp do maszyny wirtualnej za pośrednictwem protokołu RDP.
Środki zaradcze trybu offline
Dołącz dysk systemowy do maszyny wirtualnej odzyskiwania.
Uruchom połączenie pulpitu zdalnego z maszyną wirtualną odzyskiwania.
Upewnij się, że dysk jest oflagowany jako Online w konsoli zarządzania dyskami. Zwróć uwagę na literę dysku przypisaną do dołączonego dysku systemowego.
Środki zaradcze 1
Zobacz Jak włączyć i wyłączyć regułę zapory w systemie operacyjnym gościa.
Środki zaradcze 2
Dołącz dysk systemowy do maszyny wirtualnej odzyskiwania.
Uruchom połączenie pulpitu zdalnego z maszyną wirtualną odzyskiwania.
Po dołączeniu dysku systemowego do maszyny wirtualnej odzyskiwania upewnij się, że dysk jest oflagowany jako Online w konsoli zarządzania dyskami. Zwróć uwagę na literę dysku przypisaną do dołączonego dysku systemu operacyjnego.
Otwórz wystąpienie programu PowerShell z podwyższonym poziomem uprawnień, a następnie uruchom następujący skrypt:
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
Sprawdź, czy problem został rozwiązany.
Skontaktuj się z nami, aby uzyskać pomoc
Jeśli masz pytania lub potrzebujesz pomocy, utwórz wniosek o pomoc techniczną lub zadaj pytanie w społeczności wsparcia dla platformy Azure. Możesz również przesłać opinię o produkcie do społeczności opinii na temat platformy Azure.