linux centos7 增加操作日志記錄


2021-08-24

1. 需求產生原因

linux 系統中的日志存放在目錄 /var/log/ 下,今天想看看我之前的操作記錄,發現系統中的日志並不包括各個用戶操作文件的記錄,所以打算自己建一個。

 

2. 創建日志存放目錄

# 創建日志存放目錄
mkdir -p userlogin/records

# 給目錄添加最高權限 777
# 表示 records 在該用戶,該用戶同組用戶以及其他用戶都有讀寫執行的權限
chmod 777 userlogin/records/

# 使用戶對 records 具有寫權限但是不能刪除該文件
chmod +t userlogin/records/

 

3. 配置環境變量

vi /etc/profile
# 用戶操作日志
# [ -d FILE ] 如果 FILE 存在且是一個目錄則為真
if [ ! -d /var/log/userlogin/records/${LOGNAME} ] then mkdir -p /var/log/userlogin/records/${LOGNAME} chmod 777 /var/log/userlogin/records/${LOGNAME} fi export HISTORY_FILE="/var/log/userlogin/records/${LOGNAME}/bash_history"
# 將時間、用戶、終端、ip以及執行的命令記錄下來 export PROMPT_COMMAND
='{ date "+%Y-%m-%d %T *** $(who am i |awk "{print \$1\" \"\$2\" \"\$5}") *** $(history 1 | { read x cmd; echo "$cmd"; })"; } >> $HISTORY_FILE'

 

 生效配置文件

source /etc/profile

 

4. 測試

# 查看 root 操作日志
cd /var/log/userlogin/records/root

# 進行一些簡單的操作后查看 bash_history 中是否生成記錄
cat bash_history 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM