按登录IP记录Linux所有用户操作日志

Linux用户操作记录一般通过命令history来查看历史记录,但是如果因为某人误操作了删除了重要的数据,这种情况下history命令就不会有什么作用了。

我们可以下方法可以实现通过记录登陆IP地址和所有用户登录所操作的日志记录!

在/etc/profile配置文件的末尾加入以下脚本代码就可以实现:

# vim /etc/profile

######################

PS1="`whoami`@`hostname`:"'[$PWD]'

history

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 /tmp/history ]

then

mkdir /tmp/history

chmod 777 /tmp/history

fi

if [ ! -d /tmp/history/${LOGNAME} ]

then

mkdir /tmp/history/${LOGNAME}

chmod 300 /tmp/history/${LOGNAME}

fi

export HISTSIZE=4096

DT=`date +"%Y%m%d_%H%M%S"`

export HISTFILE="/tmp/history/${LOGNAME}/${USER_IP} history.$DT"

chmod 600 /tmp/history/${LOGNAME}/*history* 2>/dev/null

#######################

# source /etc/profile

通过上面的代码可以看出来,在系统的/tmp新建个history目录(这个目录可以自定义),在目录中记录了所有的登陆过系统的用户和IP地址,这也是监测系统安全的方法之一。

参考:

http://www.ha97.com/4733.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、合理使用Shell历史命令记录功能 在Linux下可通过history命令查看用户所有的历史操作记录,同时sh...
    大福技术阅读 883评论 0 0
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,886评论 18 139
  • #!/bin/bash #install_package #2016/10/28 by Chris_JD #Bas...
    宇信智臻sy阅读 1,109评论 1 5
  • 内核的引导(BIOS OS Read /boot 内核文件) - 运行init(所有进程的父进程 /etc/ini...
    时待吾阅读 608评论 0 1
  • 回想今天发生的事情,除了考试之外没有别的。早上的天气依旧灰蒙蒙冷冰冰的,让人禁不住打寒战。晨读打卡依旧。 中午慌...
    挪威的森灵阅读 164评论 0 0