最简单监控方案:域名、证书 SSL、服务器全搞定!发送钉钉告警消息

本文主要是介绍最简单监控方案:域名、证书 SSL、服务器全搞定!发送钉钉告警消息,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

需求

  • 有时候域名太多,时间一长,你会不记得快要续期了
  • 服务器太多,需要监控,这应该是刚需
  • 证书申请来申请去,自动续签鬼知道会不会出问题

痛点

监控还要安装各种东西,会出岔子,折腾够呛,难免费时费力,所以,我的方案就是使用脚本,快速高效。脚本公开透明,放心食用~

创建钉钉报警机器人

文档:https://open.dingtalk.com/document/orgapp/custom-robot-access

记得在安全设置那里写上服务器IP地址,也就是你放脚本的服务器IP地址

最后复制webhook地址

创建必要文件

mkdir -p /home/domain
touch /home/domain/warnfile
touch /home/domain/logssl
touch /home/domain/serverlog
touch /home/domain/check_ssl.txt

下载关键脚本

cd /home/domain
wget https://raw.githubusercontent.com/woniu336/open_shell/main/domain_expiry_reminder.sh
wget https://raw.githubusercontent.com/woniu336/open_shell/main/warnsrc.py
wget https://raw.githubusercontent.com/woniu336/open_shell/main/daily_report.sh
wget https://raw.githubusercontent.com/woniu336/open_shell/main/check_ssl.sh
wget https://raw.githubusercontent.com/woniu336/open_shell/main/monitor_server.sh

设置权限:

chmod -R 755 /home/domain

修改脚本

  • check_ssl.txt 添加需要检测证书的域名
  • check_ssl.sh 证书检测脚本
  • monitor_server.sh 服务器健康检测脚本
  • domain_expiry_reminder.sh和warnsrc.py 域名到期检测脚本
  • daily_report.sh 每日生成检测报告的脚本
文件名需要修改的内容
check_ssl.txt添加域名证书到期检测文件,每行一个域名
check_ssl.shTOKEN=“Webhook地址”
monitor_server.shDINGTALK_WEBHOOK=“Webhook地址”
domain_expiry_reminder.shfor line in aaa.com bbb.com 多个域名空格隔开
warnsrc.pyurl = ‘Webhook地址’
daily_report.shDINGTALK_WEBHOOK=“Webhook地址”

提醒:

for line in aaa.com bbb.com 把aaa.com bbb.com移除,改成你的域名

此外monitor_server.sh还需要修改一个地方:

需要监控的服务器IP、端口、标签

declare -A TARGET_SERVERS=(#["8.8.8.8"]="端口|标签"["192.168.1.8"]="3000|腾讯云HK"
)

测试说明

不把数值改大一点,是没有通知的,因为默认数值比较小,不然啥事没有就天天通知,岂不是烦人~

check_ssl.sh:if [ $days -lt 60 ]; #改成60天或者更大,方便测试

monitor_server.sh: [“192.168.1.8”]=“3000|腾讯云HK” 改成没有放行的端口

domain_expiry_reminder.sh: if [ $expiry_date -lt 200 ]; 改成200天

daily_report.sh: 手动运行测试,cd /home/domain && ./daily_report.sh

定时任务

  • daily_report.sh脚本很推荐,
  • 因为会养成你每天下午2点就收到钉钉通知报告的习惯。时间一长,你会记得去看~
(crontab -l ; echo "30 2 */3 * * cd /home/domain && ./domain_expiry_reminder.sh >/dev/null 2>&1") | crontab -
(crontab -l ; echo "0 14 * * * cd /home/domain && ./daily_report.sh >/dev/null 2>&1") | crontab -
(crontab -l ; echo "10 3 * * * cd /home/domain && ./check_ssl.sh >/dev/null 2>&1") | crontab -
(crontab -l ; echo "*/2 * * * * cd /home/domain && ./monitor_server.sh >/dev/null 2>&1") | crontab -

这四个命令都是用于向 crontab 添加定时任务的命令,具体解读如下:

  1. 域名到期提醒任务

    (crontab -l ; echo "30 2 */3 * * cd /home/domain && ./domain_expiry_reminder.sh >/dev/null 2>&1") | crontab -
    
    • 时间:每3天的凌晨2:30执行。
    • 命令:进入 /home/domain 目录并执行 domain_expiry_reminder.sh 脚本,将标准输出和错误输出重定向到 /dev/null
  2. 每日报告任务

    (crontab -l ; echo "0 14 * * * cd /home/domain && ./daily_report.sh >/dev/null 2>&1") | crontab -
    
    • 时间:每天下午2点执行。
    • 命令:进入 /home/domain 目录并执行 daily_report.sh 脚本,将标准输出和错误输出重定向到 /dev/null
  3. SSL证书检查任务

    (crontab -l ; echo "10 3 * * * cd /home/domain && ./check_ssl.sh >/dev/null 2>&1") | crontab -
    
    • 时间:每天凌晨3:10执行。
    • 命令:进入 /home/domain 目录并执行 check_ssl.sh 脚本,将标准输出和错误输出重定向到 /dev/null
  4. 服务器监控任务

    (crontab -l ; echo "*/2 * * * * cd /home/domain && ./monitor_server.sh >/dev/null 2>&1") | crontab -
    
    • 时间:每2分钟执行一次。
    • 命令:进入 /home/domain 目录并执行 monitor_server.sh 脚本,将标准输出和错误输出重定向到 /dev/null

