Freigeben über


Aktivieren oder Deaktivieren einer Firewallregel unter einem Gastbetriebssystem in Azure VM

Gilt für: ✔️ Windows-VMs

Dieser Artikel enthält eine Referenz zur Problembehandlung in Situationen, in denen Sie vermuten, dass die Firewall des Gastbetriebssystems teilweise Datenverkehr zu einem virtuellen Computer (VM) filtert. Dies kann aus folgenden Gründen hilfreich sein:

  • Wenn an der Firewall absichtlich eine Änderung vorgenommen wurde, die zum Ausfall der RDP-Verbindungen führte, können Sie mithilfe der „Benutzerdefinierten Skripterweiterung“ das Problem lösen.

  • Deaktivieren aller Firewallprofile ist eine wesentlich sicherere Methode zur Problembehandlung als das Festlegen der RDP-spezifischen Firewallregel.

Lösung

Wie Sie die Firewallregeln konfigurieren, hängt von der erforderlichen Zugriffsebene des virtuellen Computers ab. Die folgenden Beispiele verwenden RDP-Regeln. Allerdings können die gleichen Methoden durch Zeigen auf den richtigen Registrierungsschlüssel für jede andere Art von Datenverkehr angewendet werden.

Onlineproblembehandlung

Risikominderung 1: Benutzerdefinierte Skripterweiterung

  1. Erstellen Sie Ihr Skript mit der folgenden Vorlage.

    • Um eine Regel zu aktivieren:

      netsh advfirewall firewall set rule dir=in name="Remote Desktop - User Mode (TCP-In)" new enable=yes
      
    • Um eine Regel zu deaktivieren:

      netsh advfirewall firewall set rule dir=in name="Remote Desktop - User Mode (TCP-In)" new enable=no
      
  2. Laden Sie dieses Skript mithilfe des Features Benutzerdefinierte Skripterweiterung in das Azure-Portal hoch.

Risikominderung 2: Remote-PowerShell

Wenn der virtuelle Computer online ist und ein anderer virtueller Computer im gleichen virtuellen Netzwerk darauf zugreifen kann, können Sie die folgenden vorbeugenden Maßnahmen mithilfe des anderen virtuellen Computers durchführen.

  1. Öffnen Sie auf dem virtuellen Computer, der zur Problembehandlung dient, ein PowerShell-Konsolenfenster.

  2. Führen Sie die folgenden Befehle wie erforderlich aus.

    • Um eine Regel zu aktivieren:

      Enter-PSSession (New-PSSession -ComputerName "<HOSTNAME>" -Credential (Get-Credential) -SessionOption (New-PSSessionOption -SkipCACheck -SkipCNCheck)) 
      Enable-NetFirewallRule -DisplayName  "RemoteDesktop-UserMode-In-TCP"
      exit
      
    • Um eine Regel zu deaktivieren:

      Enter-PSSession (New-PSSession -ComputerName "<HOSTNAME>" -Credential (Get-Credential) -SessionOption (New-PSSessionOption -SkipCACheck -SkipCNCheck)) 
      Disable-NetFirewallRule -DisplayName  "RemoteDesktop-UserMode-In-TCP"
      exit
      

Risikominderung 3: PSTools-Befehle

Wenn der virtuelle Computer online ist und ein anderer virtueller Computer im gleichen virtuellen Netzwerk darauf zugreifen kann, können Sie die folgenden vorbeugenden Maßnahmen mithilfe des anderen virtuellen Computers durchführen.

  1. Laden Sie auf den virtuellen Computer, der zur Problembehandlung dient, PSTools herunter.

  2. Öffnen Sie eine CMD-Instanz, und greifen Sie dann über deren interne IP-Adresse (DIP) auf den virtuellen Computer zu.

    • Um eine Regel zu aktivieren:

      psexec \\<DIP> ​-u <username> cmd
      netsh advfirewall firewall set rule dir=in name="Remote Desktop - User Mode (TCP-In)" new enable=yes
      
    • Um eine Regel zu deaktivieren:

      psexec \\<DIP> ​-u <username> cmd
      netsh advfirewall firewall set rule dir=in name="Remote Desktop - User Mode (TCP-In)" new enable=no
      

Vorbeugende Maßnahme 4: Remoteregistrierung

Wenn der virtuelle Computer online ist und ein anderer virtueller Computer im gleichen virtuellen Netzwerk darauf zugreifen kann, können Sie die Remoteregistrierung auf dem anderen virtuellen Computer verwenden.

  1. Starten Sie auf dem virtuellen Computer, der zur Problembehandlung dient, den Registrierungs-Editor (regedit.exe), und wählen Sie Datei>Mit Netzwerkregistrierung verbinden aus.

  2. Öffnen Sie die Verzweigung TARGET MACHINE\SYSTEM, und geben Sie die folgenden Werte an:

    • Um eine Regel zu aktivieren, öffnen Sie den folgenden Registrierungswert:

      TARGET MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules\RemoteDesktop-UserMode-In-TCP

      Ändern Sie dann Active=FALSE in Active=TRUE in der Zeichenfolge:

      v2.22|Action=Allow|Active=TRUE|Dir=In|Protocol=6|Profile=Domain|Profile=Private|Profile=Public|LPort=3389|App=%SystemRoot%\system32\svchost.exe|Svc=termservice|Name=\@FirewallAPI.dll,-28775|Desc=\@FirewallAPI.dll,-28756|EmbedCtxt=\@FirewallAPI.dll,-28752|

    • Um eine Regel zu deaktivieren, öffnen Sie den folgenden Registrierungswert:

      TARGET MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules\RemoteDesktop-UserMode-In-TCP

      Ändern Sie dann Active=TRUE in Active=FALSE in der Zeichenfolge:

      v2.22|Action=Allow|Active=FALSE|Dir=In|Protocol=6|Profile=Domain|Profile=Private|Profile=Public|LPort=3389|App=%SystemRoot%\system32\svchost.exe|Svc=termservice|Name=\@FirewallAPI.dll,-28775|Desc=\@FirewallAPI.dll,-28756|EmbedCtxt=\@FirewallAPI.dll,-28752|

  3. Starten Sie den virtuellen Computer neu, um diese Änderungen zu übernehmen.

