利用 PROMPT_COMMAND 實現命令審計功能:
記錄什么用戶,在什么時間,做了什么操作,然后將查到的信息記錄到一個文件里。
具體操作:
將以下內容追加到/etc/profile:
#############日志審計
chmod +s /usr/bin/chmod &> /dev/null #讓普通用戶能建立目錄及文件
chmod +s /usr/bin/chown &> /dev/null #讓普通用戶能建立目錄及文件
mkdir -p /var/log/history/${LOGNAME} #建立以用戶名稱命名的目錄
chmod 777 /var/log/history &> /dev/null
chown -R ${LOGNAME}. /var/log/history/${LOGNAME} &> /dev/null
chmod 700 /var/log/history/${LOGNAME} &> /dev/null
export HISTORY_FILE=/var/log/history/${LOGNAME}/`date '+%Y-%m-%d_%T'`.log &> /dev/null #自定義日志文件路徑及名稱
export PROMPT_COMMAND='{ date +" $(who am i |awk "{print \$1\" \"\$2\" \"\$5}") $(history 1 | { read x cmd; echo "$cmd"; })"; } >> $HISTORY_FILE' &> /dev/null #將命令追加到日志文件
chmod 600 /var/log/history/${LOGNAME}/* 2> /dev/null
chmod -s /usr/bin/chmod &> /dev/null #取消普通用戶授權
chmod -s /usr/bin/chown &> /dev/null #取消普通用戶授權
保存退出
source /etc/profile
如果沒有報錯說明成功了。
