我发现下面,命令行更新IIS 6 IP限制用于添加的IP地址在IIS 7使用命令行
appcmd set config /section:ipsecurity /+"[ipaddress='10.0.0.1',allowed='false']"
限制是否有IIS 6等效的命令?
谢谢!
我发现下面,命令行更新IIS 6 IP限制用于添加的IP地址在IIS 7使用命令行
appcmd set config /section:ipsecurity /+"[ipaddress='10.0.0.1',allowed='false']"
限制是否有IIS 6等效的命令?
谢谢!
不,没有内置的Windows命令来做到这一点。你可以找到人们编写的脚本证据来减轻这一点。
最终,您要修改名为IPSecurity
的元数据库条目。事情是这样的:这个IPSecurity条目可以设置在顶层(W3SVC服务),直到单个文件。所以,你可以为任何的定义安全:
你的问题的例子是服务范围内,所以你会想要目标IIS://localhost/W3SVC
。如果你只想配置默认网站,你的目标是IIS://localhost/W3SVC/1/Root
。
一旦您知道要修改的级别,您需要确定匹配IP的操作过程。你显然想阻止。 That means you'll need to modify the IPDeny
List.
现在您只需编写一个脚本,使用您选择的语言通过ADSI连接到配置数据库,并修改IPDeny列表以包含附加IP。
我修改从MSDN页面的一个带参数:
Dim SecObj
Dim MyIPSec
Dim IPList
Set SecObj = GetObject("IIS://LocalHost/W3SVC")
Set MyIPSec = SecObj.IPSecurity
If (FALSE = MyIPSec.GrantByDefault) Then
MyIPSec.GrantByDefault = TRUE
End If
if WScript.Arguments.Count = 0 then
WScript.Echo "Missing IP Address"
WScript.Quit(1)
end if
' WScript.Echo "Adding " & WScript.Arguments(0)
IPList = MyIPSec.IPDeny
Redim Preserve IPList (Ubound(IPList)+1)
IPList (Ubound(IPList)) = WScript.Arguments(0)
MyIPSec.IPDeny = IPList
SecObj.IPSecurity = MyIPSec
SecObj.Setinfo
如果您保存此为blockip.vbs
,你可以把它叫做:
wscript blockip.vbs 10.0.0.1
仅供参考,这对IIS6工作正常,但在Win7(IIS 7.5)上工作一次,然后在列表存在后失败。
谢谢!它非常有效! – Osprey 2014-11-12 07:17:44
@Osprey很高兴我能帮忙:) – 2014-11-12 14:12:00