Offlineproblembehandlung

Wenn Sie mit keiner Methode auf den virtuellen Computer zugreifen können, ist die „Benutzerdefinierte Skripterweiterung“ nicht einsetzbar, und Sie müssen im OFFLINEMODUS direkt über den Betriebssystemdatenträger arbeiten.

Erstellen Sie eine Momentaufnahme des Systemdatenträgers des betroffenen virtuellen Computers als Sicherung, bevor Sie die unten angegebenen Schritte ausführen. Weitere Informationen finden Sie unter Erstellen einer Momentaufnahme eines Datenträgers.

  1. Fügen Sie den Systemdatenträger an einen virtuellen Wiederherstellungscomputer an.

  2. Stellen Sie eine Remotedesktopverbindung mit dem virtuellen Wiederherstellungscomputer her.

  3. Stellen Sie sicher, dass der Datenträger in der Datenträgerverwaltungskonsole als Online gekennzeichnet ist. Achten Sie auf den Laufwerkbuchstaben, der dem angefügten Betriebssystemdatenträger zugewiesen ist.

  4. Bevor Sie Änderungen vornehmen, erstellen Sie eine Kopie des Ordners „\windows\system32\config“ für den Fall, dass ein Rollback der Änderungen erforderlich ist.

  5. Starten Sie auf dem virtuellen Computer, der zur Problembehandlung dient, den Registrierungs-Editor (regedit.exe).

  6. Wählen Sie den Schlüssel HKEY_LOCAL_MACHINE und dann im Menü die Optionen Datei>Struktur laden aus.

    Screenshot des Schlüssels HKEY_LOCAL_MACHINE und der Option „Struktur laden“ im Menü „Datei“ des Registrierungs-Editors.

  7. Suchen und öffnen Sie die Datei „\windows\system32\config\SYSTEM“.

    Notiz

    Sie werden aufgefordert, einen Namen einzugeben. Geben Sie BROKENSYSTEM ein, und erweitern Sie dann HKEY_LOCAL_MACHINE. Daraufhin wird ein zusätzlicher Schlüssel mit dem Namen BROKENSYSTEM angezeigt. Für diese Problembehandlung binden wir diese Problemstrukturen als BROKENSYSTEM ein.

  8. Nehmen Sie die folgenden Änderungen an der Verzweigung BROKENSYSTEM vor:

    1. Überprüfen Sie, mit welchem Registrierungsschlüssel ControlSet der virtuelle Computer startet. Sie sehen seine Schlüsselnummer in HKLM\BROKENSYSTEM\Select\Current.

    2. Um eine Regel zu aktivieren, öffnen Sie den folgenden Registrierungswert:

      HKLM\BROKENSYSTEM\ControlSet00X\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules\RemoteDesktop-UserMode-In-TCP

      Ändern Sie dann Active=FALSE in Active=TRUE.

      v2.22|Action=Allow|Active=TRUE|Dir=In|Protocol=6|Profile=Domain|Profile=Private|Profile=Public|LPort=3389|App=%SystemRoot%\system32\svchost.exe|Svc=termservice|Name=\@FirewallAPI.dll,-28775|Desc=\@FirewallAPI.dll,-28756|EmbedCtxt=\@FirewallAPI.dll,-28752|

    3. Um eine Regel zu deaktivieren, öffnen Sie den folgenden Registrierungsschlüssel:

      HKLM\BROKENSYSTEM\ControlSet00X\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules\RemoteDesktop-UserMode-In-TCP

      Ändern Sie dann Active=TRUE in Active=FALSE.

      v2.22|Action=Allow|Active=FALSE|Dir=In|Protocol=6|Profile=Domain|Profile=Private|Profile=Public|LPort=3389|App=%SystemRoot%\system32\svchost.exe|Svc=termservice|Name=\@FirewallAPI.dll,-28775|Desc=\@FirewallAPI.dll,-28756|EmbedCtxt=\@FirewallAPI.dll,-28752|

  9. Heben Sie BROKENSYSTEM hervor, und wählen Sie dann im Menü Datei>Struktur entladen aus.

  10. Trennen des Betriebssystemdatenträgers und erneutes Erstellen des virtuellen Computers.

  11. Überprüfen Sie, ob das Problem behoben ist.

Kontaktieren Sie uns für Hilfe

Wenn Sie Fragen haben oder Hilfe mit Ihren Azure-Gutschriften benötigen, dann erstellen Sie beim Azure-Support eine Support-Anforderung oder fragen Sie den Azure Community-Support. Sie können auch Produktfeedback an die Azure Feedback Community senden.