红联Linux门户
Linux帮助

详细解析Linux用户操作记录查看

发布时间:2011-06-13 10:12:52来源:Linux社区作者:佚名

Linux用户操作记录我们都可以通过命令history来查看历史记录,但是如果因为某人误操作了删除了重要的数据,那么Linux history命令就基本上不会有太大的作用了。我们怎么来查看Linux用户操作记录,有没有什么办法实现通过记录登陆后的IP地址和某用户名所操作的历史记录呢?答案:有的。


通过在/etc/profile里面加入以下代码就可以实现:


PS1="`whoami`@`hostname`:"'[$PWD]'

history 

USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'` 

if [ "$USER_IP" = "" ] 

then 

USER_IP=`hostname` 

fi 

if [ ! -d /tmp/dbasky ] 

then 

mkdir /tmp/dbasky 

chmod 777 /tmp/dbasky 

fi 

if [ ! -d /tmp/dbasky/${LOGNAME} ] 

then 

mkdir /tmp/dbasky/${LOGNAME} 

chmod 300 /tmp/dbasky/${LOGNAME} 

fi 

export HISTSIZE=4096

DT=`date " %Y%m%d_%H%M%S"` 

export HISTFILE="/tmp/dbasky/${LOGNAME}/${USER_IP} dbasky.$DT"

chmod 600 /tmp/dbasky/${LOGNAME}/*dbasky* 2>/dev/null


其实通过上面的代码不能看出来,在系统的/tmp新建个dbasky目录,在目录中记录了所有的登陆过系统的用户和IP地址,是不是觉得很方便呢?我们还可以用这个方法来监测系统的安全性。这是Linux用户操作记录的另一种查看方式。