linux查看用户的操作记录,Linux下查看用户登陆后的操作记录
Linux下查看用戶登陸后的操作記錄? 在linux系統的環境下,不管是root用戶還是其它的用戶只有登陸系統后用進入操作我們都可以通過命令history來查看歷史記錄,可是假如一臺 服務器多人登陸,一天因為某人誤操作了刪除了重要的數據。
這時候通過查看歷史記錄(命令:history)是沒有什么意義了。那有沒有什么辦法實現通過記錄登陸后的IP地址和某用戶名所操作的歷史記錄 呢?答案:有的。
通過在/etc/profile里面加入以下代碼就可以實現:
PS1="`whoami`@`hostname`:"'[$PWD]'
history
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`???????? #print $NF取最后一個域的字段
if [ "$USER_IP" = "" ]
then
USER_IP=`hostname`
fi
if [ ! -d /tmp/dbasky ]
then
mkdir /tmp/dbasky
chmod 777 /tmp/dbasky
fi
if [ ! -d /tmp/dbasky/${LOGNAME} ]
then
mkdir /tmp/dbasky/${LOGNAME}
chmod 300 /tmp/dbasky/${LOGNAME}
fi
export HISTSIZE=4096
DT=`date " %Y%m%d_%H%M%S"`
export HISTFILE="/tmp/dbasky/${LOGNAME}/${USER_IP} dbasky.$DT"
chmod 600 /tmp/dbasky/${LOGNAME}/*dbasky* 2>/dev/null
其實通過上面的代碼不能看出來,在系統的/tmp新建個dbasky目錄,在目錄中記錄了所有的登陸過系統的用戶和IP地址,是不是覺得很方便 呢?我們還可以用這個方法來監測系統的安全性。
可以看到在使用history命令的時候是沒時間顯示,不知道這個命令是什么時候所執行,這個時候可以編輯/etc/bashrc文件,加入如下三 行:?? HISTFILESIZE=2000
HISTSIZE=2000
HISTTIMEFORMAT=”%Y%m%d-%H%M%S: ”
export HISTTIMEFORMAT
保存后退出,關閉當前shell,并重新登錄
這個時候,在~/.bash_History文件中,就有記錄命令執行的時間了
總結
以上是生活随笔為你收集整理的linux查看用户的操作记录,Linux下查看用户登陆后的操作记录的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阴十字星是好是坏?
- 下一篇: linux设置默认的首页文件,Linux