这些命令通过将当前的 crontab 内容与新的任务行合并,然后将结果重新写入 crontab,从而实现向 crontab 添加新的定时任务。

这篇关于最简单监控方案:域名、证书 SSL、服务器全搞定!发送钉钉告警消息的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1125331

相关文章

流媒体平台/视频监控/安防视频汇聚EasyCVR播放暂停后视频画面黑屏是什么原因?

视频智能分析/视频监控/安防监控综合管理系统EasyCVR视频汇聚融合平台,是TSINGSEE青犀视频垂直深耕音视频流媒体技术、AI智能技术领域的杰出成果。该平台以其强大的视频处理、汇聚与融合能力,在构建全栈视频监控系统中展现出了独特的优势。视频监控管理系统EasyCVR平台内置了强大的视频解码、转码、压缩等技术,能够处理多种视频流格式,并以多种格式(RTMP、RTSP、HTTP-FLV、WebS

服务器集群同步时间手记

1.时间服务器配置(必须root用户) (1)检查ntp是否安装 [root@node1 桌面]# rpm -qa|grep ntpntp-4.2.6p5-10.el6.centos.x86_64fontpackages-filesystem-1.41-1.1.el6.noarchntpdate-4.2.6p5-10.el6.centos.x86_64 (2)修改ntp配置文件 [r

无人叉车3d激光slam多房间建图定位异常处理方案-墙体画线地图切分方案

墙体画线地图切分方案 针对问题:墙体两侧特征混淆误匹配,导致建图和定位偏差,表现为过门跳变、外月台走歪等 ·解决思路:预期的根治方案IGICP需要较长时间完成上线,先使用切分地图的工程化方案,即墙体两侧切分为不同地图,在某一侧只使用该侧地图进行定位 方案思路 切分原理:切分地图基于关键帧位置,而非点云。 理论基础:光照是直线的,一帧点云必定只能照射到墙的一侧,无法同时照到两侧实践考虑:关

MySQL数据库宕机,启动不起来,教你一招搞定!

作者介绍:老苏,10余年DBA工作运维经验,擅长Oracle、MySQL、PG、Mongodb数据库运维(如安装迁移,性能优化、故障应急处理等)公众号:老苏畅谈运维欢迎关注本人公众号,更多精彩与您分享。 MySQL数据库宕机,数据页损坏问题,启动不起来,该如何排查和解决,本文将为你说明具体的排查过程。 查看MySQL error日志 查看 MySQL error日志,排查哪个表(表空间

高效+灵活,万博智云全球发布AWS无代理跨云容灾方案!

摘要 近日,万博智云推出了基于AWS的无代理跨云容灾解决方案,并与拉丁美洲,中东,亚洲的合作伙伴面向全球开展了联合发布。这一方案以AWS应用环境为基础,将HyperBDR平台的高效、灵活和成本效益优势与无代理功能相结合,为全球企业带来实现了更便捷、经济的数据保护。 一、全球联合发布 9月2日,万博智云CEO Michael Wong在线上平台发布AWS无代理跨云容灾解决方案的阐述视频,介绍了

csu 1446 Problem J Modified LCS (扩展欧几里得算法的简单应用)

这是一道扩展欧几里得算法的简单应用题,这题是在湖南多校训练赛中队友ac的一道题,在比赛之后请教了队友,然后自己把它a掉 这也是自己独自做扩展欧几里得算法的题目 题意:把题意转变下就变成了:求d1*x - d2*y = f2 - f1的解,很明显用exgcd来解 下面介绍一下exgcd的一些知识点:求ax + by = c的解 一、首先求ax + by = gcd(a,b)的解 这个

hdu2289(简单二分)

虽说是简单二分,但是我还是wa死了  题意:已知圆台的体积,求高度 首先要知道圆台体积怎么求:设上下底的半径分别为r1,r2,高为h,V = PI*(r1*r1+r1*r2+r2*r2)*h/3 然后以h进行二分 代码如下: #include<iostream>#include<algorithm>#include<cstring>#include<stack>#includ

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

usaco 1.3 Prime Cryptarithm(简单哈希表暴搜剪枝)

思路: 1. 用一个 hash[ ] 数组存放输入的数字,令 hash[ tmp ]=1 。 2. 一个自定义函数 check( ) ,检查各位是否为输入的数字。 3. 暴搜。第一行数从 100到999,第二行数从 10到99。 4. 剪枝。 代码: /*ID: who jayLANG: C++TASK: crypt1*/#include<stdio.h>bool h

Android平台播放RTSP流的几种方案探究(VLC VS ExoPlayer VS SmartPlayer)

技术背景 好多开发者需要遴选Android平台RTSP直播播放器的时候,不知道如何选的好,本文针对常用的方案,做个大概的说明: 1. 使用VLC for Android VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影