linux 用户行为审计

在/etc/profile文件下添加如下shell即可(注意文件的权限问题!!)

[plain] view plain copy
  1. if ! test -z  "$BASH_EXECUTION_STRING" ; then  
  2.           echo "===== $(date "+%F  %T") $USER nologin cmd:   $BASH_EXECUTION_STRING" >>/var/log/command.log  
  3.   elif  shopt -q login_shell ; then  
  4.           printf "====== $(date "+%F  %T") new login the last cmd: ">>/var/log/command.log  
  5.   else  
  6.           printf "====== $(date "+%F  %T") su  the last cmd:  ">>/var/log/command.log  
  7.   fi  
  8.   export  HISTTIMEFORMAT="%F %T  $USER  ${SSH_TTY:5} ${SSH_CLIENT%% *}  "  
  9.   export PROMPT_COMMAND="history  1|tail -1|sed 's/^[ ]\+[0-9]\+   //'>> /var/log/command.log"  

所有命令会被记录在/var/log/command.log可以查看。


一:配置调试

1.创建用户审计文件存放目录和审计日志文件 ;
mkdir -p /var/log/usermonitor/

2.创建用户审计日志文件;
echo usermonitor >/var/log/usermonitor/usermonitor.log

3.将日志文件所有者赋予一个最低权限的用户;
chown nobody:nobody /var/log/usermonitor/usermonitor.log

4.给该日志文件赋予所有人的写权限;
chmod 002 /var/log/usermonitor/usermonitor.log

5.设置文件权限,使所有用户对该文件只有追加权限 ;
chattr +a /var/log/usermonitor/usermonitor.log
6.编辑/etc/profile文件,添加如下任意脚本命令;

代码1:
export HISTORY_FILE=/var/log/usermonitor/usermonitor.log
export PROMPT_COMMAND='{ date "+%y-%m-%d %T ##### $(who am i |awk "{print \$1\" \"\$2\" \"\$5}")  #### $(id|awk "{print \$1}") #### $(history 1 | { read x cmd; echo "$cmd"; })"; } >>$HISTORY_FILE'

代码2:
HISTTIMEFORMAT="%Y%m%d-%H%M%S: "
export HISTTIMEFORMAT
export HISTORY_FILE=/var/log/usermonitor/usermonitor.log
export PROMPT_COMMAND='{ command=$(history 1 | { read x y; echo $y; }); logger -p local1.notice -t bash -i "user=$USER,ppid=$PPID,from=$SSH_CLIENT,pwd=$PWD,command:$command"; } >>$HISTORY_FILE'

代码3:
export HISTORY_FILE=/var/log/usermonitor/usermonitor.log
PROMPT_COMMAND='{ date "+%Y-%m-%d %T ##### USER:$USER IP:$SSH_CLIENT PS:$SSH_TTY ppid=$PPID pwd=$PWD  #### $(history 1 | { read x cmd; echo "$cmd"; })";} >>$HISTORY_FILE'
7.使配置生效
source  /etc/profile

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux安全审计和数据保护是Linux系统中非常重要的一部分,以下是一些相关的方法和步骤: 1. SELinuxLinux系统中的一个强制访问控制(MAC)系统,它可以限制进程只能访问它被授权的资源。可以通过以下命令来检查SELinux是否开启: ```shell sestatus ``` 如果SELinux处于enforcing模式,则表示它正在强制执行安全策略。如果SELinux处于permissive模式,则表示它只记录违规行为而不强制执行安全策略。如果SELinux处于disabled模式,则表示它已被完全禁用。 2. 可以使用Linux Audit框架来记录系统上发生的安全事件。可以使用以下命令来检查Linux Audit是否已安装: ```shell rpm -q audit ``` 如果未安装,则可以使用以下命令安装: ```shell yum install audit ``` 安装完成后,可以使用以下命令来启用Linux Audit: ```shell systemctl enable auditd.service systemctl start auditd.service ``` 然后,可以使用以下命令来查看Linux Audit日志: ```shell ausearch -m USER_AUTH ``` 这将显示所有与用户身份验证相关的事件。 3. 可以使用Linux系统中的加密文件系统来保护敏感数据。可以使用以下命令来创建一个加密文件系统: ```shell cryptsetup luksFormat /dev/sdb1 cryptsetup luksOpen /dev/sdb1 my_encrypted_fs mkfs.ext4 /dev/mapper/my_encrypted_fs mount /dev/mapper/my_encrypted_fs /mnt/my_encrypted_fs ``` 这将创建一个名为my_encrypted_fs的加密文件系统,并将其挂载到/mnt/my_encrypted_fs目录中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值