Использование брандмауэра netsh advfirewall вместо брандмауэра netsh для управления поведением брандмауэра Windows

В этой статье описывается использование контекста netsh advfirewall брандмауэра вместо контекста для управления поведением netsh firewall брандмауэра Windows.

Применяется к: Windows Server 2012 R2
Исходный номер базы знаний: 947709

Сводка

Контекст netsh advfirewall командной строки брандмауэра доступен в Windows Server 2012 R2. Этот контекст предоставляет функциональные возможности для управления поведением брандмауэра Windows, предоставляемые контекстом брандмауэра netsh firewall .

Этот контекст также предоставляет функциональные возможности для более точного управления правилами брандмауэра. Эти правила включают следующие параметры профиля:

  • Домен
  • Private
  • Public

Контекст netsh firewall командной строки может быть нерекомендуем в будущей версии операционной системы Windows. Для управления поведением брандмауэра netsh advfirewall рекомендуется использовать контекст брандмауэра.

Важно!

Если вы являетесь членом группы администраторов и на компьютере включен контроль учетных записей пользователей, выполните команды из командной строки с повышенными разрешениями. Чтобы запустить командную строку с повышенными разрешениями, найдите значок или запись меню "Пуск", которые используются для запуска сеанса командной строки, щелкните его правой кнопкой мыши и выберите команду Запуск от имени администратора.

Некоторые примеры часто используемых команд приведены в следующих таблицах. Эти примеры можно использовать для перехода из старого netsh firewall контекста в новый netsh advfirewall контекст брандмауэра.

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

Пример команды 1. Включение программы

Старая команда Новая команда
netsh firewall add allowedprogram C:\MyApp\MyApp.exe "My Application" ENABLE netsh advfirewall firewall add rule name="My Application" dir=in action=allow program="C:\MyApp\MyApp.exe" enable=yes
netsh firewall add allowedprogram program=C:\MyApp\MyApp.exe name="My Application" mode=ENABLE scope=CUSTOM addresses=157.60.0.1,172.16.0.0/16,LocalSubnet profile=Domain netsh advfirewall firewall add rule name="My Application" dir=in action=allow program= "C:\MyApp\MyApp.exe" enable=yes remoteip=157.60.0.1,172.16.0.0/16,LocalSubnet profile=domain
netsh firewall add allowedprogram program=C:\MyApp\MyApp.exe name="My Application" mode=ENABLE scope=CUSTOM addresses=157.60.0.1,172.16.0.0/16,LocalSubnet profile=ALL Выполните следующие команды:
netsh advfirewall firewall add rule name="My Application" dir=in action=allow program= "C:\MyApp\MyApp.exe" enable=yes remoteip=157.60.0.1,172.16.0.0/16,LocalSubnet profile=domain
netsh advfirewall firewall add rule name="My Application" dir=in action=allow program="C:\MyApp\MyApp.exe" enable=yes remoteip=157.60.0.1,172.16.0.0/16,LocalSubnet profile=private

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

netsh advfirewall firewall add rule ?

Пример команды 2. Включение порта

Старая команда Новая команда
netsh firewall add portopening TCP 80 "Open Port 80" netsh advfirewall firewall add rule name= "Open Port 80" dir=in action=allow protocol=TCP localport=80

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

netsh advfirewall firewall add rule ?

Пример команды 3. Удаление включенных программ или портов

Старая команда Новая команда
netsh firewall delete allowedprogram C:\MyApp\MyApp.exe netsh advfirewall firewall delete rule name= rule name program="C:\MyApp\MyApp.exe"
delete portopening protocol=UDP port=500 netsh advfirewall firewall delete rule name= rule name protocol=udp localport=500

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

netsh advfirewall firewall delete rule ?

Пример команды 4. Настройка параметров ICMP

Старая команда Новая команда
netsh firewall set icmpsetting 8 netsh advfirewall firewall add rule name="ICMP Allow incoming V4 echo request" protocol=icmpv4:8,any dir=in action=allow
netsh firewall set icmpsetting type=ALL mode=enable netsh advfirewall firewall add rule name= "All ICMP V4" protocol=icmpv4:any,any dir=in action=allow
netsh firewall set icmpsetting 13 disable all netsh advfirewall firewall add rule name="Block Type 13 ICMP V4" protocol=icmpv4:13,any dir=in action=block

Для получения дополнительных сведений о настройке параметров ICMP выполните следующую команду:

netsh advfirewall firewall add rule ?

Пример команды 5. Настройка ведения журнала

Старая команда Новая команда
netsh firewall set logging %systemroot%\system32\LogFiles\Firewall\pfirewall.log 4096 ENABLE ENABLE Выполните следующие команды:
netsh advfirewall set currentprofile logging filename %systemroot%\system32\LogFiles\Firewall\pfirewall.log
netsh advfirewall set currentprofile logging maxfilesize 4096
netsh advfirewall set currentprofile logging droppedconnections enable
netsh advfirewall set currentprofile logging allowedconnections enable

Для получения дополнительных сведений выполните следующую команду:

netsh advfirewall set currentprofile ?

Если вы хотите задать ведение журнала для определенного профиля, используйте один из следующих параметров вместо currentprofile параметра :

  • Domainprofile
  • Privateprofile
  • Publicprofile

Пример команды 6. Включение брандмауэра Windows

Старая команда Новая команда
netsh firewall set opmode ENABLE netsh advfirewall set currentprofile state on
netsh firewall set opmode mode=ENABLE exceptions=enable Выполните следующие команды:
Netsh advfirewall set currentprofile state on
netsh advfirewall set currentprofile firewallpolicy blockinboundalways,allowoutbound
netsh firewall set opmode mode=enable exceptions=disable profile=domain Выполните следующие команды:
Netsh advfirewall set domainprofile state on
netsh advfirewall set domainprofile firewallpolicy blockinbound,allowoutbound
netsh firewall set opmode mode=enable profile=ALL Выполните следующие команды:
netsh advfirewall set domainprofile state on
netsh advfirewall set privateprofile state on

Для получения дополнительных сведений выполните следующую команду:

netsh advfirewall set currentprofile ?

Если вы хотите задать состояние брандмауэра для определенного профиля, используйте один из следующих параметров вместо currentprofile параметра:

  • Domainprofile
  • Privateprofile
  • Publicprofile

Пример команды 7. Восстановление политик по умолчанию

Старая команда Новая команда
netsh firewall reset netsh advfirewall reset

Для получения дополнительных сведений выполните следующую команду:

netsh advfirewall reset ?

Пример команды 8. Включение определенных служб

Старая команда Новая команда
netsh firewall set service FileAndPrint netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=Yes
netsh firewall set service RemoteDesktop enable netsh advfirewall firewall set rule group="remote desktop" new enable=Yes
netsh firewall set service RemoteDesktop enable profile=ALL Выполните следующие команды:

netsh advfirewall firewall set rule group="remote desktop" new enable=Yes profile=domain

netsh advfirewall firewall set rule group="remote desktop" new enable=Yes profile=private