为了能快速了解并处理您的问题,请提供以下基础信息:试过创建一个脚本后定时检测后执行,但是故意将阈值调到2%测试 依然提示正常范围
#!/bin/bash
# 获取1分钟的平均负载
load=$(uptime | awk -F'load average: ' '{print $2}' | cut -d'.' -f1)
# 如果负载超过90(注意:这里90在实际环境中非常罕见,通常应该是1.0或类似的数字)
if [ "$load" -gt 90 ]; then
echo "系统负载过高,禁用80和443端口"
iptables -I INPUT -p tcp --dport 80 -j DROP
iptables -I INPUT -p tcp --dport 443 -j DROP
else
echo "系统负载正常,启用80和443端口"
# 假设之前没有其他规则阻止80和443端口,这里只是移除我们添加的DROP规则
iptables -D INPUT -p tcp --dport 80 -j DROP
iptables -D INPUT -p tcp --dport 443 -j DROP
fi
# 保存iptables规则(如果系统重启后需要保持这些规则)
service iptables save # 注意:命令可能因发行版而异,如systemctl reload firewalld
|
|