基于bsd watch监控用户操作记录
前几日看到bsd下的watch命令
,可以用他监控用户的操作记录,感觉非常棒,突发灵感,也闲的无聊,准备利用他监控系统
用户什么登陆,登陆后都做了什么,
设想如下:
1,自动监测用户,发现有新用户进来,获取他的tty ,开启watch 去监控
2.用户退出时,监控停止,监控的数据插入数据库
3,通过前台页面,调用watch的监控记录
一,监控端服务器
脚本
#cat checklogin.pl
代码:
#!/usr/bin/perl
system "killall -9 watch";
open (AA,">/usr/zzxia/log");
@ttl="";
AAA:
@wda=`who`;
for ($i=0;$i<@wda;$i++) {
chomp ($wda[$i]);
@str=split(/\s+/,$wda[$i]);
$datestr=`date '+%Y-%m-%d %T'`;
system "echo 'use userlog;' > /usr/zzxia/$str[1].log1";
system
qq ~ echo "INSERT INTO userip6
VALUES('$str[0]','$str[5]','$str[2]-$str[3]-$str[4]','$datestr','">>
/usr/zzxia/$str[1].log1~;
chomp ($stty=$str[1]);
print AA "who value $stty\n";
@watchs1=`ps -ax | grep watch | grep -v grep `;
$tta=0;
for ($j=0;$j<@watchs1;$j++){
chomp ($watchs1[$j]);
@watchs=split(/\s+/,$watchs1[$j]);
chomp ($ws=$watchs[5]);
print AA "watch is $ws\n";
if ($stty eq $ws) {
$tta=1;
}
}
if ( $tta==0 ) {
system "/usr/sbin/watch $stty >/usr/zzxia/$stty.log2& ";
$ppid1=`ps -ax | grep $stty | grep -v ssh
d |grep -v grep `;
@ppid2=split (/\s+/,$ppid1);
chomp ($ppid=$ppid2[0]);
if ($ppid){
print AA "ppid is $ppid \n";
push (@ttl,"$stty,$ppid");
}
}
}
@ttl2="";
print AA "ttl is @ttl\n";
for ($l=1;$l<@ttl;$l++) {
@ttls=split(/,/,$ttl[$l]);
chomp ($kpid=$ttls[1]);
chomp ($ktty=$ttls[0]);
$sp=`ps -aux |grep $kpid |grep -v grep`;
if ( !$sp)
{
system "cat /usr/zzxia/$ktty.log1 /usr/zzxia/$ktty.log2>/usr/zzxia/$ktty.log3 ";
system qq~echo "');">>/usr/zzxia/$ktty.log3~;
system "rm /usr/zzxia/$ktty.log1 /usr/zzxia/$ktty.log2 ";
print AA "mysql
-h 192.168.0.1 -utest -ptest </usr/zzxia/$ktty.log3\n";
`mysql -h 192.168.0.1 -utest -ptest </usr/zzxia/$ktty.log3`;
system "rm /usr/zzxia/$ktty.log3";
}else {
push (@ttl2,"$ktty,$kpid");
}
}
@ttl=@ttl2;
sleep(3);
goto AAA;
动行脚本checklogin.pl & 以后台的方式 运行,运行后会在/usr/zzxia/目录下生成以tty开头的临时份件,程序运行状态可查看log文件,
前台界面好下:
登陆情况:
用户操作记录
分享到:
相关推荐
基于BSD系统的工控设备信息收集测试程序
OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。
安卓开发必备,cocos2d-x网络库, 基于BSD Socket开发的网络通讯模块
基于4.4BSD的类UNIX操作系统,用于CNC /机器控制应用程序。 使用低成本硬件,FabBSD可用于控制各种CNC铣床,车床,铣床,过程控制和自动化设备。
深度学习、数字图像处理常用数据集BSD68,BSD100,分别为68张灰度图,大小不一;100张彩色图像,大小不一。
BSD Unix分支的经典版本,是研究unix操作系统内核的基础,后续分支如FreeBSD、Linux都从该版本继承或借鉴了很多设计思想
BSD500数据集包括图像分割和轮廓提取的Ground Truth,训练集和测试集各200张,验证集100张。
bsd架设管理与应用
bsd_type.h
BSD hacks techniques
The Design and Implementation of the 4.4BSD Operating System Marshall Kirk McKusick Keith Bostic Michael J. Karels John S. Quarterman Copyright © 1996 Addison-Wesley Longman, Inc The second ...
车载监控设备AI系统ADAS+DSM+BSD
bsd 的 rc.d 介绍 pdf english
FREE BSD操作系统设计与实现 清晰 中文版
百顺达BSD保安对讲机写频
BSD A8驱动板 安卓系统 广告机 数据规格及事项
但由于FreeBSD默认没有图形桌面,可以安装KDE等图形界面,但普通用户安装图形界面比较复 杂,而且平时的应用操作也需要经过学习才能掌握. PC-BSD致力于解决这些问题,为所有人提供一个易用漂亮稳定的操作系统:
lib-Network 基于BSDSocket封装的跨平台多线程网络库,用于cocos2d-x游戏开发
TCP/IP详解卷2中涉及到的4.4BSD-Lite源码,详见该书1.13节的说明。
4.4BSD-Lite TCP/IP协议栈部分源代码