ubuntu 自定义记录用户登录以及操作日志

  • Post author:
  • Post category:其他


root@ms:~# cd /etc
#更改之前先备份,养成良好的习惯,否则肠子都要悔青了
root@ms:/etc# cp profile profile.bak
root@ms:/etc# vi profile

在文章末尾加入下列shell脚本

history

USER=`whoami`

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 /var/log/history ]; then

mkdir /var/log/history

chmod 777 /var/log/history

fi

if [ ! -d /var/log/history/${LOGNAME} ]; then

mkdir /var/log/history/${LOGNAME}

chmod 777 /var/log/history/${LOGNAME}

fi

export HISTSIZE=4096

DT=`date +”%Y%m%d_%H:%M:%S”`

export HISTFILE=”/var/log/history/${LOGNAME}/${USER}@${USER_IP}_$DT”

chmod 600 /var/log/history/${LOGNAME}/*history* 2>/dev/null

/var/log/history/这个文件路径可以自己定义。

然后重启

root@ms:~#reboot

再次登录进去,进行几个操作,cd啦,ls啦,做个样子就行了。

然后退出登录。

再登录进去。

root@ms:~# cd /var/log/history
root@ms:/var/log/history# ls
#列出了以登录用户为名的文件夹
root
root@ms:/var/log/history# cd root
root@ms:/var/log/history/root# ls
#列出登录日志  格式:用户名@IP地址_时间
root@219.144.205.86_20181019_10:18:17
root@ms:/var/log/history/root# cat root@219.144.205.86_20181019_10:18:17
#列出上次操作的所有shell命令
cd /var/log/
ls
cd history/
ls
cd root/
ls
cd 
ls
ci /etc/profile
vi /etc/profile
cd /etc/
ls
cd
cd /home/
ll
cd /var/log/history/
ls
cd root/
ls -l
useradd test
passwd test
exit

注意!注意!注意!

在创建用户的时候,尽量使用adduser

要问为什么,就是在useradd的时候没有创建用户的家目录,在登录此用户的的时候会报错。

Could not chdir to home directory /home/test: No such file or directory

-sh: 29: history: not found

$

完结。



版权声明:本文为qq_38157006原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。