Вопрос: Windows эквивалент iptables?


Дурацкий вопрос:

Есть ли эквивалент iptables для Windows? Могу ли я установить его через cygwin?

Реальный вопрос: как я могу выполнить на Windows то, что я могу выполнить через iptables? Просто ищет базовые функции брандмауэра (например, блокирование определенных IP-адресов)


51
2017-11-30 22:38


Источник


Нет такой вещи, как тупой вопрос - Mark Henderson♦
Конечно, есть такая вещь, как глупый вопрос, это просто не одно. - Task


Ответы:


Один из способов был бы netsh команда:


35
2017-11-30 23:05



+1 - netsh advfirewall является абсолютным обязательным правилом, чтобы узнать, для кого-либо, что-либо связанное с безопасностью, связанное с Windows Server - Mark Henderson♦
именно то, что я искал, спасибо. - Aaron F.
Есть ли netsh advfirewall URL поддержки или только IP-адреса? - Parker
Просто IP-адреса и т. Д., Хотя он также может фильтровать на основе исполняемого отправляющего или принимающего сетевого трафика или учетных данных AD для пользователя / группы / компьютера. Для фильтрации URL вы хотите найти фильтрующий прокси . - James Sneeringer


WIPFW выглядит очень многообещающим, особенно если ваш после этого способ создания правила iptables.


4
2018-03-26 13:27





Ниже приведено: https://support.microsoft.com/en-us/kb/947709

Пример 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
Общедоступный профиль

Пример 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   Run the following commands:

netsh advfirewall set domainprofile state on 

netsh advfirewall set privateprofile state on

Для получения дополнительной информации запустите следующую команду:

netsh advfirewall set currentprofile ?

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

Пример 7: Восстановить значения по умолчанию

Старая команда Новая команда

netsh firewall reset
netsh advfirewall reset

Для получения дополнительной информации запустите следующую команду: netsh advfirewall reset? Пример 8: Включить определенные службы

Старая команда Новая команда netsh firewall set service FileAndPrint netsh advfirewall firewall set rule group = «Совместное использование файлов и принтеров» new enable = Да netsh firewall set service RemoteDesktop включить netsh advfirewall firewall set rule group = "удаленный рабочий стол" new enable = Yes netsh firewall set service RemoteDesktop enable profile = ALL Выполнить следующие команды:

netsh advfirewall firewall set rule group = "удаленный рабочий стол" new enable = Yes profile = domain

netsh advfirewall firewall set rule group = "удаленный рабочий стол" new enable = Yes profile = private


4
2017-08-27 12:40



Возможно, вы захотите работать с форматированием. В настоящее время это ужасно читать, приглашая downvotes. - Gerald Schneider
Также разорван из support.microsoft.com/en-us/kb/947709 - chappjc


Eсть встроенный межсетевой экран в версиях XP, Server 2003 и последующих версиях.

Он имеет API через которые вы можете программно изменить, включить и отключить правила.


3
2017-11-30 22:44



Я хочу получить доступ к программированию - добавьте IP-адреса в межсетевой экран из сценария или программного модуля. - Aaron F.