基于Linux--Shell服务监控

 服务监测

#!/bin/bash
if [ -z $1 ];then
    echo "错误:未输入服务名称."
    echo "用法:脚本名 服务器名称."
    exit
fi
if systemctl is-active $1 &>/dev/null ;then
    echo "$1已经启动..."
else
    echo "$1未启动..."
fi
if systemctl is-enabled $1 &>/dev/null ;then
    echo "$1是开机自启动项."
else
    echo "$1不是开机自启动项."
fi

运行结果

 

发送邮件

 

HTTP服务监测

#!/bin/bash
#功能描述(Description):使用curl访问具体的HTTP页面,检测HTTP状态码

#curl命令选项说明: 
#-m设置超时时间
#-s设置静默连接
#-o下载数据另存为
#-w返回附加信息,HTTP状态码

url=http://192.168.4.5/index.html
date=$(date +"%Y-%m-%d %H:%M:%S") 
status_code=$(curl -m 3 -s -o /dev/null -w %{http_code} $url)
mail_to="root@localhost"
mail_subject="http_warning"

#使用<<-重定向可以忽略tab键缩进的内容,代码可读性更好.
if [ $status_code -ne 200 ];then
    mail -s $mail_subject $mail_to <<- EOF
	检测时间为:$date
	$url页面异常,服务器返回状态码:${status_code}.
	请尽快排查异常.
	EOF
else
    cat >> /var/log/http_check.log <<- EOF
	$date "$url 页面访问正常."
	EOF
fi

发送邮件

根据Hash值监测网站

#!/bin/bash
#功能描述(Description):根据数据的HASH值监控网站数据是否被篡改.

url="http://192.168.4.5/index.html"
date=$(date +"%Y-%m-%d %H:%M:%S")

#定义变量并赋值为源数据的HASH值.
source_hash="e3eb0a1df437f3f97a64aca5952c8ea0"
#实时检测网页数据的HASH值
url_hash=$(curl -s $url |md5sum | cut -d ' ' -f1)

if [ "$url_hash" != "$source_hash" ];then
     mail -s http_Warning root@localhost <<- EOF
	检测时间为:$date
	数据完整性校验失败,$url,页面数据被篡改.
	请尽快排查异常.
	EOF
else
    cat >> /var/log/http_check.log <<- EOF
	$date "$url,数据完整性校验正常."
	EOF
fi

发送邮件

使用nmap监控HTTP

#!/bin/bash
#功能描述(Description):使用nmap的端口扫描功能监控HTTP端口
ip=192.168.4.254
mail_to=root@localhost

nmap -n -sS -p80 192.168.4.254 | grep -q "^80/tcp open"
if [ $? -eq 0 ];then
    echo "http service is running on $ip" | mail -s http_status_OK $mail_to
else
    echo "http service is stoped on $ip" | mail -s http_status_error $mail_to
fi

安装环境

 发送邮件

 

网络连接监测

#!/bin/bash

if [ -z "$1" ];then
    echo -n "用法: 脚本 "
    echo -e "\033[32m域名或IP\033[0m"
    exit
fi

#-c(设置ping的次数),-i(设置ping的间隔描述),-W(设置超时时间)
ping -c2 -i0.1 -W1 "$1" &>/dev/null
if [ $? -eq 0 ];then
    echo "$1 is up"
else
    echo "$1 is down"
fi

运行结果

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值