zabbix6 通过脚本监控SSL证书到期时间
前提:
zabbix6 +网上资料
写这编文件的目的是让更多的人在查询了网上资料,还会遇上无法正常读取SSL证书到期时间的问题。所以在观看本文时,你需要有搭建ZABBIX6的基础,及Cenos8系统操作基础。
- 检查你的系统是否支持openssl 检测
openssl s_client -connect www.baidu.com:443 2>/dev/null | openssl x509 -noout -dates
返回结果如下图,CTRL+C可结束退出来。
如果遇上无法使用openssl请自行查阅资料安装相关插件。
vi /usr/lib/zabbix/externalscripts/ssl_check_port.sh #这个文件我是创建到zabbix脚本目录/usr/lib/zabbix/externalscripts ,请也可cd到指定的目录后在创建。
#!/bin/bash #获取ssl证书的过期时间 #author:Allen #获取证书的有效时间 weburl=$1 sslprot=$2 ssltls=$3 #启用可引入1,1_1,1_2等协议版本,可解决低版服务器检测不到ssl证书时用 time=$(echo | openssl s_client -connect ${weburl}:${sslprot} -tls${ssltls} 2>/dev/null | openssl x509 -noout -dates |awk -F'=' 'NR==2{print $2}') #有效时间生成时间戳 time1=$(date +%s -d "$time") #当前时间生成时间戳 time2=$(date +%s) #当前时间减去有效时间,获得将要过期的天数 time3=$(((time1-time2)/(60*60*24))) echo $time3
代码上网上拷的,上网大概有三种版本。测试了下都可以用,特别是默认是检测443端口的。但我的情况比较特殊,所以我自己改了下这样可以自定义SSL端口
chmod +x ssl_check_port.sh 给文件加执行权限,否则zabbix监控项无法正常
vi /etc/zabbix/zabbix_agentd.d/userparameter_key.conf 添加以下脚本到最后一条。重启zabbix代理服务后,此部分内容会被agent.conf引入。也就是agent会知道这个key怎么操作,key后面是之前定义的shell+参数。
UserParameter=ssl_check[*],/usr/lib/zabbix/externalscripts/ssl_check_port.sh $1 $2 $3
本文中自定义的KEY是ssl_check[]
systemctl restart zabbix-agent
手动添加监控项
以上两个监控项,一条是默认检测443接口,用的TLS1.2;第二条是检测的8051端口的,用的是TLS1。
手动检测结果
读取到正常的数值就说明成功。
总结。
错误代码: unable to load certificate 139813418198848:error:0909006C:PEM routines:get_name:no start line:crypto/pem/pem_lib.c:745:Expecting: TRUSTED CERTIFICATE
当初使用网上的脚本,在一台windows 2008 IIS上面检查SSL证书。一直无法成功提示以上错误,经过多方面查找资料。发现是因为服务器SSL支持协议只能是TSL1,把通过修改脚本,以些来支持直接在zabbix监控项上面定义域名、端口号、协议版本信息,完美的解决了务类服务器检测证书时间到期问题。
zabbix6 通过脚本监控SSL证书到期时间相关推荐
- python证书过期_简单python脚本监控SSL证书到期提醒
随着https的普及,或者说被强制使用,需要维护的SSL证书越来越多,而且由于各种原因吧,需要在各种不同的平台申请维护证书,时间长了,总有证书忘记续签 有些使用了letsencrypt自动续签,但是某 ...
- 监控域名证书到期时间
1.需求 nginx服务器中的域名,在跑的业务域名比较多,需要监控各个域名的证书到期时间,提前做好准备更换证书. 网上有很多的平台监控,但很多都是需要付费的,本次是使用telegram配合做监控提示. ...
- ssl证书到期时间查询的三种方法
之前,有一个域名使用了网上免费的 ssl 证书,然后想在该证书过期后更换为 Let's encrypt 的免费证书,便想查询下该域名 ssl 证书还剩多少天过期. 查询证书到期时间的方法还是很简单的, ...
- php 通过网站域名获取SSL证书到期时间
记录:PHP 通过网站域名去获取SSL证书的到期时间 //查询入口public function testOp(){$domain = ''; //网站域名$cert_info = $this-> ...
- ssl证书到期时间查询方法
目录 1.在浏览器上直接查看 2.通过openssl查看 3.通过s_client 获取证书过期剩余天数 1.在浏览器上直接查看 2.通过openssl查看 由于我服务端是搭建在 Centos 上,所 ...
- prometheus监控域名证书到期时间
参考:https://mp.weixin.qq.com/s/gXffcNzixAiTKSBZcf2sBA 最终效果图: 下面全部使用docker部署: 一.部署prometheus 这是一个默认的pr ...
- Prometheus 监控之 Blackbox_exporter黑盒监测 [icmp、tcp、http(get\post)、dns、ssl证书过期时间]
Blackbox_exporter 主动监测主机与服务状态 Prometheus 官方提供的 exporter 之一,可以提供 http.dns.tcp.icmp 的监控数据采集 官方github: ...
- 阿里云免费的ssl证书到期怎么续费
有很多小伙伴用的阿里云的服务器并且使用了阿里云免费的SSL证书,今天Q302博客导航收到短信和邮件提示SSL证书即将过期了,吓得我登录阿里云查看SSL证书,原来还有一个月的时间,咨询了客服之后原来 ...
- 阿里云SSL证书到期怎么办
阿里云提示内容如下: [阿里云]尊敬的:您域名com使用的SSL证书cert-还有1天过期,过期时间2021-04-21.为防止业务受影响,请提前5个工作日续费并更新证书.请尽快登陆控制台处. 这是阿 ...
最新文章
- JConsole的使用
- hive 语法检查_升级Hive3处理语义和语法变更
- leetcode 542. 01 Matrix | 542. 01 矩阵(图解,广度优先搜索)
- python项目开发案例集锦_在线分享 | 在 VS Code 中一站式完成 Python 项目开发
- 十二、sed 命令与正则表达式
- [轉]9个优秀的基于 JavaScript 与 CSS 的 Web 图表框架
- 如何简单解释 MapReduce算法
- 达内python第二阶段月考_Python编程练习题二
- 计算机服务里打印功能停止,win7系统电脑打印机print spooler服务总是自动停止的解决方法...
- Android和iPhone浏览器大战,第1部分,WebKit抢救
- linux没有网卡配置文件,linux找不到网卡配置文件解决办法
- html的size属性,HTML size属性用法及代码示例
- layui数据表格合并列
- 数据产品经理该懂的python技术
- 音视频技术开发周刊 | 248
- ultraedit25版本设置文本自动换行方法
- 想要改变世界的 Rust 语言
- 电脑黑屏只有鼠标箭头,任务管理器打不开,F8什么的都不管用
- android+定位跟踪,android实现远程定位追踪(UC+XSS)
- 《你有多自律,就有多自由》经典总结
热门文章
- 中国音视频编解码标准(AVS+) 认证体系研究
- 华为蓝牙耳机AM60连接win7的系统
- PYTHON重要信息通知(短信通知+语音播报)解决方案
- Mac常用软件安装与配置
- 【C++】将罗马数字转换成阿拉伯数字
- .net core 获取程序中文件路径
- 分布式系统关注点(19)——深入浅出「异步」
- 2018-2019-2 网络对抗技术 20165318 Exp7 网络欺诈防范
- 中文汉字html(立→超文本)用汉字写网页代码
- mac java打包文件_关于macos:使用JarBundler将Java转换为MacOSX的.app文件