linux 记录所有系统用户bash操作日志

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 记录所有系统用户bash操作日志相关的知识,希望对你有一定的参考价值。

记录所有用户登录系统的任何操作日志,以便有据可查。

1.编辑 /etc/profile文件

vim /etc/profile
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 300 /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
  1. 加载文件生效
source /etc/profile

/var/log/history 日志的存放位置,该目录下以每个用户为名创建一个文件夹,每次用户退出后都会产生以用户名、登录IP、时间的日志文件,以及用户本次的所有操作。
root用户不记录在此。

以上是关于linux 记录所有系统用户bash操作日志的主要内容,如果未能解决你的问题,请参考以下文章

linux 用户操作记录并录入日志

Linux下记录所有用户的登录和操作日志

在Linux下记录所有用户的登录和操作日志

Linux bash运维操作日志审计(单服务器)

通过xhell进入linux系统 history历史命令怎么同步

linux命令历史