Adding rules to the windows firewall

Управление правилами Windows Firewall с помощью PowerShell

Эта статья посвящена основам управления настройками и правилами встроенного Windows Firewall из командной строки PowerShell. Мы рассмотрим, как включать/отключать брандмауэр для различных профилей, создавать и удалять правила файервола, и рассмотрим небольшой скрипт, позволяющий сформировать удобную таблицу с текущим набором активных правил брандмауэра.

Вы можете управлять настройками Windows Firewall из графической консоли Control Panel -> System and Security -> Windows Defender Firewall. Однако начиная с Windows 8.1 (Windows Server 2012R2) для управления встроенным брандмауэром в систему был добавлен встроенный PowerShell модуль NetSecurity.

В модуле NetSecurity в Windows 10 доступно 85 команд. Вы можете вывести их список:

Get-Command -Module NetSecurity

Управление сетевыми профилями брандмауэра Windows из PowerShell

В Windows Firewall есть три типа сетевых профилей:

  • Domain (Доменный) – применяется к компьютерам, включенным в домен Active Directory;
  • Private (Частный) – домашние или рабочие сети;
  • Public (Общий) – общедоступные сети.

Каждый профиль может отличаться используемым набором правил файервола. По умолчанию все сетевые интерфейсы компьютера защищены фаейрволом и к ним применяются все три типа профилей.

Чтобы включить все три сетевых профиля Domain, Public и Private, используйте команду:

Set-NetFirewallProfile -All -Enabled True

Либо укажите конкретный профиль вместо All:

Set-NetFirewallProfile -Profile Public -Enabled True

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

Set-NetFirewallProfile -All -Enabled False

С помощью командлета Set-NetFirewallProfile вы можете изменить параметры профиля (действие по-умолчанию, журналирование, путь и размер файла журнала, настройки оповещений и т.д.).

Как вы вероятно знаете, по умолчанию Windows Firewall включен в современных ОС для всех профилей. В настройках профилей разрешены все исходящие подключения и блокируется входящие (кроме разрешенных).

Изменим действие по-умолчнию для профиля Public – заблокировать все входящие подключения.

Set-NetFirewallProfile –Name Public –DefaultInboundAction Block

Текущие настройки профиля можно вывести так:

Get-NetFirewallProfile -Name Public

Если вы управляете настройками Windows Firewall через GPO, вы можете вывести текущие результирующие настройки профилей так:

Get-NetFirewallProfile -policystore activestore

Проверим, что все параметры брандмауэра применяются ко всем сетевым интерфейса компьютера.

Get-NetFirewallProfile -Name Public | fl DisabledInterfaceAliases

Если все интерфейсы защищены, команда должна вернуть:

Можно отключить определенный профиль для интерфейса (вывести список имен интерфейсов можно с помощью командлета Get-NetIPInterface).

Set-NetFirewallProfile -Name Public -DisabledInterfaceAliases «Ethernet0»

Как вы видите, теперь профиль Public не применяется к интерфейсу Ethernet0:

Вы можете настроить параметры логирования сетевых подключений на уровне каждого профиля. По умолчанию журналы Windows Firewall хранятся в каталоге %systemroot%\system32\LogFiles\Firewall, размер файла – 4 Мб. Вы можете изменить включить журналирование подключений и увеличить максимальный размер файла:

Set-NetFireWallProfile -Profile Domain -LogBlocked True -LogMaxSize 20000 -LogFileName ‘%systemroot%\system32\LogFiles\Firewall\pfirewall.log’

Создание, редактирование и удаление правил Windows Firewall из PowerShell

Для управления правилами брандмауэра есть 9 командлетов:

  • New-NetFirewallRule
  • Copy-NetFirewallRule
  • Disable-NetFirewallRule
  • Enable-NetFirewallRule
  • Get-NetFirewallRule
  • Remove-NetFirewallRule
  • Rename-NetFirewallRule
  • Set-NetFirewallRule
  • Show-NetFirewallRule

Рассмотрим несколко простых примеров открытия портов в Windows Firewall.

Например, вы хотите разрешить входящие TCP подключения на порты 80 и 443 для профилей Domain и Private, воспользуйтесь такой командой:

New-NetFirewallRule -DisplayName ‘WEB-Inbound’ -Profile @(‘Domain’, ‘Private’) -Direction Inbound -Action Allow -Protocol TCP -LocalPort @(’80’, ‘443’)

Вы можете разрешить или заблокировать трафик для конкретной программы. Например, вы хотите заблокировать исходящие соединения для FireFox:

New-NetFirewallRule -Program “C:\Program Files (x86)\Mozilla Firefox\firefox.exe” -Action Block -Profile Domain, Private -DisplayName “Block Firefox” -Description “Block Firefox” -Direction Outbound

