zoukankan      html  css  js  c++  java
  • linux中root用户查看所有用户的历史操作命令

    转载https://blog.csdn.net/qq_27786919/article/details/91353351

    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

    8、查看日志

    cat /var/log/usermonitor/usermonitor.log

  • 相关阅读:
    nginx实战
    apache定制错误页面
    openstack虚拟机获取不到ip
    ansible-galera集群部署(13)
    kubernetes监控(12)
    kubernets部署sock-shop微服务电商平台(11)
    用ConfigMap管理配置(10)
    k8s管理机密信息(9)
    shell编程(2)
    shell练习题集合
  • 原文地址:https://www.cnblogs.com/mihoutao/p/13489808.html
Copyright © 2011-2022 走看看