Skip to content

리눅스서버 사용자 입력 명령어 로그 남기기

5gyungjae edited this page Aug 2, 2018 · 1 revision

/etc/bashrc 수정

/etc/bashrc에 아래 항목 추가

# echo "export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local6.debug "$(whoami) [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'"  >> /etc/bashrc
# source /etc/profile
* logger를 이용해 syslog형식으로 입력한 명령어를 전달  
* severity: debug
* facility: local6
* 로그아웃 후 다시 로그인 할 경우 마지막에 입력했던 명령어가 한번 더 출력 됨  

rsyslog 설정

입력되는 명령어를 별도의 로그파일로 남기려면 아래와 같이 rsyslog.conf 파일 수정

local6.debug      /var/log/commands 로컬에 저장
local6.debug      @<host or ip> 원격지 전송
Clone this wiki locally