当前位置: 首页 > 图文教程 > 网络编程 > ASP > ADSI+ASP添加IP到IIS禁止访问列表中

ASP
在线人数统计内幕
介绍一个制作下拉菜单完全不同的办法
server push具体实现(转)
如何完整纪录站内所有网页点选次数(转)
使用ASP常见问题解答(转载)
处理Asp中的错误
微软修补其IIS软件中的又一处安全漏洞
细细品味ASP.NET (一)
细细品味ASP.NET (二)
细细品味ASP.NET (三)
ASP+与JSP之间的抉择
细细品味ASP.NET (四)
细细品味ASP.NET (五)
用asp.net和xml做的新闻更新系统(1)
用asp.net和xml做的新闻更新系统(2)
用asp.net和xml做的新闻更新系统(3)
用ASP+XML打造留言本(1)
用ASP+XML打造留言本(2)
用ASP+XML打造留言本(3)
用ASP+XML打造留言本(4)

ADSI+ASP添加IP到IIS禁止访问列表中


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 267 ::
收藏到网摘: n/a

注意:执行的ASP文件需要管理员权限
复制代码 代码如下:

<%@ Language=VBScript %>
<%
Dim strIP
strIP = request("IP")
%>
<FORM action=? method=post>
输入IP:<input type=text value="<%=strIP%>" style="BORDER: #AAAAAA 1px solid;" name="IP">
<input type="submit" value="确定发送">
</FORM>
<%
if strIP="list" then
Call ListDenyIP("2443")
response.end
end if
if strIP="query" then
Call CheckWebSiteSetup
response.end
end if
#
if strIP<>"" then
Call AddDenyIP("2443",strIP)
end if
Sub CheckWebSiteSetup()
Set IISOBJ=GetObject("IIS://LocalHost/W3SVC")
for each website in IISOBJ
if website.Class="IIsWebServer" then
for each b in website.ServerBindings
response.write ("Server "&Website.AdsPath" has binding"&b)
response.write ("<br>")
next
end if
next
end sub
#
Sub ListDenyIP(strWebNo)
set SecObj = GETObject("IIS://LocalHost/W3SVC/"+strWebNo+"/Root")
set MyIPSec = SecObj.IPSecurity
IPList=MyIPSec.IPDeny
if ubound(IPList)<0 then
response.write "<BR>无数据,请先随便加一条<BR>"
exit sub
end if
#
intIPListCount=ubound(IPList)+1
#
for i=0 to ubound(IPList)
response.write i+1
response.write ":"
response.write IPList(i)
response.write "<br>"
next
end sub
Sub AddDenyIP(strWebNo,strDenyIp)
set SecObj = GETObject("IIS://LocalHost/W3SVC/"+strWebNo+"/Root")
set MyIPSec = SecObj.IPSecurity
' Make sure GrantByDefault=TRUE or your changes will not count.
If (FALSE = MyIPSec.GrantByDefault) Then
Response.Write "<BR>GrantByDefault was not TRUE. Setting to TRUE.<BR>"
MyIPSec.GrantByDefault = TRUE
End If
IPList=MyIPSec.IPDeny
if ubound(IPList)<0 then
response.write "<BR>无数据,请先随便加一条<BR>"
exit sub
end if
#
intIPListCount=ubound(IPList)+1
#
for i=0 to ubound(IPList)
if strDenyIp = left(IPList(i),len(strDenyIp)) then
response.write "<BR>重复数据。<BR>"
exit sub
end if
next
redim Preserve IPList(intIPListCount)
IPList(intIPListCount)=strDenyIp
response.write "新添加:"
response.write strDenyIp
response.write "<br>"
MyIPSec.IPDeny = IPList
SecObj.IPSecurity = MyIPSec
SecObj.Setinfo
end sub
%>