Linux记录用户账户的登陆时间和行为信息

??? 公司审计部门要求我们对所有的主机系统添加用户行为审计功能,记录用户账户的登陆时间和行为信息,我这边用了一个简单的方法实现以下,下面我简单介绍一下实现的方法

实施步骤:

1、创建用户行为日志存放目录/var/audit,目录赋予777权限(因为所有用户都要向这个目录写入文件)

mkdir?-p?/var/audit;chmod?777?/var/audit

? ?

2、修改系统环境变量文件/etc/profile,文件新增用户登录记录信息,添加如下内容

#Add?log?user?behavior

export?HISTTIMEFORMAT="%F?%T?"

shopt?-s?cmdhist

shopt?-s?histappend

echo?"$(date?"+%F?%T")?$(whoami)?login"?>>?/var/audit/$(whoami)-history-$(date?"+%F")

? ?

3、修改用户家目录中的.bash_logout文件,用户退出时记录用户行为信息到行为日志文件中,添加如下内容(系统中现有用户都要添加,以后新增用户无需手动添加)

#Add?log?user?behavior

history?>>?/var/audit/$(whoami)-history-$(date?"+%F")

history?-c

rm?-f?$HISTFILE

echo?"$(date?"+%F?%T")?$(whoami)?logout"?>>/var/audit/$(whoami)-history-$(date?"+%F")

? ?

4、用户模板文件中添加如下内容

/etc/skel/.bash_logout文件中添加:

#Add?log?user?behavior

history?>>?/var/audit/$(whoami)-history-$(date?"+%F")

history?-c

rm?-f?$HISTFILE

echo?"$(date?"+%F?%T")?$(whoami)?logout"?>>/var/audit/$(whoami)-history-$(date?"+%F")

? ?

目前我已经在2.127服务器上做了相关配置,用户审计日志格式如下:

技术分享

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。