利用脚本编程格式化输出转存系统日志
 网龙首页 | 操作系统 | 网络硬件 | 组网建网 | 网络建设 | 架站技术 | IT认证 | 网络安全 | 网络存储 | 网龙论坛
首页 >> 网络安全 >> 黑客防范 >> 新闻正文

利用脚本编程格式化输出转存系统日志

http://www.wapease.com/network/ 2004-7-22 浏览次数: [专题阅读]

日志对于操作系统来说其重要性时不言而喻的,一个优秀的nt网络的管理员,往往会定期的备份系统日志,以备查询服务器运行状况及系统安全状况。
如果利用系统日志的“另存为”功能手工备份,则比较麻烦,而且输出的日志难以实现格式化输出,微软的resource kit工具包中有一个免费的查看本地或远程日志的小工具dumpel.exe,利用它可以把日志存为文本文件以备后需,在这里我利用windows脚本编程来实现定期备份并格式化输出html文件,如果条件许可,可以直接转储到打印机上打印。下面是具体的实现方法。windows脚本编程包括vbscript和javascript,这也是网页特效编程中常见的语言,实际上利用vbs和js强大的系统和网络管理功能,可以使系统管理员简化很多工作的。
vbs和js本身不提供察看日志的方法,但wscript.shell具有run方法,即可以运行windows命令,所以我们要借助上面说的dumpel工具,首先说一下它的使用方法,
dumpel -f file [-s \\\\server] [-l log [-m source]] [-e n1 n2 n3...] [-r] [-t] [-d x]
常用的参数:
-f file 即为日志的存储位置和文件名
-s server 在查看远程日志时使用(必须有admin权限)
-m 过滤日志条件
-l 指定日志,如系统日志(system),应用程序(application),安全日志(security),域控制器还有dns,文件复制等
例如,要把server01上安全日志保存为security.log,
命令:dumpel -f security.log -s \\\\server01 -l security
然后即产生一个security.log的文本文档,为了得到格式化输出的日志文件,我们采取下面的编程方法:
假设我们要查看日志的服务器为\\\\server, 存储位置为\\\\data\\backup,文件名为 "计算机名+日期+日志类型".html
并通过计划任务,一天产生一个html文档,原代码如下:
logreport.js
month=new Array(12)
month[1]="一月"
month[2]="二月"
month[3]="三月"
month[4]="四月"
month[5]="五月"
month[6]="六月"
month[7]="七月"
month[8]="八月"
month[9]="九月"
month[10]="十月"
month[11]="十一月"
month[12]="十二月"
days=new Array(7)
days[1]="星期日"
days[2]="星期一"
days[3]="星期二"
days[4]="星期三"
days[5]="星期四"
days[6]="星期五"
days[7]="星期六"
function theData(aDate) {
var currentday=days[aDate.getDay()+1]
var currentmonth=month[aDate.getMonth()+1]
return currentday+","+currentmonth+","+aDate.getDate()
}
var result;result=0var ws=WScript.CreateObject("WScript.shell")
c=ws.expandenvironmentstrings("%computername%")
netdrive="\\\\date\\backup"

today=new Date()
var logday=today.getDate()
var logmonth=today.getMonth()

logarray=new array(2)
logarray[0]="system"
logarray[1]="application"
logarray[2]="security"
for (l in logarray) {
ws.run("dumpel.exe /s \\\\server /l "+logarray[l]+" /f "+netdrive+"\\\\"+c+"-"+logmonth+"-"+logday()+"-"+logarray[l]+".log /d 1", 0,"TRUE")
}
ForReading=1
ForAppending=8

for (l in logarray) {
var fs=new ActiveXObject("scripting.FileSystemObject")
var f=fs.opentextfile(""+netdrive+"\\\\"+c+"-"+logmonth+"-"+logday()+"-"+logarray[l]+".log",ForReading,"TRUE")
fContents=f.ReadAll()f.Close()
var f=fs.OpenTextFile(""+netdrive+"\\\\"+c+"-"+logmonth+"-"+logday()+"-"+logarray[l]+".htm",ForAppending,"TRUE")
fHeader="<html><head><title>Daily"
fHeader+=logarray[l]
fHeader+=cfHeader+="</title></head>"
fHeader+="<body bgcolor=#ffffff text=#000000>"
fHeader+="<h1>daily"
fHeader+=logarray[l]
fHeader+=" log report for"
fHeader+=cfHeader+="</h1>"
fHeader+="<h3>"
fHeader+=theData(today)
fHeader+="</h3>"
fHeader+="<pre>"
f.Write(fHeader)
f.Write(fContents)
fFooter="</pre></body></html>"
fWrite(fFooter)
f.Close()
}
将以上代码用记事本打开,并把后缀名存为js,并与dumpel.exe放

此新闻共有21 2

Google
 

收藏该文章 | 发送给好友 | 打印该文章 | 我要投稿 | 去论坛讨论

·木马防御全攻略(一)
·Win2000下修改注册表加强安全
·OICQ安全手册(一)
·OICQ安全手册(三)
·木马防御全攻略(二)
·木马防御全攻略(三)
·个人电脑防黑的安全准则
·检测系统是否被入侵者安装了rootkit honeyoung

共有评论查看评论
姓名:
发表评论请遵守相关规定!
*《互联网电子公告服务管理规定》
*《全国人大常委会关于维护互联网安全的规定》
万易简介 | 网站简介 | 栏目简介 | 服务报价 | 联系方式 | 万易诚聘 | 版权信息
万易网络 版权所有
www.wapease.com
未经书面许可,任何人不得转载本站信息
联系方式:Info@wapease.com 热线QQ:44977515