Поделиться через


Настройка брандмауэра Windows для удаленной отладки

В сети, защищенной брандмауэром Windows, необходимо настроить брандмауэр для разрешения удаленной отладки. Visual Studio и средства удаленной отладки пытаются открыть правильные порты брандмауэра во время установки или запуска, но также может потребоваться открыть порты или разрешить приложения вручную.

В этом разделе описывается настройка брандмауэра Windows для включения удаленной отладки в Windows 10, 8/8.1 и 7; и компьютеры Windows Server 2012 R2, 2012 и 2008 R2. Visual Studio и удаленный компьютер не должны работать с той же операционной системой. Например, компьютер Visual Studio может запускать Windows 11, а удаленный компьютер может запускать Windows Server 2012 R2.

Заметка

Инструкции по настройке брандмауэра Windows немного отличаются в разных операционных системах и для старых версий Windows. Параметры Windows 8/8.1, Windows 10 и более поздних версий, а также Windows Server 2012 используют слово приложения, в то время как Windows 7 и Windows Server 2008 используют слово программы.

Настройка портов для удаленной отладки

Visual Studio и удаленный отладчик пытаются открыть правильные порты во время установки или запуска. Однако в некоторых сценариях, таких как сторонний брандмауэр, может потребоваться вручную открыть порты.

Чтобы открыть порт, выполните приведенные действия.

  1. В меню "Пуск Windows" найдите и откройте брандмауэр Windows с помощью расширенной безопасности. Начиная с Windows 10, это брандмауэр Защитника Windows с расширенной безопасностью.

  2. Для нового входящего порта выберите правила входящего трафика, а затем выберите новое правило. Для исходящего правила выберите правила исходящего трафика.

  3. В мастере нового правила для входящего трафика выберите порт, а затем нажмите кнопку Далее.

  4. Выберите TCP или UDPв зависимости от номера порта из следующих таблиц.

  5. В разделе Определенные локальные портывведите номер порта из следующих таблиц и выберите Далее.

  6. Выберите Разрешить подключение, а затем Далее.

  7. Выберите один или несколько типов сети, чтобы включить, включая тип сети для удаленного подключения, а затем выберите Далее.

  8. Добавьте имя правила (например, msvsmon, IISили Web Deploy), а затем нажмите кнопку Готово.

    Новое правило должно появиться и быть выбранным в списке правил для входящего трафика или правил для исходящего трафика.

Чтобы открыть порт с помощью PowerShell, выполните следующие действия.

Для брандмауэра Windows можно использовать такие команды PowerShell, как New-NetFirewallRule.

В следующем примере открывается порт 4026 для удаленного отладчика на удаленном компьютере. Порт и путь, которые необходимо использовать, могут отличаться.

New-NetFirewallRule -DisplayName "msvsmon" -Direction Inbound -Program "Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\Remote Debugger\x64\msvsmon.exe" -LocalPort 4026 -Protocol TCP -Authentication Required -Action Allow

В следующем примере открывается порт 4024 для удаленного отладчика на удаленном компьютере. Путь, который необходимо использовать, может отличаться.

New-NetFirewallRule -DisplayName "msvsmon" -Direction Inbound -Program "Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\Remote Debugger\x64\msvsmon.exe" -LocalPort 4024 -Protocol TCP -Authentication Required -Action Allow

Порты на удаленном компьютере, обеспечивающие удаленную отладку

Для удаленной отладки на удаленном компьютере должны быть открыты следующие порты:

порты Входящие/Исходящие протокол описание
4026 Входящий Протокол tcp Для Visual Studio 2022. Для получения дополнительной информации см. раздел распределение портов удаленного отладчика Visual Studio.
4025 Входящий Протокол tcp Для Visual Studio 2022 и Службы приложений Microsoft Azure. Этот порт используется только для удаленной отладки 32-разрядного процесса из 64-разрядной версии удаленного отладчика. Дополнительные сведения см. в разделе назначения портов удаленного отладчика Visual Studio.
4024 Входящий Протокол tcp Для службы приложений Microsoft Azure. Дополнительные сведения см. в разделе назначения портов удаленного отладчика Visual Studio.
3702 Уходящий UDP (Необязательно) Требуется для обнаружения удаленного отладчика.
порты Входящие/Исходящие протокол описание
4024 Входящий Протокол tcp Для Visual Studio 2019 и Службы приложений Microsoft Azure. Число портов увеличивается на 2 для каждой версии Visual Studio. Для получения дополнительной информации см. раздел удаленный отладчик Visual Studio: назначение портов.
4025 Входящий Протокол tcp Для Visual Studio 2019 и Службы приложений Azure. Этот порт используется только для удаленной отладки 32-разрядного процесса из 64-разрядной версии удаленного отладчика. Дополнительные сведения см. в разделе о назначении портов удаленного отладчика Visual Studio.
3702 Уходящий UDP (Необязательно) Требуется для обнаружения удаленного отладчика.

