评论

收藏

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

web服务器 web服务器 发布于:2021-10-21 21:44 | 阅读数:553 | 评论:0

注意:执行的ASP文件需要管理员权限
代码如下:
<%@ Language=VBScript %> 
<% 
Dim strIP 
strIP = request("IP") 
%> 
<FORM action=? method=post> 
输入IP:<input type=text value="<%=strIP%>" 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 
%>
关注下面的标签,发现更多相似文章