监控域名到期发送钉钉消息通知

news2024/11/16 19:34:31

目的

想象一下,域名到期都不知道,忘了续费,就像忘了交房租,房东(互联网)会毫不留情地把你扫地出门!所以,及时续费,让顾客轻松找到你,生意红红火火!

准备条件

系统:debian,ubuntu,安装了python

检测是否安装了python:

python3 --version

检测是否安装了requests

python3 -c "import requests; print(requests.__version__)"

如果没安装

pip install requests

下载脚本

新建通知文本:

mkdir -p /home/domain
touch /home/domain/warnfile

安装依赖:

sudo apt-get update
sudo apt-get install whois bc

下载脚本:

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

赋予权限:

chmod +x domain_expiry_reminder.sh
chmod +x warnsrc.py

获取钉钉Webhook 地址

使用 Webhook 地址,创建好自定义机器人

查看文档 https://open.dingtalk.com/document/robots/custom-robot-access

IP地址(段)填写服务器IP (要填上)

在这里插入图片描述

修改脚本:

修改:domain_expiry_reminder.sh

  • for line in 123.com 234.com 567.org 改成你的域名(第25行),多个使用空格分开
  • 每次查询间隔5秒
  • 域名离到期日30天内就发告警
https://pastebin.com/vUq8Jjkb

修改:warnsrc.py

把前面获取到的钉钉Webhook地址填上:url = 'Webhook地址' (第16行)

https://pastebin.com/5cP6UYPs

测试

为了测试,修改到期天数(例如200天内),修改domain_expiry_reminder.sh(第72行)

   # 测试时间为200天内过期就发告警
    if [ $expiry_date -lt 200 ]; ## 例如200天内,你的域名离到期日必须小于200日

运行测试

cd /home/domain
./domain_expiry_reminder.sh

成功后,记得改回来,默认30天内发消息提醒
在这里插入图片描述

添加定时任务

每隔3天检测一次(域名到期前30天内)

(crontab -l ; echo "30 2 */3 * * cd /home/domain && ./domain_expiry_reminder.sh >/dev/null 2>&1") | crontab -

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2090685.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

掌握测试的艺术:深入探索Python的pytest库

文章目录 **掌握测试的艺术:深入探索Python的pytest库**背景:为什么选择pytest?pytest是什么?如何安装pytest?5个简单的库函数使用方法1. pytest.main()2. pytest.skip()3. pytest.mark.parametrize()4. pytest.raises…

从跟跑到领跑:AIGC时代国产游戏的崛起与展望

文章目录 一、技术深度挖掘1.图形渲染与视觉盛宴2.物理引擎的精细化与真实性3.AI技术的深度融入与创新 二、行业影响深度剖析1.产业链的全面升级2.IT人才需求的多元化与高端化3.文化输出与国际影响力的增强 三、未来趋势与跨界合作1.技术创新引领未来2.跨界合作拓展市场 四、代…

VLM(视觉语言模型)综述

概述 大型语言模型的出现标志着人工智能领域转型的开始,它们在文本信息处理上的能力极大地推动了这一进程。尽管LLMs在文本处理上表现出色,但它们主要限于处理单一模态的数据,即文本。这限制了它们在理解和生成涉及图像和视频等多模态数据方…

最新华为OD机试-E卷-流浪地球(100分)-五语言题解(Python/C/JavaScript/Java/Cpp)

🍭 大家好这里是春秋招笔试突围 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-E/D卷的三语言AC题解 💻 ACM金牌🏅️团队| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 🍿 最新华为OD机试D卷目录,全、新、准,题目覆盖率达 95% 以上,…

XSS LABS - Level 20 过关思路

关注这个靶场的其他相关笔记:XSS - LABS —— 靶场笔记合集-CSDN博客 0x01:环境配置 提示:Flash 逆向工具 JPEXS 配置请看 Level 19 的过关流程,这里就不重新教怎么安装配置了。 要想完成本关,需要下载 Flash,不然就会出现下面的情况: 我个人建议,是直接下载一个 Flash…

HUD杂散光环境模拟测试设备

概述 HUD(Head-Up Display)杂散光环境模拟测试设备是用于模拟飞行器在实际运行过程中可能遇到的多种光照环境的系统。它主要用于测试和验证HUD显示系统的性能,确保其能在各种光线条件下清晰、准确地显示信息,从而保障飞行员在复杂…

学习C语言(19)

整理今天的学习内容 1.memmove使用和模拟实现 void* memmove (void* destination,const void* source,size_t num); 和momcpy的差别是memmove函数处理的源内存块和目标内存块是可以重叠的 memmove的模拟实现: 2.mem…

