日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux系统监控:记录用户操作轨迹,谁动过服务器

發布時間:2025/3/20 linux 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux系统监控:记录用户操作轨迹,谁动过服务器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、前言

? ? ? 我們在實際工作當中,都碰到過誤操作、誤刪除、誤修改過配置文件等等事件。對于沒有堡壘機的公司來說,要在linux系統上深究到底誰做過配置文件的修改、做過誤刪除是很頭疼的事情,特別是遇到刪庫跑路的事件,更頭大了。當然你可以通過history來查看歷史命令記錄,如果把history記錄涂抹掉了,是不是啥也看不到了,如果你想查看在某個時間段到底是誰通過vim編輯過某個文件呢?

? ? ? 那么,有什么辦法可以看見這些操作呢,答案是一定有的,具體怎么實現呢,linux script命令正有如此強大的功能,可以滿足我們的需求,script可以記錄終端會話,只要是linux6.3以上的系統,都會自帶script命令,下面我用centos 7系統來測試一下。


2、配置

2.1 驗證script命令(我這里是有的)

1 2 [root@localhost?~]#?which?script /usr/bin/script


2.2 配置profile文件,在末尾添加如下內容:

1 2 3 4 5 [root@localhost?~]#?vim?/etc/profile if?[?$UID?-ge?0?];?then ????????exec?/usr/bin/script?-t?2>/var/log/script/$USER-$UID-`date?+%Y%m%d%H%M`.date?-a?-f?-q?/var/log/script/$USER-$UID-`date?+%Y%m%d%H%M`.log fi
參數: ????-t   ?指明輸出錄制的時間數據 ????-f?????如果需要在輸出到日志文件的同時,也可以查看日志文件的內容,可以使用?-f?參數。PS:可以用于教學,兩個命令行接-f可以實時演示 ????-a?????輸出錄制的文件,在現有內容上追加新的內容 ????-q?????可以使script命令以靜默模式運行


如下圖所示:

說明:

用戶登錄執行的操作都會記錄到/var/log/script/*.log? 里(保存日志的目錄根據你自己定義),我們可以通過more、vi等命令查看目錄里的日志。


注意:

  • 我這里把用戶ID大于0的都記錄下來了,你可以重新登錄用戶,隨便操作一些命令,查看生成的文件。

  • root用戶的ID為0,新建普通用戶的UID是從500開始的(通過cat /etc/password可以查看用戶的UID),如果你不想記錄root用戶的操作,你把if里面的值改成500:? if [ $UID - ge 500 ];


2.3 創建目錄、賦予權限

????你是不是以為寫了這條if語句在/etc/profile文件中就完事了,目錄都沒創建呢:

1 2 3 4 [root@localhost?~]#?mkdir?/var/log/script #最好給個777的權限,我用744的權限反正也生效 [root@localhost?~]#?chmod?777?/var/log/script/


2.4 使環境生效

1 [root@localhost?~]#?source??/etc/profile


3、驗證

????好了,你可以退出linux終端,在重新登錄一下,然后隨便敲幾個命令來看看。

1 2 3 4 5 6 7 [root@localhost?~]#?cd?/var/log/script/ [root@localhost?script]#?ll total?16 -rw-r--r--?1?root?root???68?Dec?22?15:46?root-0-201712221545.date -rw-r--r--?1?root?root??111?Dec?22?15:46?root-0-201712221545.log -rw-r--r--?1?root?root????0?Dec?22?15:46?root-0-201712221546.date -rw-r--r--?1?root?root?5693?Dec?22?15:46?root-0-201712221546.log

從上圖可以看到,在/var/log/script目錄中,已經產生了log和data為后綴的文件,并且還看到了root用戶和UID號0。

????.log:記錄了操作

????.data:可以回放操作


我們用scriptreplay來回放一下操作,看下效果如何:

1 [root@localhost?script]#?scriptreplay?root-0-201712221545.date?root-0-201712221545.log

注意:先指定“時間文件 .data”,然后是“命令文件 .log”,不要顛倒了

以上就完也了記錄用戶的所有操作,并且還可以隨時查看,相當于有回放功能,像錄像一樣,以后定位是誰的問題就好找原因了。



本文轉自甘兵 51CTO博客,原文鏈接:http://blog.51cto.com/ganbing/2053636,如需轉載請自行聯系原作者

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的linux系统监控:记录用户操作轨迹,谁动过服务器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。