Разрешим входящее RDP подключение по порту 3389 только с IP одного адреса:

New-NetFirewallRule -DisplayName «AllowRDP» –RemoteAddress 192.168.1.55 -Direction Inbound -Protocol TCP –LocalPort 3389 -Action Allow

Чтобы разрешить ping для адресов из указанной подсети, используйте команды:

Читайте также:  Выбираем ноутбук для linux

$ips = @(«192.168.1.50-192.168.1.60», «192.165.2.22-192.168.2.200», ”10.10.0.0/16”)

New-NetFirewallRule -DisplayName «Allow inbound ICMPv4» -Direction Inbound -Protocol ICMPv4 -IcmpType 8 -RemoteAddress $ips -Action Allow

New-NetFirewallRule -DisplayName «Allow inbound ICMPv6» -Direction Inbound -Protocol ICMPv6 -IcmpType 8 -RemoteAddress $ips -Action Allow

Чтобы отредактировать имеющееся правило брандмауэра, используется командлет Set-NetFirewallRule. Например, вы хотите разрешить входящие подключения с указанного IP адреса для ранее созданного правила:

Get-NetFirewallrule -DisplayName ‘WEB-Inbound’ | Get-NetFirewallAddressFilter | Set-NetFirewallAddressFilter -RemoteAddress 192.168.1.20

Если нужно добавить в правило файервола несколько IP адресов, используйте такой скрипт:

$ips = @(«192.168.1.50», «192.165.2.22»,”192.168.1.20”)

Get-NetFirewallrule -DisplayName ‘WEB-Inbound’|Set-NetFirewallRule -RemoteAddress $ips

Вывести все IP адреса, которые содержатся в правиле брандмауэра:

Get-NetFirewallrule -DisplayName ‘Allow inbound ICMPv4’|Get-NetFirewallAddressFilter

Вы можете включать/отключать правила файервола с помощью командлетов Disable-NetFirewallRule и Enable-NetFirewallRule.

Disable-NetFirewallRule –DisplayName ‘WEB-Inbound’

Чтобы разрешить ICMP (ping), выполните команду:

Enable-NetFirewallRule -Name FPS-ICMP4-ERQ-In

Чтобы удалить правило брандмауэре используется командлет Remove-NetFirewallRule.

Вывод правил Windows Firewall через PowerShell

Список активных правил для входящего трафика можно вывести так:

Если, например, нам нужно вывести список блокирующих исходящих правил:

Get-NetFirewallRule -Action Block -Enabled True -Direction Outbound

Если нужно отобразить имя программы в правиле:

Get-NetFirewallRule -Action Block -Enabled True -Direction Outbound | %

Как вы видите командлет Get-NetFirewallRule не выводит порты сетевые порты и IP адреса для правил брандмауэра. Чтобы вывести всю информацию о разрешенных входящих (исходящих) подключениях в более удобном виде с отображением номеров портов, используйте такой скрипт:

PowerShell предоставляет широкие возможности по управлению правилами Windows Firewall из командной строки. Вы можете автоматически запускать скрипты PowerShell для открытия/закрытия портов при возникновении определенных событий. В следующей статье мы рассмотрим простую систему на базе PowerShell и Windows Firewall для автоматической блокировки IP адресов, с которых выполняется удаленный перебор паролей по RDP на Windows VDS сервере.

Включение стандартных правил для входящего трафика Enable Predefined Inbound Rules

Область применения Applies to

  • Windows 10 Windows 10
  • Windows Server 2016 Windows Server 2016

Защитник Windows брандмауэра с расширенными функциями безопасности включает множество предопределяющих правил для общих сетевых ролей и функций. Windows Defender Firewall with Advanced Security includes many predefined rules for common networking roles and functions. Когда вы устанавливаете новую роль сервера на устройстве или включаете функцию сети на клиентских устройствах, установщик обычно включает правила, необходимые для этой роли, а не создает новые. When you install a new server role on a device or enable a network feature on a client device, the installer typically enables the rules required for that role instead of creating new ones. При развертывании правил брандмауэра на устройствах в сети можно использовать эти предопределяющие правила, а не создавать новые. When deploying firewall rules to the devices on the network, you can take advantage of these predefined rules instead of creating new ones. Это помогает обеспечить согласованность и точность, так как правила были тщательно протестированы и готовы к использованию. Doing this helps to ensure consistency and accuracy, because the rules have been thoroughly tested and are ready for use.

Учетные данные администратора Administrative credentials

