免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2205 | 回复: 4
打印 上一主题 下一主题

求一脚本,关于日志分析。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-10-16 20:36 |只看该作者 |倒序浏览
现在想要把squid的日志和samba的日志重组,实现基于用户名显示的squid日志。如:
通过last |grep smb/1|grep "`date |awk '{print $1 " " $2 " " $3}'`"
过滤出samba的用户登录信息,得到如下结果:
hh       smb/1        192.168.9.91     Thu Oct 16 15:54   still logged in
hh       smb/1        192.168.9.91     Thu Oct 16 15:06 - 15:54  (00:47)
hh       smb/1        192.168.9.91     Thu Oct 16 15:05 - 15:06  (00:00)
bb       smb/1        192.168.9.91      Thu Oct 16 14:00-15:00 (00:00)
现在想要把第一列的用户名根据登录时间的区别加入到squid日志中,并通过nbtscan 192.168.9.0/24得到计算机名与ip地址的对应,把ip地址替换成机器名。squid原来日志如下:
192.168.9.91 15:23:01 http://u39.eset.com/eset_eval/update.ver
192.168.9.91 14:12:21 http://wing.toolbar.soso.com/session/security_session2.q
192.168.9.91 15:14:12 http://wing.toolbar.soso.com/session/security_session2.q
192.168.9.91 15:14:15 http://rsup08.rising.com.cn/rs2008/RSUPcVer.xml
192.168.9.91 15:00:02 http://wing.toolbar.soso.com/session/security_session2.q
192.168.9.91 14:25:23 http://wing.toolbar.soso.com/session/security_session2.q
192.168.9.91 14:52:12 http://scdown.qq.com/keys/config.htm
nbtscan 192.168.9.0/24 结果如下:
192.168.9.91     张三           <server>  <unknown>        00:14:78:0c:fc:7c

通过处理后的显示如下:

张三  hh 15:23:01 http://u39.eset.com/eset_eval/update.ver
张三  bb 14:12:21 http://wing.toolbar.soso.com/session/security_session2.q
张三  hh 15:14:12 http://wing.toolbar.soso.com/session/security_session2.q
张三  hh  15:14:15 http://rsup08.rising.com.cn/rs2008/RSUPcVer.xml
张三   hh 15:00:02 http://wing.toolbar.soso.com/session/security_session2.q
张三    bb 14:25:23 http://wing.toolbar.soso.com/session/security_session2.q
张三    bb 14:52:12 http://scdown.qq.com/keys/config.htm
以上只假设有一个用户的情况。
总的来说,就是结合squid和samba的日志,在透明代理和samba做PDC的情况下实现记录什么人在哪台电脑上干了什么。望大家看看,帮帮忙,俺先谢谢了!

[ 本帖最后由 wendaozhe 于 2008-10-16 20:38 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2008-10-16 20:48 |只看该作者
可能我想的复杂了,最终的目的很简单,就是想在squid透明代理和samba PDC的环境下实现记录什么人在哪台电脑上干了什么(电脑实行实名制),还望版里现实中的高手指点一二啊!

论坛徽章:
0
3 [报告]
发表于 2008-10-16 22:01 |只看该作者
awk 'NR==FNR{a[$3]=$1;next}NR > FNR{ if(a[$1]){ print $1,$2,$3}}' samba squid> temp; awk 'NR==FNR {b[$1]=$2;next;} NR>FNR{if(b[$1]) print b[$1],$1,$2,$3 }'  nbtscan temp


samba是你的sambe文件,squid是你的squid文件,nbtscan是你的nbtscan文件,temp是个临时文件。我不知道能完全满足你的需求吗?因为hh.bb我没输出,而且可能不一定正确

我写得过于复杂了,还请高手指导!

[ 本帖最后由 zhuyubei 于 2008-10-16 22:07 编辑 ]

论坛徽章:
0
4 [报告]
发表于 2008-10-17 14:42 |只看该作者
join -j1 3 -j2 1 logfile1 logfile2

论坛徽章:
0
5 [报告]
发表于 2008-10-17 15:16 |只看该作者

回复 #4 xinyv 的帖子

必须按时间区分用户,因为同一ip有不同用户登录。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP