转自:https://zhuanlan.zhihu.com/p/524921170

危险操作一追到底--Linux的历史记录

为了更好的自己
 
 

概述

在Linux下使用history命令可以查看用户所有的历史操作记录,默认记录在用户目录下.bash_history文件中。如果黑客入侵后会删除该文件销毁痕迹。这就需要合理的备份.bash_history文件

配置方法

1.history命令只是单纯的记录命令,并没有记录时间,所以要把格式做下修改,在/etc/bashrc文件中添加

HISTFILESIZE=4000   #保存命令总数
HISTSIZE=400 #history命令输出总数
HISTTIMEFORMAT='%F %T ' #时间格式,注意最后有空格
export HISTTIMEFORMAT

下面使用脚本来详细记录历史命令。可以将下面的代码加到/etc/profile中

#save history
IP=$(who -u am i|awk '{print $NF}'|sed -e 's/[()]//g')
HISTDIR=/opt/.history
if [ -z $IP ];then
IP=$(hostname)
fi
if [ ! -d $HISTDIR ];then
mkdir -p $HISTDIR
chmod 777 $HISTDIR
fi
if [ ! -d $HISTDIR/$LOGNAME ];then
mkdir -p $HISTDIR/$LOGNAME
chmod 300 $HISTDIR/$LOGNAME
fi
export HISTSIZE=4000
DateTime=$(date +%F_%H%M%S)
export HISTFILE="$HISTDIR/$LOGNAME/$IP.histroy.$DateTime"
HISTTIMEFORMAT='%F %T '
chmod 600 $HISTDIR/$LOGNAME/*.history.* 2>/dev/null

这段代码将每个用户本次登陆主机的shell命令执行历史以文件的形式保存下来,每个用户一个文件夹。

发布于 2022-06-06 15:26

最新文章

  1. 【原】iOS学习之第三方-AFNetworking1.3.0
  2. jQuery triger与trigerHandler的区别
  3. Android中的IOC框架,完全注解方式就可以进行UI绑定和事件绑定
  4. svn常见错误总结
  5. 详解 CSS 属性 - :before && :after
  6. ConcurrentHashMap 原理分析
  7. PL/SQL Developer主界面窗口左边窗口默认设置
  8. leecode -- 3sum Closet
  9. [SQL]LeetCode177. 第N高的薪水 | Nth Highest Salary
  10. PE知识复习之PE的RVA与FOA的转换
  11. Ubuntu 16.04将左侧面板置于底部
  12. Java容器:HashTable, synchronizedMap与ConcurrentHashMap
  13. CentOS 6.5 搭建NFS文件服务器
  14. java实现WC项目
  15. 【模板】.bat对拍
  16. HBase入门基础教程之单机模式与伪分布式模式安装(转)
  17. vue 和ng的区别
  18. SpringBoot ApplicationRunner/CommandLineRunner
  19. sscanf输入总结
  20. openwrt固件编译过程

热门文章

  1. 英华学堂网课助手Linux版本
  2. 如何在C#中接受或拒绝 Excel 中的修订
  3. 大数据 - DWM层 业务实现
  4. [编程基础] Python列表解析总结
  5. (四)elasticsearch 源码之索引流程分析
  6. 洛谷 P2440木材加工 题解
  7. Unity之UGUI鼠标进入离开&&拖拽实现
  8. Hive删除分区名称中含有特殊字符
  9. 力扣---213. 打家劫舍 II
  10. Google_MapReduce中文版