首页 > 其他分享 >zabbix监控域名到期时间

zabbix监控域名到期时间

时间:2024-06-04 15:48:01浏览次数:27  
标签:http name 域名 zabbix dict 监控 date end

# 获取证书过期时间脚本

cat /etc/zabbix/scripts/base/check-http-expire.sh

#!/bin/bash

host=$1

#end_date=`whois -H  $host|grep "Registry Expiry Date"|awk '{print $NF}'`

end_date=`whois -H  $host|egrep "Registry Expiry Date|Expiration Time"|awk '{print $3,$4}'|sed 's#Date: ##g'`

 

#echo "$end_date"

if [ -n "$end_date" ]

then

    end_date_seconds=`date '+%s' --date "$end_date"`

    now_seconds=`date '+%s'`

    echo "($end_date_seconds-$now_seconds)/24/3600" | bc

fi

[[email protected] base]# cat /etc/zabbix/scripts/base/check-http-expire.sh

#!/bin/bash

host=$1

#end_date=`whois -H  $host|grep "Registry Expiry Date"|awk '{print $NF}'`

end_date=`whois -H  $host|egrep "Registry Expiry Date|Expiration Time"|awk '{print $3,$4}'|sed 's#Date: ##g'`

 

#echo "$end_date"

if [ -n "$end_date" ]

then

    end_date_seconds=`date '+%s' --date "$end_date"`

    now_seconds=`date '+%s'`

    echo "($end_date_seconds-$now_seconds)/24/3600" | bc

fi

# 域名自动发现脚本:

cat /etc/zabbix/scripts/base/http_discovery.py

#!/usr/bin/env python

#coding:utf-8

 

import os

import sys

import json

 

#这个函数主要是构造出一个特定格式的字典,用于zabbix

def ssl_cert_discovery():

    web_list=[]

    web_dict={"data":None}

    with open("/etc/zabbix/scripts/base/http_list","r") as f:

        for sslcert in f:

            dict={}

            dict["{#DOMAINNAME}"]=sslcert.strip().split()[0]

            dict["{#PORT}"]=sslcert.strip().split()[1]

            dict["{#OLDNS}"]=sslcert.strip().split()[2]

            web_list.append(dict)

    web_dict["data"]=web_list

    jsonStr = json.dumps(web_dict,indent=4)

    return jsonStr

if __name__ == "__main__":

    print ssl_cert_discovery()

# 域名列表

cat /etc/zabbix/scripts/base/http_list

baidu.com 443 volunteer.dnspod.net.;jane.dnspod.net. 

jd.cn 443 jane.dnspod.net.;volunteer.dnspod.net.

# zabbix配置

cat /etc/zabbix/zabbix_agent2.d/userparameter_http.conf

UserParameter=http_discovery,/usr/bin/python  /etc/zabbix/scripts/base/http_discovery.py

UserParameter=http.info[*],/bin/bash /etc/zabbix/scripts/base/check-http-expire.sh $1

 

# zabbix添加监控模版

zabbix_export:
  version: '5.2'
  date: '2024-06-04T07:31:05Z'
  groups:
    -
      name: Templates
  templates:
    -
      template: 'Template http  expire date'
      name: 'Template http  expire date'
      groups:
        -
          name: Templates
      applications:
        -
          name: 域名过期剩余时间
      discovery_rules:
        -
          name: 域名到期_Discovery
          type: ZABBIX_ACTIVE
          key: http_discovery
          delay: 24h
          lifetime: '0'
          item_prototypes:
            -
              name: '[{#DOMAINNAME}]域名过期剩余时间:'
              type: ZABBIX_ACTIVE
              key: 'http.info[{#DOMAINNAME},{#PORT}]'
              delay: 3h
              history: 2d
              trends: 7d
              units: 天
              applications:
                -
                  name: 域名过期剩余时间
              preprocessing:
                -
                  type: MULTIPLIER
                  parameters:
                    - '1'
              trigger_prototypes:
                -
                  expression: '{last()}<33'
                  name: '[{#DOMAINNAME}] 域名过期剩余时间小于33天'
                  priority: HIGH
                  manual_close: 'YES'

 

 

 

 

 

调整触发器时长,验证配置是否正确。

