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
    

  • 相关阅读:
    linux学习资料收藏
    java 自动补全
    iframe
    XSLT 创建CDATA节点
    java 线程
    SQL(ORACLE)
    ubuntu下php无法载入mysql扩展
    Laravel 5.2 新特性系列 —— 多用户认证功能实现详解
    Windows环境下的NodeJS+NPM+Bower安装配置步骤
    关于Laravel 5 中 Html,Form 安装以及修改使用标签
  • 原文地址:https://www.cnblogs.com/keithtt/p/9011910.html
Copyright © 2011-2022 走看看