Linuxで実行したコマンドをログに記録してサーバに送信する方法
仕事の中で、ユーザーが実行したすべてのコマンドを記録し、ログサーバに送信する必要があるため、簡単な解決策を作りました。このシナリオでは、各ユーザーがログインを終了すると、ユーザーが実行する各コマンドをログ・デーモンrsyslogdに送信します。「/etc/rsyslog.conf」を構成することで、ログ・サーバにログを送信することもできます。
第一の方法 コードのコピー# vi /etc/profile
#history形式の設定
export HISTTIMEFORMAT="[%Y-%m-%d %H:%M:%S] [`who am i 2>/dev/null| \
awk '{print $NF}'|sed -e 's/[()]//g'`] "
#shellが実行する各コマンドを記録する
export PROMPT_COMMAND='\
if [ -z "$OLD_PWD" ];then
export OLD_PWD=$PWD;