Для выполнения этих процедур необходимо быть членом группы «Администраторы домена» или получить другие делегирование разрешений на изменение таких групп. To complete these procedures, you must be a member of the Domain Administrators group, or otherwise be delegated permissions to modify the GPOs.

Развертывание предопределных правил брандмауэра, которые позволяют входящий сетевой трафик для общих сетевых функций To deploy predefined firewall rules that allow inbound network traffic for common network functions

Откройте консоль управления групповыми политиками для Защитник Windows брандмауэра с расширенными мерами безопасности. Open the Group Policy Management Console to Windows Defender Firewall with Advanced Security.

В области навигации щелкните «Правила для входящие». In the navigation pane, click Inbound Rules.

Щелкните «Действие» и выберите «Новое правило». Click Action, and then click New rule.

На странице «Тип правила» мастера «Новые правила для входящие» щелкните «Предопределен», **** выберите категорию правил из списка и нажмите кнопку «Далее». On the Rule Type page of the New Inbound Rule Wizard, click Predefined, select the rule category from the list, and then click Next.

На странице «Предварительно определенные правила» отображается список правил, определенных в группе. On the Predefined Rules page, the list of rules defined in the group is displayed. По умолчанию все они выбраны. By default, they are all selected. Для правил, которые не нужно развертывать, сделайте флажки рядом с правилами и нажмите кнопку «Далее». For rules that you do not want to deploy, clear the check boxes next to the rules, and then click Next.

Читайте также:  Как проверить системные библиотеки windows

На странице действий выберите «Разрешить подключение» и нажмите кнопку «Готово». On the Action page, select Allow the connection, and then click Finish.

Создание правил брандмауэра Windows в Intune Create Windows Firewall rules in Intune

Относится к: Applies to

Эта информация относится к предварительному продукту, который может быть существенно изменен до его коммерческого выпуска. This information relates to prereleased product which may be substantially modified before it’s commercially released. Майкрософт не дает никаких гарантий, явных или подразумеваемых, в отношении предоставленной здесь информации. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Чтобы начать работу, откройте конфигурацию устройств в Intune, а затем создайте новый профиль. To get started, open Device Configuration in Intune, then create a new profile. В качестве платформы выберите Windows 10, а в качестве типа профиля — endpoint Protection. Choose Windows 10 as the platform, and Endpoint Protection as the profile type. Выберите Защитник Windows брандмауэра. Select Windows Defender Firewall.

Один профиль защиты конечной точки может содержать не более 150 правил брандмауэра. A single Endpoint Protection profile may contain up to a maximum of 150 firewall rules. Если для клиентского устройства требуется более 150 правил, ему должно быть назначено несколько профилей. If a client device requires more than 150 rules, then multiple profiles must be assigned to it.

Компоненты правила брандмауэра Firewall rule components

Конфигурации правил брандмауэра в Intune используют CSP Windows 10 для брандмауэра. The firewall rule configurations in Intune use the Windows 10 CSP for Firewall. Дополнительные сведения см. в cSP Брандмауэра. For more information, see Firewall CSP.

Приложение Application

Управление подключениями для приложения или программы. Control connections for an app or program. Приложения и программы могут быть указаны как путь файла, имя семейства пакетов, так и короткое имя службы Windows. Apps and programs can be specified either file path, package family name, or Windows service short name.

Путь файла приложения — это его расположение на клиентских устройствах. The file path of an app is its location on the client device. Например, C:\Windows\System\Notepad.exe. For example, C:\Windows\System\Notepad.exe. Подробнее Learn more

Имена семей пакетов можно получить, запуская команду Get-AppxPackage powerShell. Package family names can be retrieved by running the Get-AppxPackage command from PowerShell. Подробнее Learn more

Короткие имена служб Windows используются в тех случаях, когда служба, а не приложение отправляет или получает трафик. Windows service short names are used in cases when a service, not an application, is sending or receiving traffic. По умолчанию ia All. Default ia All.

Протокол Protocol

Выберите протокол для этого правила порта. Select the protocol for this port rule. Протоколы транспортного слоя TCP и UDP позволяют указать порты или диапазоны портов. Transport layer protocols—TCP and UDP—allow you to specify ports or port ranges. Для пользовательских протоколов введите число от 0 до 255, представляющее протокол IP. For custom protocols, enter a number between 0 and 255 representing the IP protocol.

По умолчанию — any. Default is Any.

Локальные порты Local ports

Запятая разделила список диапазонов. Comma separated list of ranges. Например, 100-120 200 300-320. For example, 100-120,200,300-320. По умолчанию это все. Default is All.

Удаленные порты Remote ports

Запятая разделила список диапазонов. Comma separated list of ranges. Например, 100-120 200 300-320. For example, 100-120,200,300-320. По умолчанию это все. Default is All.

