如何通过 ip 记录 SSH 会话中运行的所有命令(dash)

如何通过 ip 记录 SSH 会话中运行的所有命令(dash)

你好,我可以使用 /etc/profile 中的这些行记录用户在我的 ssh 服务器上运行的所有命令。

whoami="$(whoami)@$(echo $SSH_CONNECTION | awk '{print $1}')"                                                                                                  
export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local3.debug "$whoami [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'

现在我的问题是,当我 ssh 进入服务器然后输入 sh/dash 时,会打开一个新 shell,之后不会记录任何内容,它只会记录 sh shell 之外的所有内容。

我尝试将上述代码放入 $HOME/.profile 和其他文件(如 .bash_profile .bashrc),但没有成功。

PS:rbash shell 也记录命令,但是 sh 和 dash 不会。

相关内容