CentOS 7的Web服务器巡检脚本

#!/bin/bash

# 定义颜色
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[0;33m'
NC='\033[0m' # No Color

# 1. 系统基本信息
echo -e "${GREEN}=== 系统基本信息 ===${NC}"
echo "主机名: $(hostname)"
echo "操作系统: $(cat /etc/redhat-release)"
echo "内核版本: $(uname -r)"
echo "启动时间: $(uptime -s)"
echo "运行时间: $(uptime -p)"

# 2. CPU和内存使用情况
echo -e "\n${GREEN}=== CPU和内存使用情况 ===${NC}"
echo "CPU使用率: $(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1"%"}')"
echo "内存使用: $(free -m | awk 'NR==2{printf "%.2f%%", $3*100/$2 }')"
echo "Swap使用: $(free -m | awk 'NR==3{printf "%.2f%%", $3*100/$2 }')"

# 3. 磁盘使用情况
echo -e "\n${GREEN}=== 磁盘使用情况 ===${NC}"
df -h | grep -vE '^Filesystem|tmpfs|cdrom' | awk '{print $1 " " $5}'

# 4. Web服务状态
echo -e "\n${GREEN}=== Web服务状态 ===${NC}"
if systemctl is-active httpd &> /dev/null; then
    echo -e "Apache状态: ${GREEN}运行中${NC}"
    echo "Apache版本: $(httpd -v | grep 'Server version')"
else
    echo -e "Apache状态: ${RED}未运行${NC}"
fi

if systemctl is-active nginx &> /dev/null; then
    echo -e "Nginx状态: ${GREEN}运行中${NC}"
    echo "Nginx版本: $(nginx -v 2>&1)"
else
    echo -e "Nginx状态: ${RED}未运行${NC}"
fi

# 5. 网络连接
echo -e "\n${GREEN}=== 网络连接 ===${NC}"
echo "TCP连接数: $(netstat -ant | wc -l)"
echo "ESTABLISHED连接数: $(netstat -ant | grep ESTABLISHED | wc -l)"

# 6. 安全更新
echo -e "\n${GREEN}=== 安全更新 ===${NC}"
yum check-update --security | grep -v "^$"

# 7. 日志检查
echo -e "\n${GREEN}=== 日志检查 ===${NC}"
echo "最近错误日志:"
tail -n 5 /var/log/httpd/error_log 2>/dev/null || echo "没有找到Apache错误日志"
tail -n 5 /var/log/nginx/error.log 2>/dev/null || echo "没有找到Nginx错误日志"

# 8. 防火墙状态
echo -e "\n${GREEN}=== 防火墙状态 ===${NC}"
firewall-cmd --state
echo "开放端口:"
firewall-cmd --list-ports

# 9. 最后检查时间
echo -e "\n${GREEN}=== 检查完成 ===${NC}"
echo "检查时间: $(date)"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值