vbscript应用于netscreen防火墙检查

原创 2007年09月17日 16:50:00
 程序明说:通过中转solaris系统登录多台netscreen防火墙,检查设备状态crt脚本(vbs脚本vbscript)


# $language = "VBScript"
# $interface = "1.0"

Sub Main

Cnstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=firewall.mdb;Persist Security Info=False"

tabname="setmessage"  
'dulttab="dultmess"    '填写报表数据表
'dultnametab="dult"     '值班人员表


Set cn=CreateObject("ADODB.Connection")
Set rs=CreateObject("ADODB.Recordset")
'Set rs1=CreateObject("ADODB.Recordset")
'Set rs2=CreateObject("ADODB.Recordset")

Dim fso, MyFile
Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.CreateTextFile("testfile.txt", True)
 
 




 cn.Open Cnstr
 rs.Open "select * from "+tabname,cn,1,3


Dim cpustr,memorystr,connstr


Dim  objXL
Set objXL=CreateObject("Excel.Application")
objXL.Visible=false
'objXL.WorkBooks.Add
Set objWb = objXL.WorkBooks.Open ("c:/firewall/template.xls")

' Get the first loaded worksheet object of the current workbook
Set objWb = objXL.ActiveWorkBook.WorkSheets(1)
objWb.Activate               ' not absolutely necessary (for CSV)


'objXL.Columns(1).ColumnWidth=40
'objXL.Columns(2).ColumnWidth=40
'objXL.Columns(3).ColumnWidth=20

'objXL.Cells(1,1).Value="cpu"
'objXL.Cells(1,2).Value="memory"
'objXL.Cells(1,3).Value="connest"

 crt.Screen.Synchronous = True
 crt.Session.Connect ("/telnet 132.*")
 
  crt.Screen.WaitForString "login:"
 crt.screen.Send  "用户名" & Chr(10)
 crt.Screen.WaitForString "Password:"
 crt.screen.Send  "密码" & Chr(10)
'bug处理
 crt.Screen.WaitForString "eric@dszmas1o> "
 crt.screen.Send "df -k"  & Chr(10)
 screenrow = crt.screen.Rows 
 cpustr = crt.Screen.Get(screenrow, 1, screenrow, 110 )
 memorystr = crt.Screen.Get(screenrow, 1, screenrow, 110 )
 connstr = crt.Screen.Get(screenrow, 1, screenrow, 110 )
 crt.screen.Send  Chr(10) 
 crt.Screen.WaitForString "> "
 crt.screen.Send "echo "& cpustr  & Chr(10)
 crt.Screen.WaitForString ">"
 crt.screen.Send "echo "& memorystr & Chr(10)
 crt.Screen.WaitForString ">" 
 crt.screen.Send "echo "& connstr  & Chr(10) 
crt.screen.Send  Chr(10) 



intindex=3

Dim ipaddr,username,seten,setname,systemtype,dultname
dultname=crt.Dialog.Prompt("input dultname", "dultname", "", False)

While Not rs.eof
  ipaddr=rs("ipaddr")
  username=rs("username")
  seten=rs("seten")
  systemtype=rs("systemtype")
  setname=rs("setname")
 MyFile.WriteLine(ipaddr)
 MyFile.WriteLine(Date)
 crt.Screen.WaitForString "> "
 crt.screen.Send  "telnet "&ipaddr & Chr(10)
 crt.Screen.WaitForString "login:"
 crt.screen.Send  username & Chr(10)
 crt.Screen.WaitForString "password:"
 crt.screen.Send seten & Chr(10)

 crt.Screen.WaitForString "->"
 crt.screen.Send "get performance cpu"& Chr(10)

 crt.Screen.WaitForString "->"
 screenrow = crt.screen.Rows - 2
 cpustr = crt.Screen.Get(screenrow, 1, screenrow, 110 )
' objXL.Cells(intindex,1).value=cpustr
 crt.screen.Send "get memory"& Chr(10)


 crt.Screen.WaitForString "->"
 screenrow = crt.screen.Rows - 1
 memorystr = crt.Screen.Get(screenrow, 1, screenrow, 110 )
 'objXL.Cells(intindex,2).value=memorystr
 crt.screen.Send "get session | include alloc"& Chr(10)


 crt.Screen.WaitForString "->"
 screenrow = crt.screen.Rows - 1
 connstr = crt.Screen.Get(screenrow, 1, screenrow, 110 )
 'objXL.Cells(intindex,3).value=connstr


 crt.screen.Send "exit"& Chr(10)

