Linux系统下查看操作记录的实用指南
linux 如何查看操作记录

首页 2024-12-07 20:30:38



Linux如何查看操作记录:掌握系统监控与审计的艺术 在Linux系统中,了解并查看操作记录是确保系统安全、排查问题和进行合规性审计的关键步骤

    无论是系统管理员、安全专家还是开发人员,掌握这一技能都能极大地提升工作效率和系统的可靠性

    本文将深入探讨Linux系统中查看操作记录的多种方法,从基本命令到高级审计工具,带你一步步掌握系统监控与审计的艺术

     一、基础命令:轻松掌握日常操作记录 1.查看当前登录用户 要查看当前登录到系统的用户,可以使用`who`和`w`命令

     bash who 该命令会列出当前登录的所有用户及其相关信息,如登录终端、登录时间等

     bash w `w`命令除了显示登录用户外,还会显示用户的活动状态、CPU和内存使用情况等详细信息

     2.查看系统启动时间、运行时间和当前登录用户 `uptime`命令能够显示系统的启动时间、系统运行的总时间、当前时间以及系统的平均负载

     bash uptime 3.查看用户登录历史 `last`命令用于显示用户登录系统的历史记录,包括登录时间、登录来源(如远程IP地址)和注销时间

     bash last 如果你只对某个特定用户的登录历史感兴趣,可以在`last`命令后加上用户名

     bash last username 4.查看系统日志 Linux系统通过日志文件记录了大量系统运行和用户操作的详细信息

    常见的日志文件包括`/var/log/syslog`(在Debian/Ubuntu系统中)、`/var/log/messages`(在Red Hat/CentOS系统中)以及`/var/log/auth.log`(记录认证信息)

     使用`cat`、`tail`或`less`命令可以查看这些日志文件

     bash cat /var/log/syslog tail -n 100 /var/log/auth.log 查看最后100行认证日志 less /var/log/messages `less`命令特别适合查看大型日志文件,因为它允许你方便地滚动浏览和搜索内容

     二、高级命令与工具:深入审计与监控 1.history命令 `history`命令显示当前用户在当前shell会话中执行过的命令历史

    这个命令对于个人用户调试和回顾操作非常有用

     bash history 你还可以使用`HISTTIMEFORMAT`环境变量来显示命令执行的时间戳

     bash export HISTTIMEFORMAT=%F %T history 2.auditd:强大的审计工具 `auditd`(Audit Daemon)是Linux中用于收集、过滤和报告系统事件的强大工具

    它支持对文件访问、进程执行、系统调用等多种事件进行监控

     -安装`auditd`: ```bash sudo apt-get install auditd 在Debian/Ubuntu上 sudo yum install audit 在Red Hat/CentOS上 ``` - 启动并启用`auditd`服务: ```bash sudo systemctl start auditd sudo systemctl enable auditd ``` - 添加审计规则: 例如,监控对某个文件的读写操作: ```bash sudo auditctl -w /etc/passwd -p wa -k passwd_changes ``` 这里`-w`指定要监控的文件,`-p`指定要监控的权限(`w`写,`a`属性更改),`-k`指定一个键(keyword),用于在审计日志中标识这条规则

     - 查看审计日志: ```bash sudo ausearch -k passwd_changes ``` 3.strace:跟踪系统调用 `strace`命令用于诊断、调试和跟踪Linux用户空间进程所调用的系统调用和信号

    它对于理解进程行为、排查性能问题和安全漏洞非常有帮助

     bash strace -o output.txtsome_command 这将跟踪`some_command`的所有系统调用,并将输出保存到`output.txt`文件中

     4.lsof:列出打开的文件 `lsof`(List Open Files)命令用于显示系统中已打开的文件

    在Linux中,几乎所有东西都被视为文件,包括普通文件、目录、套接字和网络连接

     bash lsof -i :80 列出监听TCP端口80的所有进程 lsof /var/log 列出打开/var/log目录下文件的所有进程 三、实时监控与报警 1.top与htop `top`命令是Linux系统自带的实时监控工具,可以显示系统的CPU、内存使用情况以及当前运行的进程列表

     bash top `htop`是`top`的增强版,提供了更友好的界面和更多的功能,如进程排序、过滤和终止

     bash sudo apt-get install htop 在Debian/Ubuntu上 sudo yum install htop# 在