Powershell 脚本实现windows 2003 防火墙策略


将以下内容放入 Powershell 脚本文件test.sp1中就可以实现防火墙的一般策略


$a="Welcome to windowsserver 2003 Powershell ,

Now will show you something about how to build an

windows  firewall.


"

$a



$a="1.显示防火墙配置。"


$a


$a=netsh firewall show allowedprogram


$a



$a="2.查看防火墙放行的程序"


$a


$a=netsh firewall show allowedprogram


$a



$a="3.显示当前防火墙配置文件"


$a


$a=netsh firewall show currentprofile


$a




$a="4.显示防火墙 ICMP 配置"


$a


$a=netsh firewall show icmpsetting


$a



$a="5.显示防火墙记录配置 "


$a


$a=netsh firewall show logging


$a




$a="6.显示防火墙多播/广播响应配置 "


$a


$a=netsh firewall show multicastbroadcastresponse


$a



$a="7. 显示防火墙操作配置 "


$a


$a=netsh firewall show notifications


$a




$a="8. 显示防火墙端口配置  "


$a


$a=netsh firewall show opmode


$a




$a="9. 显示防火墙端口配置0  "


$a


$a=netsh firewall show  portopening


$a





$a="10.显示防火墙服务配置  "


$a


$a=netsh firewall show service


$a




$a="11.显示当前防火墙状态  "


$a


$a=netsh firewall show state


$a




$a="


Now we start to build an firewall rule .


"


$a




$a="1.打开445端口   "


$a


$a=netsh firewall set portopening TCP 445 ENABLE


$a



$a="2.//添加程序C盘下的A.exe并放行   "


$a


$a=netsh firewall set allowedprogram C:\A.exe A ENABLE


$a



$a="3.//删除放行程序A.exe    "


$a


$a=netsh firewall delete allowedprogram C:\A.exe



$a="4.关闭445端口   "


$a


$a=netsh firewall set portopening TCP 445 DISENABLE


$a


$a


******************************************************************************************

*

*Powershell 脚本实现windows 2008 防火墙策略


将以下内容放入 Powershell 脚本文件test.sp1中就可以实现防火墙的一般策略

$a="Welcome to windowsserver 2008 Powershell ,

Now will show you something about how to build an

windows  firewall.

New-Item –Path $Profile –Type File –Force

"

$a

$a=" Help-show :"

$a

$a=netsh advfirewall show

$a

$a="1.显示所有配置文件的属性。"

$a

$a=netsh advfirewall show allprofiles

$a

$a="2.显示活动配置文件的属性。"

$a

$a=netsh advfirewall show currentprofile

$a

$a="3.显示域配置文件的属性。"

$a

$a=netsh advfirewall show domainprofile

$a

$a="4.显示全局属性。"

$a

$a=netsh advfirewall show global

$a

$a="5.显示专用配置文件属性。"

$a

$a=netsh advfirewall show privateprofile

$a

$a="6.显示公用配置文件属性。"

$a

$a=netsh advfirewall show publicprofile

$a

$a="6.显示当前交互式会话存储策略。"

$a

$a=netsh advfirewall show store

$a

$a=" Help-consec"

$a

$a=netsh advfirewall consec

$a

$a="1.添加一条规则,允许程序运行"

$a

$a=netsh advfirewall firewall  add rule name=" test "   dir=in  program="C:\A.exe"  action=allow

$a

$a="2.删除一条规则,不允许程序运行"

$a

$a=netsh advfirewall firewall  delete rule name=" test "   dir=in  program="C:\A.exe"  

$a

$a="3.添加一条规则,允许21端口连入,连出"

$a

$a=netsh advfirewall firewall  add rule name="tcp 21" security=authdynenc dir=in  protocol=TCP localport=21 action=allow

$a

$a

$a=netsh advfirewall firewall  add rule name="tcp 21"  dir=out  protocol=TCP localport=21 action=block

$a

$a="4.删除一条规则,不允许21端口开放"

$a

$a=netsh advfirewall firewall  delete rule name="tcp 21" protocol=tcp localport=21

$a

$a=" Help-set"

$a

$a=netsh advfirewall set

$a

$a=" 1.在所有配置文件中设置默认阻挡入站并允许出站通信:"

$a

$a=netsh advfirewall set

$a

$a=" 2.在所有配置文件中打开远程管理:"

$a

$a=netsh advfirewall set allprofiles settings remotemanagement enable

$a

$a=" 2.在所有配置文件导出:"

$a

$a=Netsh advfirewall export "c:\advfirewall.wfw"

$a

$a=" 3.在所有配置文件导入:"

$a

$a=Netsh advfirewall import "c:\advfirewall.wfw"

$a

5Import命令

Import命令让你可以从一个文件中导入防火墙的配置。这个命令可以让你把之前你使用export命令导出的防火墙配置再恢复回去。示例如下:

Netsh advfirewall import “c:\advfirewall.wfw”

6Reset

  这个命令让你重新设置防火墙策略到默认策略状态。使用这个命令的时候务必谨慎,因为一旦你键入这个命令并按下回车后,它将不再让你确认是否真要重设,直接恢复防火墙的策略。

  示例命令如下:

Netsh advfirewall reset

7Set命令

set命令将允许你修改防火墙的不同设置状态。相关的上下文命令有六个。


·set allprofiles让你修改所有配置文件中的属性。

·set currentprofile 让你只修改活动配置文件中的属性。

·set domainprofile让你修改域配置文件中的属性。

·set global让你修改防火墙的全局属性。

·set privateprofile让你修改专用配置文件中的属性。

·set publicprofile让你修改公用配置文件中的属性。

·set store让你为当前交互式会话设置策略存储。

  以下是使用set命令的一些例子:

·让防火墙关闭所有配置文件:

netsh advfirewall set allprofiles state off

·在所有配置文件中设置默认阻挡入站并允许出站通信:

netsh advfirewall set allprofiles firewallpolicy blockinbound,allowoutbound

·在所有配置文件中打开远程管理:

netsh advfirewall set allprofiles settings remotemanagement enable

·在所有配置文件中记录被断开的连接:

netsh advfirewall set allprofiles logging droppedconnections enable

8Show命令

  这个show命令将让你可以查看所有不同的配置文件中的设置和全局属性。

总结

  在这篇文章中,我们了解了如何使用netsh advfirewall命令配置Windows 2008防火墙的一些基本命令。你可以自己来选择是使用图形界面还是使用命令行方式来配置你的防火墙。如果你掌握了命令行方式下的这些命令,命令行界面是一种快速的配置Windows 2008防火墙的方式。