通过登陆IP记录Linux所有用户登录所操作日志的方法

对于Linux用户操作记录一般通过命令history来查看历史记录,但是如果在由于误操作而删除了重要的数据的情况下,history命令就不会有什么作用了。那么依然要存有历史操作记录应该如何来实现呢?

其实我们可以通过登陆IP地址来记录所有用户登录所操作的历史操作!具体操作就是在/etc/profile配置文件的末尾加入以下脚本代码来实现:

复制代码

代码如下:

[root@server ~]# cat >>/etc/profile<< EOF
>
> history
>
> USER=`whoami`
>
> 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}@${USER_IP}_history.$DT"
>
> chmod 600 /tmp/history/${LOGNAME}/*history* 2>/dev/null
>
> EOF
[root@server ~]# source /etc/profile
[root@server ~]# logout
# 此时需要退出系统再重新登录,在/tmp/history/目录下才有记录

通过上面的脚本代码可以看出来,在系统的/tmp下就新建了个history目录(这个目录可以自定义),在目录中记录了所有的登陆过系统的用户和IP地址,这也是监测系统安全的方法之一。在进行一系列的操作之后,我们进入/tmp/history目录查看历史记录:

复制代码

代码如下:

[root@server ~]# cd /tmp
[root@server tmp]# ll
总计 24
drwx------ 2 root root 4096 2012-10-11 gconfd-root
drwxrwxrwx 3 root root 4096 2012-10-11 history
drwx------ 2 root root 4096 08-11 01:11 keyring-Ki8IOJ
srwxr-xr-x 1 root root 0 2012-10-11 mapping-root
srw------- 1 root root 0 2012-10-11 scim-panel-socket:0-root
drwx------ 2 root root 4096 2012-10-11 ssh-jPPigl3182
drwx------ 2 root root 4096 10-10 21:16 ssh-KDmPtr3350
[root@server tmp]# cd history/
[root@server history]# ll
总计 4
d-wx------ 2 root root 4096 10-10 21:16 root
[root@server history]# cd root/
[root@server root]# ll
总计 4
-rw------- 1 root root 37 10-10 21:16 root@192.168.1.96_history.2012-10-10_21:16:42

(0)

相关推荐

  • vsftpd本地用户登录密码错误的解决方法

    今天发现自己虚拟机的vsftp使用本地用户名无法登陆,于是重新配置,但配置了很多次都没成功,一直显示 530 Login incorrect. Login failed 解决方式是将vsftp.con ...

  • CentOS系统如何添加用户操作日志?CentOS系统添加用户操作日志的方法

    CentOS系统如何添加用户操作日志?CentOS系统添加用户操作日志的方法

  • QQ登陆的历史IP记录怎么查

    QQ登陆的历史IP记录怎么查 现在就让系统天堂小编来教你如何查看QQ的登陆IP记录: 1.登陆QQ然后打开QQ主菜单(如下图红框所示位置)! 2.打开之后.点击安全中心,右侧会弹出选项.这里选择进入安 ...

  • 如何查询自己QQ的登陆ip地址

    想知道QQ上次在什么地方登录的?如何查询自己qq上次登录的时间地点呢?下面的方法就可以,与大家一起共享一下! 方法一 1.打开自己的邮箱. 2.登陆后单击页面的右方"我的信息"旁边 ...

  • 如何设置win10系统用户登录自动连接宽带

    现在大部分电脑都是win10系统,有些用户想知道如何设置用户登录自动连接宽带,接下来小编就给大家介绍一下具体的操作步骤.具体如下:1. 首先第一步先右键单击[此电脑]图标,接着在弹出的菜单栏中根据下图 ...

  • Linux下清空用户登录记录和命令历史的方法分享

    [root@localhost root]# echo > /var/log/wtmp 此文件默认打开时乱码的,里面可以看到ip等等信息 [root@localhost root]# echo ...

  • 在CentOS系统上查看用户登录记录的方法

    保留.维护和分析日志(如某个特定时期内发生过的,或正在发生的帐号事件),是Linux系统管理员最基础和最重要的任务之一.对于用户管理,检查用户的登入和登出日志(不管是失败的,还是成功的)可以让我们对任 ...

  • linux上统计指定用户登录数

    linux上统计指定用户登录数 操作方法 01 last //向屏幕显示用户登陆情况 grep 'root' //如果每一行带有'root',就显示那一行 cut -d ' ' -f1 //对每一行进 ...

  • Windows 7系统的详细记录用户登录时间

    微软中国Win7微博上有很多关于Win7系统的新闻、实用的小知识小技巧、丰富的Win7桌面主题壁纸、还有Win7最近更新的下载补丁等等、还有很多使用Win7的朋友在这里交流心得,还有一些轻松的娱乐和游 ...