linux应急响应检查脚本

简介: 通过这个脚本,可以快速收集系统的关键信息,有助于在发生问题时进行及时的应急响应和分析。

为了在Linux系统中执行应急响应检查,可以编写一个脚本来收集系统的关键信息。以下是一个示例脚本,该脚本将检查系统日志、当前正在运行的进程、网络连接等,以便快速了解系统的当前状态和潜在的问题。

Linux应急响应检查脚本

以下脚本旨在收集系统信息,以便在出现问题时进行快速响应和分析。

#!/bin/bash

# 创建结果目录
RESULT_DIR="/var/log/emergency_response"
mkdir -p $RESULT_DIR

# 收集系统基本信息
echo "收集系统基本信息..."
uname -a > $RESULT_DIR/uname.txt
df -h > $RESULT_DIR/df.txt
free -m > $RESULT_DIR/meminfo.txt

# 收集进程信息
echo "收集进程信息..."
ps aux > $RESULT_DIR/ps_aux.txt
top -b -n 1 > $RESULT_DIR/top.txt

# 收集登录记录
echo "收集登录记录..."
last > $RESULT_DIR/lastlog.txt
who > $RESULT_DIR/who.txt

# 收集网络连接信息
echo "收集网络连接信息..."
netstat -tulnp > $RESULT_DIR/netstat.txt
ss -tuln > $RESULT_DIR/ss.txt
iptables -L > $RESULT_DIR/iptables.txt

# 收集运行中的服务
echo "收集运行中的服务..."
systemctl list-units --type=service > $RESULT_DIR/services.txt

# 收集计划任务
echo "收集计划任务..."
crontab -l > $RESULT_DIR/crontab.txt
ls -al /etc/cron* > $RESULT_DIR/cron_files.txt

# 收集关键配置文件
echo "收集关键配置文件..."
cp /etc/passwd $RESULT_DIR/passwd.txt
cp /etc/shadow $RESULT_DIR/shadow.txt
cp /etc/group $RESULT_DIR/group.txt
cp /etc/hosts $RESULT_DIR/hosts.txt

# 收集系统日志
echo "收集系统日志..."
cp /var/log/syslog $RESULT_DIR/syslog.txt 2>/dev/null
cp /var/log/messages $RESULT_DIR/messages.txt 2>/dev/null
cp /var/log/auth.log $RESULT_DIR/auth.log 2>/dev/null
cp /var/log/secure $RESULT_DIR/secure.txt 2>/dev/null

# 汇总信息
echo "应急响应检查完成,结果保存在 $RESULT_DIR"

# 显示结果目录内容
ls -al $RESULT_DIR
​

脚本解释

  1. 创建结果目录

    RESULT_DIR="/var/log/emergency_response"
    mkdir -p $RESULT_DIR
    ​
    

    这段代码用于创建存储检查结果的目录。

  2. 收集系统基本信息

    uname -a > $RESULT_DIR/uname.txt
    df -h > $RESULT_DIR/df.txt
    free -m > $RESULT_DIR/meminfo.txt
    ​
    

    这些命令分别收集系统信息、磁盘使用情况和内存使用情况。

  3. 收集进程信息

    ps aux > $RESULT_DIR/ps_aux.txt
    top -b -n 1 > $RESULT_DIR/top.txt
    ​
    

    收集当前运行的所有进程信息和系统资源使用情况。

  4. 收集登录记录

    last > $RESULT_DIR/lastlog.txt
    who > $RESULT_DIR/who.txt
    ​
    

    收集最近登录的用户信息和当前登录的用户信息。

  5. 收集网络连接信息

    netstat -tulnp > $RESULT_DIR/netstat.txt
    ss -tuln > $RESULT_DIR/ss.txt
    iptables -L > $RESULT_DIR/iptables.txt
    ​
    

    获取当前的网络连接信息和防火墙规则。

  6. 收集运行中的服务

    systemctl list-units --type=service > $RESULT_DIR/services.txt
    ​
    

    获取当前运行的服务列表。

  7. 收集计划任务

    crontab -l > $RESULT_DIR/crontab.txt
    ls -al /etc/cron* > $RESULT_DIR/cron_files.txt
    ​
    

    获取用户的计划任务和系统的计划任务文件。

  8. 收集关键配置文件

    cp /etc/passwd $RESULT_DIR/passwd.txt
    cp /etc/shadow $RESULT_DIR/shadow.txt
    cp /etc/group $RESULT_DIR/group.txt
    cp /etc/hosts $RESULT_DIR/hosts.txt
    ​
    

    复制系统的关键配置文件,以便检查和备份。

  9. 收集系统日志

    cp /var/log/syslog $RESULT_DIR/syslog.txt 2>/dev/null
    cp /var/log/messages $RESULT_DIR/messages.txt 2>/dev/null
    cp /var/log/auth.log $RESULT_DIR/auth.log 2>/dev/null
    cp /var/log/secure $RESULT_DIR/secure.txt 2>/dev/null
    ​
    

    复制系统日志文件,以便进一步分析。

  10. 汇总信息

    echo "应急响应检查完成,结果保存在 $RESULT_DIR"
    ls -al $RESULT_DIR
    ​
    

    通知检查完成并显示结果目录的内容。