Локальные адреса Local addresses

Запятая разделила список локальных адресов, охваченных правилом. Comma separated list of local addresses covered by the rule. Допустимые маркеры: Valid tokens include:

  • * указывает любой локальный адрес. * indicates any local address. Если она присутствует, это должен быть единственный включенный маркер. If present, this must be the only token included.
  • Подсеть можно указать с помощью маски подсети или сетевой префикс. A subnet can be specified using either the subnet mask or network prefix notation. Если не указана ни маска подсети, ни сетевой префикс, значение по умолчанию подсети равно 255.255.255.255. If neither a subnet mask nor a network prefix is specified, the subnet mask default is 255.255.255.255.
  • Допустимый адрес IPv6. A valid IPv6 address.
  • Диапазон адресов IPv4 в формате «начните адрес-адрес» без пробелов. An IPv4 address range in the format of «start address-end address» with no spaces included.
  • Диапазон адресов IPv6 в формате «начните адрес-адрес» без пробелов. An IPv6 address range in the format of «start address-end address» with no spaces included. По умолчанию — любой адрес. Default is Any address.
Читайте также:  Активация для windows 10 pro 14393

Удаленные адреса Remote addresses

Список разделенных маркеров запятой с указанием удаленных адресов, охваченных правилом. List of comma separated tokens specifying the remote addresses covered by the rule. Маркеры являются нечувствительными. Tokens are case insensitive. Допустимые маркеры: Valid tokens include:

  • * указывает любой удаленный адрес. * indicates any remote address. Если она присутствует, это должен быть единственный включенный маркер. If present, this must be the only token included.
  • Defaultgateway Defaultgateway
  • DHCP DHCP
  • DNS DNS
  • WINS WINS
  • Интрасеть (поддерживается в Windows версии 1809+) Intranet (supported on Windows versions 1809+)
  • RmtIntranet (поддерживается в Windows версии 1809+) RmtIntranet (supported on Windows versions 1809+)
  • Интернет (поддерживается в Windows версии 1809+) Internet (supported on Windows versions 1809+)
  • Ply2Renders (поддерживается в Windows версии 1809+) Ply2Renders (supported on Windows versions 1809+)
  • LocalSubnet указывает любой локальный адрес в локальной подсети. LocalSubnet indicates any local address on the local subnet.
  • Подсеть можно указать с помощью маски подсети или сетевой префикс. A subnet can be specified using either the subnet mask or network prefix notation. Если не задана ни подсетевая маска, ни сетевой префикс, подсетевая маска по умолчанию имеет значение 255.255.255.255.255. If neither a subnet mask not a network prefix is specified, the subnet mask defaults to 255.255.255.255.
  • Допустимый адрес IPv6. A valid IPv6 address.
  • Диапазон адресов IPv4 в формате «начните адрес-адрес» без пробелов. An IPv4 address range in the format of «start address-end address» with no spaces included.
  • Диапазон адресов IPv6 в формате «начните адрес-адрес» без пробелов. An IPv6 address range in the format of «start address-end address» with no spaces included.

По умолчанию — любой адрес. Default is Any address.

Edge traversal (UI coming soon) Edge traversal (UI coming soon)

Указывает, включен ли обход края для этого правила или отключен. Indicates whether edge traversal is enabled or disabled for this rule. Параметр EdgeTraversal указывает на то, что определенному входящего трафика разрешено туннель через NATs и другие устройства края с помощью технологии туннеля Teredo. The EdgeTraversal setting indicates that specific inbound traffic is allowed to tunnel through NATs and other edge devices using the Teredo tunneling technology. Чтобы этот параметр работал правильно, приложение или служба с правилом входящего брандмауэра должны поддерживать IPv6. In order for this setting to work correctly, the application or service with the inbound firewall rule needs to support IPv6. Основное применение этого параметра позволяет слушателям на хосте быть глобально адресируемыми с помощью адреса Teredo IPv6. The primary application of this setting allows listeners on the host to be globally addressable through a Teredo IPv6 address. В новых правилах свойство EdgeTraversal отключено по умолчанию. New rules have the EdgeTraversal property disabled by default. Этот параметр можно настроить только с помощью Intune Graph в это время. This setting can only be configured via Intune Graph at this time.

Авторизованные пользователи Authorized users

Указывает список авторизованного локального пользователя для этого правила. Specifies the list of authorized local users for this rule. Список авторизованного пользователя не может быть указан, если авторизованные правила ориентированы на службу Windows. A list of authorized users cannot be specified if the rule being authored is targeting a Windows service. По умолчанию это все пользователи. Default is all users.

Оцените статью