SSH会话logging

我们有一个策略,logging所有SSH会话活动CYA的目的与我们的客户。 使用Windows下的PuTTY,这是微不足道的,因为我们可以使用PuTTY的内置日志工具将每个会话logging到文件中。 但是从Linux工作站开始工作时,并不那么简单。

请注意,服务器端日志虽然很重要,但并不是我们在这里所做的一部分。 这些会话logging仅供我们自己参考。

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

  • 使用在.bash_profile中触发的脚本logging所有terminal活动,或作为loginshell的包装器(非常理想)
  • 用一个包装来代替/ usr / bin / ssh,这个包装会启动每个会话的日志(更好,但可能有副作用)
  • 强制所有员工使用PuTTY for Linux而不是命令行中的ssh(也非常不理想)

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

有关:

  • BASH shell会话logging在远程主机上

如果您使用Linux或FreeBSD,请检查sudosh2 :

sudosh是一个审计shellfilter,可以用作loginshell。 Sudoshlogging所有击键和输出,并可以像录像机一样播放会话。 Sudosh2是sudosh发展的延续。

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

您不会说明您的工程师是否正在从中央服务器进行SSH连接,或者他们是否都从自己的工作站进行连接。 sudosh2是中央服务器的理想select,但在数十个工作站上实施可能更困难。

有些人使用过rootsh ,但是我对rootsh不熟悉。