Если выбрать Использовать режим управляемой совместимости в разделе Средства>параметры>отладки, откройте эти дополнительные порты удаленного отладчика. Режим управляемой совместимости отладчика включает устаревшую версию отладчика Visual Studio 2010.

порты Входящие/Исходящие протокол описание
135, 139, 445 Уходящий Протокол tcp Обязательно.
137, 138 Уходящий UDP Обязательно.

Если политика домена требует, чтобы сетевое взаимодействие выполнялось с помощью протокола IPsec, необходимо открыть дополнительные порты как на visual Studio, так и на удаленных компьютерах. Чтобы выполнить отладку на удаленном веб-сервере служб IIS, откройте порт 80 на удаленном компьютере.

порты Входящие/Исходящие протокол описание
500, 4500 Уходящий UDP Требуется, если политика домена требует, чтобы сетевое взаимодействие выполнялось через IPsec.
80 Уходящий Протокол tcp Требуется для отладки веб-сервера.

Сведения о том, как разрешить определенные приложения через брандмауэр Windows, см. в статье Настройка удаленной отладки с помощью брандмауэра Windows.

Разрешить удаленный отладчик через брандмауэр Windows

При настройке удаленного отладчикапрограмма конфигурации должна открывать правильные порты. Однако в некоторых сценариях может потребоваться вручную разрешить удаленный отладчик через брандмауэр.

Чтобы разрешить удаленный отладчик через брандмауэр Windows, выполните следующие действия.

  1. В меню "Пуск Windows" найдите и откройте брандмауэра Windowsили брандмауэр Защитника Windows.

  2. Выберите Разрешить приложение через брандмауэр Windows.

  3. Если Удалённый отладчик или Удалённый отладчик Visual Studio не отображается в разрешённых приложениях и функциях, выберите Изменить параметры, а затем выберите Разрешить другое приложение.

  4. Если приложение удаленного отладчика по-прежнему не указано в диалоговом окне Добавление приложения, выберите Обзори перейдите <к каталогу установки Visual Studio>\Common7\IDE\Remote Debugger\<x86, x64или Appx>в зависимости от соответствующей архитектуры приложения. Выберите msvsmon.exe, а затем выберите Добавить.

  5. В списке приложений выберите только что добавленный удаленный отладчик. Выберите сетевые типы, а затем выберите один или несколько типов сети, включая тип сети для удаленного подключения.

  6. Выберите Добавить, а затем выберите ОК.

Устранение неполадок подключения к удаленной отладке

Если вы не можете подключиться к приложению с помощью удаленного отладчика, убедитесь, что порты брандмауэра удаленной отладки, протоколы, сетевые типы и параметры приложения являются правильными.

  • В меню "Пуск Windows" найдите и откройте брандмауэра Windowsи выберите Разрешить приложение через брандмауэр Windows. Убедитесь, что удаленный отладчик или удаленный отладчик Visual Studio появляется в списке разрешенных приложений и функций с установленным флажком, и выбраны правильные типы сети. Если нет, добавьте правильные приложения и параметры.

  • В меню "Пуск Windows" найдите и откройте брандмауэр Windows с помощью расширенной безопасности. Убедитесь, что Удаленный отладчик или Удаленный отладчик Visual Studio отображаются в разделе Правила для входящего трафика (а также, по желанию, Правила для исходящего трафика) с зеленым значком флажка и все настройки правильные.

    • Чтобы просмотреть или изменить параметры правила, щелкните правой кнопкой мыши приложение удаленного отладчика в списке и выберите Свойства. Используйте вкладки свойств для включения или отключения правила или изменения номеров портов, протоколов или типов сети.
    • Если приложение удаленного отладчика не отображается в списке правил, добавьте и настройте нужные порты.