zoukankan      html  css  js  c++  java
  • 使用nagios监控ssl证书过期时间

    1、编写监控脚本。

    # vim check_ssl_expiry.sh
    
    #!/bin/bash
    STATE_OK=0
    STATE_WARNING=1
    STATE_CRITICAL=2
    
    Host=$1
    
    end_date=$(echo | openssl s_client -connect $Host:443 2>/dev/null -servername $Host | openssl x509 -noout -dates | sed -n 's/notAfter=//p' | sed -n 's/ GMT//p')
    
    if [ -n "$end_date" ];then
        end_date_seconds=$(date +%s -d "$end_date")
        now_seconds=$(date +%s)
        valid_days=$[($end_date_seconds-$now_seconds)/24/3600]
    fi
    
    if [ $valid_days -lt 60 ];then
        echo "WARNING: SSL cert of $Host will be expired after $valid_days days."
        exit $STATE_WARNING
    elif [ $valid_days -lt 30 ];then
        echo "CRITICAL: SSL cert of $Host will be expired after $valid_days days."
        exit $STATE_CRITICAL
    else
        echo "OK: SSL cert of $Host will be expired after $valid_days days."
        exit $STATE_OK
    fi
    

    2、添加command配置。

    # vim command.cfg
    #check_ssl_expiry command definition
    define command {
        command_name check_ssl_expiry
        command_line /usr/lib/nagios/plugins/check_ssl_expiry $ARG1$
    }
    

    3、定义监控项service。

    # vim ssl.cfg
    define service{
        use                             oupeng-svc
        contact_groups                  group-sa
        service_description             check_ssl_www.opgirl.cn
        check_command                   check_ssl_expiry!www.opgirl.cn
    }
    

    4、重载配置。

    # /etc/init.d/nagios reload
    

  • 相关阅读:
    【数组】Unique Paths II
    【数组】Unique Paths
    【数组】word search
    购物网站布局实战
    Javascript显示和隐式类型转换
    JS检测数据类型
    从setTimeout谈js运行机制
    0.1 + 0.2 = 0.30000000000000004怎样理解
    (译)详解javascript立即执行函数表达式(IIFE)
    Redis
  • 原文地址:https://www.cnblogs.com/keithtt/p/9011910.html
Copyright © 2011-2022 走看看