程序批量卸载工具 | BCUninstaller v5.8.1 绿色版

大家好,今天电脑天空给大家推荐一款强大的Windows软件卸载工具——Bulk Crap Uninstaller(BCUninstaller)。如果你经常需要安装和卸载软件,那么这款工具绝对值得你一试。以下是我在使用BCUninstaller的一些心得分享,希…

具备自动灵敏度校准、支持单键和多点触控的触摸芯片-GTX315L

电容式触摸芯片 - GTX315L是具有多通道触发传感器的15位触摸传感器系列,它是通过持续模式提供中断功能和唤醒功能,具备自动灵敏度校准、超强抗干扰能力,可抗特斯拉(小黑盒)线圈干扰,支持单键/多点触控&…

CN05.1,NDVI,CMIP6及TIFF图像数据处理方法合集

笔记链接: 数据处理数据集:https://www.wolai.com/aKjMiRrEk6C3WG4Yg8rYiz需要登录wolai才能查看,用于个人学习记录。

五,Spring Boot中的 Spring initializr 的使用

五,Spring Boot中的 Spring initializr 的使用 文章目录 五,Spring Boot中的 Spring initializr 的使用1. 方式1:IDEA创建2. 方式2:start.spring.io 创建3. 注意事项和细节4. 最后: 需要:使用 Spring initi…

我的私有云-IOT定位/追踪系统

目录 1. 说明 2 完成后的效果 2.1 实时定位 2.2 轨迹重现 2.3 设备美照 3. 项目设计 3.1 系统拓扑图​编辑 3.2 技术选型 3.3 消息订阅处理架构图 3.4 frp服务在线监控​编辑 4. 实施 4.1 数据模型 - DeviceLocation 4.2 数据报规格定义 订阅主题 数据报格式 …

ARM32开发——(二十三)存储器介绍

1. 存储器分类 存储器按其存储介质特性主要分为“易失性存储器”和“非易失性存储器”两大类。 “易失/非易失”是指存储器断电后, 它存储的数据内容是否会丢失的特性。 在计算机中易失性存储器最典型的代表是内存,非易失性存储器的代表则是硬盘。 2.…

互联网全景消息(2)之RabbitMq高阶使用

一、RabbitMQ消息可靠性保障 消息的可靠性投递是使用消息中间件不可避免的问题,不管是Kafka、rocketMQ或者是rabbitMQ,那么在RabbitMQ中如何保障消息的可靠性呢? 首先来看一下rabbitMQ的 架构图: 首先从图里我们可以看到&#xff…

python发现是anaconda的,而不是原来的编译环境

发现有三个python编译器。 可以检查一下环境变量,把原来的python编译器版本上移到anaconda的python编译器之前。这样每次在终端使用python命令就是原来的python编译器版本了

基于Docker搭建Graylog分布式日志采集系统

文章目录 一、简介二、Graylog1、主要特点2、组件3、工作流程介绍4、使用场景 三、Graylog 安装部署1、 安装 docker2、安装docker compose3、 安装graylog4、Graylog控制台 四、springboot集成Graylog 一、简介 Graylog是一个开源的日志管理工具,主要功能包括日志…

c++中的匿名对象及内存管理及模版初阶

c中的匿名对象 A a;//a的生命周期在整个main函数中 a.Sum(1); //匿名对象生命周期只有一行,只有这一行会创建对象,出了这一行就会调析构 A().Sum(1);//只有这一行需要这个对象,其他地方不需要。 return 0; 日期到天数的转换 计算日期到天数转换_牛客…

解读GaussianTalker:利用音频驱动的基于3D高斯点染技术的实时高保真讲话头像合成

单位:首尔大学 项目地址:https://ku-cvlab.github.io/GaussianTalker/ github:https://github.com/KU-CVLAB/gaussiantalker 本文是对GaussianTalker的解读,欢迎大家阅读指正! 目录 前言摘要一、背景介绍二 相关工作三…

拼多多Temu半托管和全托管对比

根据东吴证券报告显示,与全托管相比,半托管给予商家更灵活的物流选择,允许商家自行负责仓配物流;与传统3P模式相比,半托管仍保留平台核价、平台负责营销售后客服等特点。 Temu 最开始采用全托管模式,但随着…

【C++ Primer Plus习题】7.6

问题: 解答: #include <iostream> using namespace std;#define SIZE 20int Fill_array(double* arr, int len) {int i 0;for (i 0; i < len; i){cout << "请输入值:";cin >> arr[i];if (cin.fail()){cout << "输入非法数字,结束…