如何在 ssh 会话中记录命令?

How to log command in ssh sessions?

我有一个 debian 服务器,用户 ssh 对其进行 telnet 会话。 我的要求是 log 所有用户命令执行以及 telnet 会话中的命令 运行。

我在为此寻找解决方案时找到 script 软件,它可以满足我的要求。

我尝试通过向 /home/username/.profile 添加以下行来测试它,但它 运行s 2 script 进程并且需要 运行 exit 两次才能退出来自 ssh 会话。

Log commands in each session
if [[ -n $SSH_CONNECTION ]] ; then
    script test.txt
fi

有谁知道为什么会发生这种情况或如何解决它,或者更好的解决方案?

谢谢!

使用执行:

exec script test.txt