如何在 Linux 中记录命令/登录?

如何在 Linux 中记录命令/登录?

我感觉有些人正在使用 root,我如何记录所有命令和连接时间,包括所有用户到服务器(ssh)的 ips?

历史命令不够用

答案1

Root 就是 root。您为跟踪 root 使用情况所做的任何尝试都可能被具有 root 权限的人破坏或规避;例如,即使您让 bash 将所有历史文件条目传送到安全的远程服务器上的 syslog,您的系统也只能在行为不当的用户弄清楚您做了什么并禁用或绕过它之前是安全的。

这是一个社会问题,而不是技术问题。您需要实施一项政策,阻止人们使用 root 权限,并在受监控和记录的环境中实施系统检查,以确保只授予可接受的访问权限。

  1. 重新配置 sshd 为拒绝 root SSH 登录
  2. 更改 root 密码。
  3. 配置 sudo/sudoers仅允许每个用户获得其所需的特权访问权限。

希望这有帮助,祝你好运。

答案2

那么你可以给自己发一封电子邮件,说“猫王”进入了大楼

在 .bashrc 中输入

echo 'ALERT - Root Shell Access (YOURSERVERNAME) on:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d"(" -f2 | cut -d")" -f1`" YOUREMAIL

因此每次用户 root 登录时你都会收到通知

答案3

答案4

只要不被破坏,流程会计就可以提供有用的信息。

禁用 root 密码将阻止使用su成为 root。

ps对进程的定期扫描su应该可以显示何时使用 su。

检查auth.log或其等效项可能对检测谁成为 root 有用。

相关内容