如何实时监控系统用户执行的Linux命令
您是 Linux 系统管理员,想要实时监控所有系统用户的交互活动(他们执行的 Linux 命令)。在本简短的 Linux 系统安全指南中,我们将解释如何实时查看系统用户执行的所有 Linux shell 命令。
另请参阅:如何使用 psacct 或 acct 工具监视用户活动
如果您的系统有bash(最常用的 shell),那么普通系统用户执行的所有命令都将存储在每个用户主目录中的隐藏文件中。用户可以使用history 命令.bash_history
查看此文件的内容。
要查看用户aaronkilik 的 .bash_history
文件,请输入:
# cat /home/aaronkilik/.bash_history
从上面的屏幕截图中可以看出,命令执行的日期和时间并未显示。这是大多数(如果不是全部)Linux 发行版的默认设置。
您可以按照本指南在 bash_history 文件中设置每个命令的日期和时间。
在 Linux 中使用 Sysdig 实时监控用户活动
要了解用户在系统上做什么,可以使用w
以下命令。
# w
但是要实时查看通过终端或 SSH 登录的另一个用户正在运行的 shell 命令,您可以使用Linux 中的 Sysdig 工具。
Sydig是一款开源、跨平台、功能强大且灵活的 Linux 系统监控、分析和故障排除工具。它可用于系统探索和调试。
安装sysdig后,spy_users
通过运行以下命令使用凿子来监视用户。
# sysdig -c spy_users
上述命令显示用户交互启动的每个命令以及用户访问的每个目录。
就这样吧,您还可以查看以下相关文章:
- 25 条强化 Linux 服务器安全性的技巧
- Lynis - Linux 系统的安全审计和扫描工具
- 适用于 Linux 系统的 10 个有用的开源安全防火墙
- Linux 中 Nmap(网络安全扫描器)实用指南
在本系统安全指南中,我们描述了如何查看用户 bash 历史文件、显示登录用户及其正在执行的操作,还解释了如何实时查看或监控系统用户执行的所有命令。
如果您想分享任何其他方法或提出问题,请通过下面的评论部分进行分享。