我想知道在Linux环境下跟踪超级用户活动的最佳方法是什么。
具体来说,我正在寻找以下功能:
- A)将击键记录到安全的Syslog服务器
- B)能够重播shell会话(类似于scriptreplay)
- C)理想情况下,如果没有物理访问服务器,这应该是不可能(或相当困难)的事情。
在需要允许不同的系统管理员(甚至第三方)在服务器上执行特权操作的环境中,从安全/审核的角度考虑这一点。
每个管理员都将拥有自己的名义帐户,每个交互会话都应完整记录,并在必要时可以重播(例如,如果有人使用mc删除或更改关键文件,则仅此一个而已)知道那个人发出了mc命令;必须有一种方法可以确切地查看启动mc之后执行的操作。
附加说明:
- 正如womble所指出的那样,最好的选择也许不是让具有root特权的用户登录以在服务器上执行更改,而是通过配置管理系统执行此操作。因此,我们假设没有这样的系统,我们需要在同一服务器上向不同的人授予根级别的访问权限。
- 我对执行此操作完全不感兴趣:每个具有root特权登录到服务器的人都将完全意识到该会话将被记录(例如,呼叫中心操作员知道他们的对话在正在记录)
- 没有人会使用通用超级用户帐户(“根”)
- 我知道ttyrpld,它似乎可以满足我的要求。但是在采用这种方式之前,我想知道是否可以通过使用未修改的内核来解决。我想知道是否有针对Debian(特别是Linux)的工具,这些工具可以对超级用户帐户进行全面审核,而无需修补外壳或内核。