刚刚在讨论Linux里面设计资料备份的问题,突然想到,如果设计自己把资料删除了,那么就无法追溯了,因为GenFlex的log文件是存放在job下面的,如果job删掉了,那么同样丢失了log文件。
所以百度了一下如何记录用户操作记录。
下面这篇来源不详,我是从51CTO转过来的,做个存档,后面会加入到公司的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用户操作记录的另一种查看方式。
评论区