思维导图

- Linux应急响应检查脚本
  - 创建结果目录
  - 收集系统基本信息
    - uname
    - df
    - free
  - 收集进程信息
    - ps
    - top
  - 收集登录记录
    - last
    - who
  - 收集网络连接信息
    - netstat
    - ss
    - iptables
  - 收集运行中的服务
    - systemctl
  - 收集计划任务
    - crontab
    - ls
  - 收集关键配置文件
    - cp
  - 收集系统日志
    - cp
  - 汇总信息
​

通过这个脚本,可以快速收集系统的关键信息,有助于在发生问题时进行及时的应急响应和分析。

目录
相关文章
|
3月前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
1099 6
|
4月前
|
监控 数据可视化 Ubuntu
|
2月前
|
消息中间件 Java Kafka
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
本文介绍了Kafka集群的搭建过程,涵盖从虚拟机安装到集群测试的详细步骤。首先规划了集群架构,包括三台Kafka Broker节点,并说明了分布式环境下的服务进程配置。接着,通过VMware导入模板机并克隆出三台虚拟机(kafka-broker1、kafka-broker2、kafka-broker3),分别设置IP地址和主机名。随后,依次安装JDK、ZooKeeper和Kafka,并配置相应的环境变量与启动脚本,确保各组件能正常运行。最后,通过编写启停脚本简化集群的操作流程,并对集群进行测试,验证其功能完整性。整个过程强调了自动化脚本的应用,提高了部署效率。
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
|
3月前
|
缓存 Linux
如何检查 Linux 内存使用量是否耗尽?
何检查 Linux 内存使用量是否耗尽?
|
3月前
|
安全 算法 Linux
Linux 服务器还有漏洞?建议使用 OpenVAS 日常检查!
在数字化时代,Linux 服务器的安全至关重要。OpenVAS 是一款优秀的开源漏洞扫描工具,可以帮助及时发现并修复服务器中的安全隐患。本文将介绍 OpenVAS 的主要功能、使用方法及应对漏洞的措施,帮助用户加强服务器安全管理,确保企业数字化安全。
109 7
|
4月前
|
存储 监控 固态存储
如何在 Linux 上检查 SSD/HDD 健康状况?
【10月更文挑战第14天】
336 1
如何在 Linux 上检查 SSD/HDD 健康状况?
|
3月前
|
Ubuntu Linux Shell
Linux 系统中的代码类型或脚本类型内容
在 Linux 系统中,代码类型多样,包括 Shell 脚本、配置文件、网络配置、命令行工具和 Cron 定时任务。这些代码类型广泛应用于系统管理、自动化操作、网络配置和定期任务,掌握它们能显著提高系统管理和开发的效率。
|
3月前
|
运维 监控 Shell
深入理解Linux系统下的Shell脚本编程
【10月更文挑战第24天】本文将深入浅出地介绍Linux系统中Shell脚本的基础知识和实用技巧,帮助读者从零开始学习编写Shell脚本。通过本文的学习,你将能够掌握Shell脚本的基本语法、变量使用、流程控制以及函数定义等核心概念,并学会如何将这些知识应用于实际问题解决中。文章还将展示几个实用的Shell脚本例子,以加深对知识点的理解和应用。无论你是运维人员还是软件开发者,这篇文章都将为你提供强大的Linux自动化工具。
|
4月前
|
运维 Java Linux
【运维基础知识】Linux服务器下手写启停Java程序脚本start.sh stop.sh及详细说明
### 启动Java程序脚本 `start.sh` 此脚本用于启动一个Java程序,设置JVM字符集为GBK,最大堆内存为3000M,并将程序的日志输出到`output.log`文件中,同时在后台运行。 ### 停止Java程序脚本 `stop.sh` 此脚本用于停止指定名称的服务(如`QuoteServer`),通过查找并终止该服务的Java进程,输出操作结果以确认是否成功。
134 1
|
4月前
|
网络协议 安全 Linux
阿里云国际上如何检查 Linux 上正在使用哪些端口
阿里云国际上如何检查 Linux 上正在使用哪些端口