# 出发告警

 

 

 # 告警恢复

 

标签:http,name,域名,zabbix,dict,监控,date,end
From: https://www.cnblogs.com/suyj/p/18230928

相关文章

  • Zabbix server 6: systemctl stop zabbix-server 卡住不动
    1、Zabbixserver6:systemctlstopzabbix-server卡住不动[root@CNT-ZBX6-PB01~]#systemctlrestartzabbix-server.service^C[root@CNT-ZBX6-PB01~]#killall-9zabbix_server[root@CNT-ZBX6-PB01~]#systemctlrestartzabbix-server.service———————————......
  • 域名
    顶级域名、二级域名与三级域名互联网名称与数字地址分配机构(ICANN)负责管理和协调国际互联网络域名系统。根据ICANN的定义,一个完整的域名至少有两个部分,各部分之间用“.”来分隔,最后一个“.”的右边部分称为顶级域名,也称为一级域名;最后一个“.”的左边部分称为二级域名;二级域名的......
  • 【Python】使用 Python 查询域名的 IP 地址
    我们都已经长大好多梦正在飞就像童年看到的红色的蜻蜓我们都已经长大好多梦还要飞就像现在心目中红色的蜻蜓                     ......
  • 通过GB/T28181国标协议实现视频监控平台间的级联对接
    随着近几年网络视频监控应用范围的扩大,越来越多的政府部门及跨区域行业单位对视频监控的需求已经不仅仅满足于本地的联网监控,更多正在探索在原有本地联网监控基础上,建设省级乃至全国范围内跨区域的监控联网,全面打造数据共享平台。Liveweb视频融合云平台具备视频监控直播、云端......
  • 测试管理-测试过程监控
    测试活动的监控,对于整体测试工程而言是非常重要的管理内容。测试工作本身是非常依赖项目其他环节的,测试活动的进行充满了变数。所以对测试的实行情况进行持续的监控和做出及时应对,是管好一个测试项目的必要工作。 测试的监控是一个贯穿于整个测试周期内的工作。在一些情况......
  • 集成多域名SEO百度自动推送,密码资料管理,流水账管理,网盘分享链接管理,备忘录管理,永久免
    站长好帮手V1.0,站长人手一份的好工具;集成多域名SEO百度自动推送,密码资料管理,流水账管理,网盘分享链接管理,备忘录管理,永久免费使用!!!多域名SEO自动推送:多个域名可同时自动向百度API接口提交网址,方便百度快速收录;密码资料管理:各种与帐号密码有关的数据存储与查询管理,方便管理,不易丢......
  • 什么是动态域名解析?域名怎么解析到内网IP
    首先说说什么是域名解析,域名解析就是把域名解析成一个ip地址,我们大多数人都喜欢记忆域名,但是机器只认识IP地址,把这个IP地址对应相关域名,这就叫域名解析。动态域名与动态域名解析是相互关联的关系,通过动态域名,解决动态IP问题的方式,就叫动态域名解析服务。要实现外网访问内网、......
  • python对接zabbix API
    frompyzabbix.apiimportZabbixAPIwithZabbixAPI(url='http://192.168.1.10:8080',user='admin',password='admin')aszapi:hosts=zapi.host.get(#获取所有字段output=["hostid","host"],......
  • PsSuspend工具的基本用法和功能,能够利用PsSuspend命令进行进程管理、监控、调试和优化
    PsSuspend初级应用的大纲:1.PsSuspend简介与基础知识PsSuspend概述:介绍PsSuspend工具的作用和功能。PsSuspend基础命令:学习PsSuspend的基本命令语法和参数选项。2.进程管理与控制进程暂停与恢复:使用PsSuspend命令暂停和恢复指定进程的执行。进程列表操作:通过PsSuspend命......
  • VMMap工具的基本功能和使用方法,包括如何分析内存分配情况、监控内存使用模式等;包括深
    VMMap初级应用的大纲:1.介绍VMMap简要介绍VMMap是什么,以及其在Windows系统中的作用和用途。解释VMMap能够提供的信息类型,如内存分配情况、内存使用模式等。2.VMMap的基本功能演示如何使用VMMap打开目标进程,并查看其内存映射和分配情况。介绍VMMap提供的基本过滤器和查看......