SSH 会话日志记录

SSH 会话日志记录

我们有一项政策,即记录所有 SSH 会话活动,以便与客户一起实现 CYA。使用 Windows 下的 PuTTY,这很简单,因为我们可以使用 PuTTY 的内置功能将每个会话记录到文件中伐木设施。但在 Linux 工作站上工作时,事情就没那么简单了。

请注意,服务器端日志记录虽然因其他原因而很重要,但不是我们的工作内容。这些会话日志仅供我们自己参考。

到目前为止,我们已经研究了以下选项:

  • 使用以下方式记录所有终端活动脚本在 .bash_profile 中触发,或作为登录 shell 的包装器触发(远非理想)
  • 用启动每个会话日志的包装器替换 /usr/bin/ssh(更好,但可能有副作用)
  • 强制所有员工使用 PuTTY for Linux,而不是从命令行使用 ssh(也非常不太理想)

日志记录需要完全自动化,理想情况下,我们希望能够将不同的会话分离到单独的文件中。

有关的:

答案1

如果你使用的是 Linux 或 FreeBSD,请查看sudosh2

sudosh 是一个审计 shell 过滤器,可以用作登录 shell。Sudosh 记录所有击键和输出,并可以像 VCR 一样回放会话。Sudosh2 是 sudosh 开发的延续。

这将存储所有 TTY 输入和输出的日志(所有击键,包括退格键和其他控制字符)。输出可以存储在本地机器上,也可以使用 syslog 发送到另一台服务器。

您没有说明您的工程师是否从中央服务器进行 SSH 连接,或者他们是否都从自己的工作站进行连接。sudosh2 对于中央服务器来说是理想的,但在数十个工作站上实现可能更难。

其他一些人已经使用了根什,但我对 rootsh 不熟悉。

相关内容