Szczegółowe kroki rozwiązywania problemów z połączeniem pulpitu zdalnego z maszynami wirtualnymi z systemem Windows na platformie Azure
Ten artykuł zawiera szczegółowe kroki rozwiązywania problemów dotyczące diagnozowania i naprawiania złożonych błędów pulpitu zdalnego dla maszyn wirtualnych platformy Azure z systemem Windows.
Ważna
Aby wyeliminować częstsze błędy pulpitu zdalnego, przed kontynuowaniem zapoznaj się z podstawowym artykułem dotyczącym rozwiązywania problemów z pulpitem zdalnym .
Może wystąpić komunikat o błędzie pulpitu zdalnego, który nie przypomina żadnego z określonych komunikatów o błędach opisanych w podstawowym przewodniku rozwiązywania problemów z pulpitem zdalnym. Wykonaj następujące kroki, aby ustalić, dlaczego klient pulpitu zdalnego (RDP) nie może nawiązać połączenia z usługą RDP na maszynie wirtualnej platformy Azure.
Składniki połączenia pulpitu zdalnego
Następujące składniki są zaangażowane w połączenie RDP:
Przed kontynuowaniem może to pomóc w mentalnym przejrzeniu tego, co zmieniło się od czasu ostatniego pomyślnego połączenia pulpitu zdalnego z maszyną wirtualną. Przykład:
- Publiczny adres IP maszyny wirtualnej lub usługi w chmurze zawierającej maszynę wirtualną (nazywaną również wirtualnym adresem IP VIP) uległ zmianie. Niepowodzenie protokołu RDP może być spowodowane tym, że pamięć podręczna klienta DNS nadal ma stary adres IP zarejestrowany dla nazwy DNS. Opróżnij pamięć podręczną klienta DNS i spróbuj ponownie połączyć maszynę wirtualną. Możesz też spróbować nawiązać połączenie bezpośrednio z nowym adresem VIP.
- Używasz aplikacji innej firmy do zarządzania połączeniami pulpitu zdalnego, a nie połączenia generowanego przez Azure Portal. Sprawdź, czy konfiguracja aplikacji zawiera poprawny port TCP dla ruchu pulpitu zdalnego. Możesz sprawdzić ten port dla klasycznej maszyny wirtualnej w Azure Portal, klikając punkty końcowe ustawień > maszyny wirtualnej.
Kroki wstępne
Przed przejściem do szczegółowego rozwiązywania problemów,
- Sprawdź stan maszyny wirtualnej w Azure Portal pod kątem wszelkich oczywistych problemów.
- Postępuj zgodnie z instrukcjami szybkiej poprawki typowych błędów PROTOKOŁU RDP w podstawowym przewodniku rozwiązywania problemów.
- W przypadku obrazów niestandardowych upewnij się, że dysk VHD jest prawidłowo przygotowany przed przekazaniem go. Aby uzyskać więcej informacji, zobacz Prepare a Windows VHD or VHDX to upload to Azure (Przygotowywanie dysku VHD lub VHDX systemu Windows do przekazania na platformę Azure).
Spróbuj ponownie połączyć się z maszyną wirtualną za pośrednictwem pulpitu zdalnego po wykonaniu tych kroków.
Szczegółowe kroki rozwiązywania problemów
Klient pulpitu zdalnego może nie być w stanie nawiązać połączenia z usługą pulpitu zdalnego na maszynie wirtualnej platformy Azure z powodu problemów z następującymi źródłami:
- Komputer kliencki pulpitu zdalnego
- Urządzenie brzegowe intranetu organizacji
- Punkt końcowy usługi w chmurze i lista kontroli dostępu (ACL)
- Sieciowe grupy zabezpieczeń
- Maszyna wirtualna platformy Azure z systemem Windows
Źródło 1: Komputer kliencki pulpitu zdalnego
Sprawdź, czy komputer może nawiązywać połączenia pulpitu zdalnego z innym lokalnym komputerem z systemem Windows.
Jeśli nie możesz, sprawdź następujące ustawienia na komputerze:
- Lokalne ustawienie zapory, które blokuje ruch pulpitu zdalnego.
- Lokalnie zainstalowane oprogramowanie serwera proxy klienta, które uniemożliwia połączenia pulpitu zdalnego.
- Lokalnie zainstalowane oprogramowanie do monitorowania sieci, które uniemożliwia połączenia pulpitu zdalnego.
- Inne typy oprogramowania zabezpieczającego, które monitorują ruch lub zezwalają/nie zezwalają na określone typy ruchu, które uniemożliwiają połączenia pulpitu zdalnego.
We wszystkich tych przypadkach tymczasowo wyłącz oprogramowanie i spróbuj nawiązać połączenie z komputerem lokalnym za pośrednictwem pulpitu zdalnego. Jeśli w ten sposób możesz dowiedzieć się, jaka jest rzeczywista przyczyna, skontaktuj się z administratorem sieci, aby poprawić ustawienia oprogramowania, aby zezwolić na połączenia pulpitu zdalnego.
Źródło 2: Urządzenie brzegowe intranetu organizacji
Sprawdź, czy komputer bezpośrednio połączony z Internetem może nawiązywać połączenia pulpitu zdalnego z maszyną wirtualną platformy Azure.
Jeśli nie masz komputera, który jest bezpośrednio połączony z Internetem, utwórz i przetestuj ją przy użyciu nowej maszyny wirtualnej platformy Azure w grupie zasobów lub usłudze w chmurze. Aby uzyskać więcej informacji, zobacz Tworzenie maszyny wirtualnej z systemem Windows na platformie Azure. Po zakończeniu testu możesz usunąć maszynę wirtualną i grupę zasobów lub usługę w chmurze.
Jeśli możesz utworzyć połączenie pulpitu zdalnego z komputerem bezpośrednio podłączonym do Internetu, sprawdź urządzenie brzegowe intranetu organizacji pod kątem:
- Wewnętrzna zapora blokująca połączenia HTTPS z Internetem.
- Serwer proxy uniemożliwia połączenia pulpitu zdalnego.
- Wykrywanie włamań lub oprogramowanie do monitorowania sieci działające na urządzeniach w sieci brzegowej, które uniemożliwia połączenia pulpitu zdalnego.
Skontaktuj się z administratorem sieci, aby poprawić ustawienia urządzenia brzegowego intranetu organizacji, aby zezwolić na połączenia pulpitu zdalnego oparte na protokole HTTPS z Internetem.
Źródło 3. Punkt końcowy usługi w chmurze i lista ACL
Ważna
Klasyczne maszyny wirtualne zostaną wycofane 1 września 2023 r.
Jeśli używasz zasobów IaaS z usługi ASM, zakończ migrację do 1 września 2023 r. Zachęcamy do dokonania zmiany wcześniej, aby skorzystać z wielu ulepszeń funkcji w usłudze Azure Resource Manager.
Aby uzyskać więcej informacji, zobacz Migrowanie zasobów IaaS do usługi Azure Resource Manager do 1 września 2023 r.
W przypadku maszyn wirtualnych utworzonych przy użyciu klasycznego modelu wdrażania sprawdź, czy inna maszyna wirtualna platformy Azure, która znajduje się w tej samej usłudze w chmurze lub sieci wirtualnej, może nawiązywać połączenia pulpitu zdalnego z maszyną wirtualną platformy Azure.
Uwaga
W przypadku maszyn wirtualnych utworzonych w Resource Manager przejdź do pozycji Źródło 4: sieciowe grupy zabezpieczeń.
Jeśli nie masz innej maszyny wirtualnej w tej samej usłudze w chmurze lub sieci wirtualnej, utwórz tę maszynę. Wykonaj kroki opisane w temacie Tworzenie maszyny wirtualnej z systemem Windows na platformie Azure. Usuń test maszynę wirtualną po zakończeniu testu.
Jeśli możesz nawiązać połączenie za pośrednictwem pulpitu zdalnego z maszyną wirtualną w tej samej usłudze w chmurze lub sieci wirtualnej, sprawdź następujące ustawienia:
- Konfiguracja punktu końcowego dla ruchu pulpitu zdalnego na docelowej maszynie wirtualnej: prywatny port TCP punktu końcowego musi być zgodny z portem TCP, na którym nasłuchuje usługa pulpitu zdalnego maszyny wirtualnej (wartość domyślna to 3389).
- Lista ACL dla punktu końcowego ruchu pulpitu zdalnego na docelowej maszynie wirtualnej: listy ACL umożliwiają określenie dozwolonego lub niedozwolonego ruchu przychodzącego z Internetu na podstawie jego źródłowego adresu IP. Błędnie skonfigurowane listy ACL mogą uniemożliwiać przychodzący ruch pulpitu zdalnego do punktu końcowego. Sprawdź listy ACL, aby upewnić się, że ruch przychodzący z publicznych adresów IP serwera proxy lub innego serwera brzegowego jest dozwolony. Aby uzyskać więcej informacji, zobacz Co to jest lista Access Control sieci (ACL)?
Aby sprawdzić, czy punkt końcowy jest źródłem problemu, usuń bieżący punkt końcowy i utwórz nowy, wybierając losowy port w zakresie 49152–65535 dla numeru portu zewnętrznego. Aby uzyskać więcej informacji, zobacz How to set up endpoints to a virtual machine (Jak skonfigurować punkty końcowe na maszynie wirtualnej).
Źródło 4. Sieciowe grupy zabezpieczeń
Sieciowe grupy zabezpieczeń umożliwiają bardziej szczegółową kontrolę nad dozwolonym ruchem przychodzącym i wychodzącym. Reguły obejmujące podsieci i usługi w chmurze można tworzyć w sieci wirtualnej platformy Azure.
Użyj funkcji weryfikacji przepływu adresów IP , aby potwierdzić, czy reguła w sieciowej grupie zabezpieczeń blokuje ruch do lub z maszyny wirtualnej. Możesz również przejrzeć obowiązujące reguły grupy zabezpieczeń, aby upewnić się, że reguła ruchu przychodzącego sieciowej grupy zabezpieczeń "Zezwalaj" istnieje i ma priorytet dla portu RDP (domyślnie 3389). Aby uzyskać więcej informacji, zobacz Używanie obowiązujących reguł zabezpieczeń do rozwiązywania problemów z przepływem ruchu maszyn wirtualnych.
Źródło 5: Maszyna wirtualna platformy Azure z systemem Windows
Postępuj zgodnie z instrukcjami w tym artykule. W tym artykule zresetowano usługę pulpitu zdalnego na maszynie wirtualnej:
- Włącz domyślną regułę zapory systemu Windows "Pulpit zdalny" (port TCP 3389).
- Włącz połączenia pulpitu zdalnego, ustawiając wartość rejestru HKLM\System\CurrentControlSet\Control\Terminal Server\fDenyTSConnections na 0.
Spróbuj ponownie nawiązać połączenie z komputera. Jeśli nadal nie możesz nawiązać połączenia za pośrednictwem pulpitu zdalnego, sprawdź, czy występują następujące możliwe problemy:
- Usługa pulpitu zdalnego nie jest uruchomiona na docelowej maszynie wirtualnej.
- Usługa pulpitu zdalnego nie nasłuchuje na porcie TCP 3389.
- Zapora systemu Windows lub inna zapora lokalna ma regułę ruchu wychodzącego, która uniemożliwia ruch pulpitu zdalnego.
- Wykrywanie włamań lub oprogramowanie do monitorowania sieci działające na maszynie wirtualnej platformy Azure uniemożliwia nawiązywanie połączeń pulpitu zdalnego.
W przypadku maszyn wirtualnych utworzonych przy użyciu klasycznego modelu wdrażania można użyć zdalnej sesji Azure PowerShell do maszyny wirtualnej platformy Azure. Najpierw należy zainstalować certyfikat usługi w chmurze hostującej maszynę wirtualną. Przejdź do pozycji Konfigurowanie bezpiecznego zdalnego dostępu programu PowerShell do usługi Azure Virtual Machines i pobierz plik skryptu InstallWinRMCertAzureVM.ps1 na komputer lokalny.
Następnie zainstaluj Azure PowerShell, jeśli jeszcze tego nie zrobiono. Zobacz Jak zainstalować i skonfigurować Azure PowerShell.
Następnie otwórz wiersz polecenia Azure PowerShell i zmień bieżący folder na lokalizację pliku skryptu InstallWinRMCertAzureVM.ps1. Aby uruchomić skrypt Azure PowerShell, należy ustawić poprawne zasady wykonywania. Uruchom polecenie Get-ExecutionPolicy , aby określić bieżący poziom zasad. Aby uzyskać informacje na temat ustawiania odpowiedniego poziomu, zobacz Set-ExecutionPolicy.
Następnie podaj nazwę subskrypcji platformy Azure, nazwę usługi w chmurze i nazwę maszyny wirtualnej (usuwając < znaki i > ), a następnie uruchom te polecenia.
$subscr="<Name of your Azure subscription>"
$serviceName="<Name of the cloud service that contains the target virtual machine>"
$vmName="<Name of the target virtual machine>"
.\InstallWinRMCertAzureVM.ps1 -SubscriptionName $subscr -ServiceName $serviceName -Name $vmName
Prawidłową nazwę subskrypcji można uzyskać z właściwości SubscriptionName wyświetlanego polecenia Get-AzureSubscription . Nazwę usługi w chmurze dla maszyny wirtualnej można uzyskać z kolumny ServiceName na ekranie polecenia Get-AzureVM .
Sprawdź, czy masz nowy certyfikat. Otwórz przystawkę Certyfikaty dla bieżącego użytkownika i wyszukaj folder Zaufane główne urzędy certyfikacji\Certyfikaty . Certyfikat z nazwą DNS usługi w chmurze powinien zostać wyświetlony w kolumnie Wystawione do (na przykład: cloudservice4testing.cloudapp.net).
Następnie zainicjuj sesję zdalnego Azure PowerShell przy użyciu tych poleceń.
$uri = Get-AzureWinRMUri -ServiceName $serviceName -Name $vmName
$creds = Get-Credential
Enter-PSSession -ConnectionUri $uri -Credential $creds
Po wprowadzeniu prawidłowych poświadczeń administratora powinien zostać wyświetlony komunikat podobny do następującego Azure PowerShell monitu:
[cloudservice4testing.cloudapp.net]: PS C:\Users\User1\Documents>
Pierwsza część tego monitu to nazwa usługi w chmurze zawierająca docelową maszynę wirtualną, która może różnić się od "cloudservice4testing.cloudapp.net". Teraz możesz wydać polecenia Azure PowerShell dla tej usługi w chmurze, aby zbadać wymienione problemy i poprawić konfigurację.
Aby ręcznie poprawić port TCP nasłuchujący usług pulpitu zdalnego
W wierszu polecenia sesji Azure PowerShell zdalnej uruchom to polecenie.
Get-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name "PortNumber"
Właściwość PortNumber zawiera bieżący numer portu. W razie potrzeby zmień numer portu pulpitu zdalnego z powrotem na wartość domyślną (3389), używając tego polecenia.
Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name "PortNumber" -Value 3389
Sprawdź, czy port został zmieniony na 3389 za pomocą tego polecenia.
Get-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" -Name "PortNumber"
Zamknij sesję zdalnego Azure PowerShell za pomocą tego polecenia.
Exit-PSSession
Sprawdź, czy punkt końcowy pulpitu zdalnego dla maszyny wirtualnej platformy Azure używa również portu TCP 3398 jako portu wewnętrznego. Uruchom ponownie maszynę wirtualną platformy Azure i spróbuj ponownie nawiązać połączenie pulpitu zdalnego.
Dodatkowe materiały
Jak zresetować hasło lub usługę pulpitu zdalnego dla maszyn wirtualnych z systemem Windows
Jak zainstalować i skonfigurować Azure PowerShell
Rozwiązywanie problemów z dostępem do aplikacji uruchomionej na maszynie wirtualnej platformy Azure
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 platformy Azure.
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla