如何使 logkeys 通过 SSH 工作?

如何使 logkeys 通过 SSH 工作?

我想使用 logkeys 来记录支持 SSH 的 Linux 机器上的按键。Logkeys 会拦截设备,这可以用于 SSH 访问吗?SSH 会话是否使用设备?或者 SSH 是否绕过此级别的输入?

答案1

logkeyslogkeys将仅记录连接到正在运行的机器的键盘(USB 或串行)的击键。

SSH 守护进程通过 TCP 连接接收输入,而不是从类似键盘的设备接收输入。设备sshd使用伪终端。它们的工作级别与键盘设备不同,并且它们位于sshd和正在运行的程序之间(而不是sshd和用户之间)。

logkeys无法与终端配合使用,因此您必须使用其他解决方案。它更像是一个“会话记录器/记录器”,因为它不直接从键盘记录击键。

运行包装器authorized_keys

您可以运行会话记录包装器,而不是直接运行 shell 或命令。可以~/.ssh/authorized_keys使用commnad指令在文件中指定它。用户必须使用密钥认证才能正常工作。它不适用于密码验证。例如,这里有一个准备好的脚本:记录 SSH 会话

运行包装器而不是用户的 shell

除了用户 shell 之外,您还可以运行会话记录包装器。这里有一个:根什(基本功能与上面的包装器类似)。例如,您可以替换用户的登录 shell。

相关内容