1. user command history 로깅 설정
각 계정의 사용자가 어떤 명령어를 실행했는지 이력을 남기는 방법입니다. 아래와 같이 userhistory.sh 를 생성합니다.
vi /etc/profile.d/userhistory.sh
function history_to_ceelog {
declare command
remoteadd="`who am i`"
command=$(fc -ln -0)
if [ "$command" != "$old_command" ]; then
logger -p local0.notice -t bash[$$] "remoteip=$remoteadd" : "user=$USER" : "uid=$UID" : "pid=$$" : "pwd=$PWD" : "cmd=$command"
fi
old_command=$command
}
trap history_to_ceelog DEBUG
2. rsyslog.conf 수정
vi /etc/rsyslog.conf
local0.notice /var/log/userhistory.log
3. rsyslog 재시작 및 로그 확인.
리눅스의 config를 수정 후 재기동하는걸 잊지마세요.
ssytemctl restart rsyslog