首页 > 编程 > ASP > 正文

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

2024-05-04 11:09:03
字体:
来源:转载
供稿:网友
注意:执行的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 
%>

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表