'处理提处字符串的信息,通过unix系统进行数据计算(字符提取)
 objwb.Cells(intindex,6).value=datetime   '记录日期
 objwb.Cells(intindex,4).value=dultname
 objwb.Cells(intindex,13).value=setname
 objwb.Cells(intindex,14).value=systemtype
 
 objwb.Cells(intindex,18).value="正常"
 objwb.Cells(intindex,19).value="正常"
 objwb.Cells(intindex,20).value="正常"

 crt.Screen.WaitForString ">"
 crt.screen.Send "echo "& cpustr & "| awk -F" & Chr(34)&":"&Chr(34)&" '{print $2}'" & Chr(10)
 crt.Screen.WaitForString ">"
 screenrow = crt.screen.Rows - 1
 cpustr = crt.Screen.Get(screenrow, 1, screenrow, 110 )
  MyFile.WriteLine(cpustr)
 objwb.Cells(intindex,15).value=cpustr
 crt.screen.Send "echo "& memorystr & "| awk -F"&Chr(34)&" "&Chr(34)&" '{print $3,$5}'"&"| awk -F"&chr(34)&","&chr(34)&" '{printf("&chr(34)&"%3.1f%/n"& chr(34)&",$1*100/($1+$2))}'"&chr(10)
 crt.Screen.WaitForString ">" 
 screenrow = crt.screen.Rows - 1
 memorystr = crt.Screen.Get(screenrow, 1, screenrow, 110 )
 objwb.Cells(intindex,16).value=memorystr
   MyFile.WriteLine(memorystr)
 crt.screen.Send "echo "& connstr  &"|awk -F"&Chr(34)&" "&Chr(34)&" '{print $2}' | awk -F"&chr(34)&"/"&chr(34)&" '{print $1}'"&Chr(10) 
 crt.Screen.WaitForString ">"
 screenrow = crt.screen.Rows - 1
 connstr = crt.Screen.Get(screenrow, 1, screenrow, 110 )
 objwb.Cells(intindex,17).value=connstr
   MyFile.WriteLine(connstr)
 crt.screen.Send Chr(10)
intindex=intindex+1

rs.movenext





Wend
 crt.Screen.WaitForString "eric@dszmas1o> "
 crt.screen.Send  "exit" & Chr(10)
 crt.Screen.Synchronous = False


objwb.Cells.Select
objXL.Selection.Rows.AutoFit
objXL.Selection.Columns.AutoFit
objXL.cells(1,1).Select

objXL.ActiveWorkBook.SaveCopyAs("c:/firewall/ttt.xls")
objXL.Quit()                 ' Quit Excel



rs.close
 MyFile.Close
Set rs=Nothing

Set cn=Nothing

End Sub

Juniper Netscreen防火墙VPN配置案例

昆山主厂固定ip连接外网,一根专线连接台湾总部,使用一台cisco的1812作为核心路由并使用dhcp分配ip,内部有一台ISA服务器控制用户上网。 上海adsl拨号上网,没有固定ip,有业务需要通...
  • cocoww2012
  • cocoww2012
  • 2011年12月23日 09:15
  • 646

netscreen防火墙端口映射(vip)

找到你设置的外网口(Untrust),比如SSG5中点击Edit在Properties中找到VIP点击如果你有多个外网IP地址,你可以选择填入你的Virtual IP Address如果ISP只给...
  • kepa520
  • kepa520
  • 2015年07月23日 11:04
  • 386

juniper防火墙网络故障信息收集方法

转自杜松之家;http://www.juniperbbs.net/ 在命令行(通过TELNET、SSH或CONSOLE登陆)状态下: 防火墙基本信息收集:(以下以NS-500为例) ns...
  • islandstar
  • islandstar
  • 2012年01月12日 17:59
  • 940

netscreen 外网访问VIP配置

1、编辑interfaceNetwork > Interfaces (List)List 5102050100per page       List  ALL(5) Layer2(0) Layer...
  • hongweigg
  • hongweigg
  • 2011年06月16日 20:31
  • 2714

Netscreen 防火墙配置文档

Netscreen 配置文档 1、进入字符配置界面:    用随机带的CONSOLE线,一头接计算机串口,一头接E1端口,在计算机上打开超级终端进行配置,用户名,密码都是NETSCREEN。2、进入W...
  • kevin_2911
  • kevin_2911
  • 2009年08月17日 16:11
  • 266

win7 下的netscreen remote

netscreen remote vpn client是不支持win7的,这个信息可以在官方网站上找到,今天在google上搜索到下面的一条信息,按照这个方法倒是可以: 1. Stop the Vo...
  • compard
  • compard
  • 2011年01月17日 08:03
  • 7359

Netscreen密码恢复

Netscreen密码恢复[include Os (2 files)]关于NS的密码恢复,据说3.0版本以上可以以序列号做用户名和密码,恢复到出厂设置,但很多用户试了不成功: ...
  • iiprogram
  • iiprogram
  • 2006年03月15日 16:23
  • 2590

NetScreen往事100-陈怀临

【华人在硅谷】NetScreen往事100 陈怀临 2012-12-11 导语:“下午要在厦门见邓锋。突然又想起了许多NetScreen的往事。我是一个能写代码的文艺青年。决定在weibo上,来...
  • rockywangsdc
  • rockywangsdc
  • 2016年02月23日 13:48
  • 890

关于用InternetFirewallEnabled判断是否启用windows防火墙的问题?

¥¥¥10/27/2007 4:10 AM PST Question 您好,在测试微软提供的ISA RQS Script Sample( RQScript.Vbs )时,我遇到一个问题。脚本中先假设计...
  • tuwen
  • tuwen
  • 2008年09月15日 01:12
  • 1608

状态防火墙 & 深度检测防火墙

状态式防火墙检测    为了保护所有网络连接的安全性,Juniper网络公司设备使用了一种名为状态式检测的动态数据包过滤方法。利用这种方法,防火墙就可以在一个数据包报头中收集有关各种组件的信息--源和...
  • hack8
  • hack8
  • 2009年01月11日 12:28
  • 1115
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:vbscript应用于netscreen防火墙检查
举报原因:
原因补充:

(最多只允许输入30个字)