【Github】自动监测 SSL 证书过期的轻量级监控方案 - Domain Admin

news2024/9/24 15:26:39

在现代的企业网络中,网站安全和可靠性是至关重要的。一个不注意的SSL证书过期可能导致网站出现问题,给公司业务带来严重的影响。针对这个问题,手动检测每个域名和机器的证书状态需要花费大量的时间和精力。为了解决这个问题,我想向大家介绍一个自动监测SSL证书过期的轻量级监控方案 - Domain Admin。
Domain Admin是一个基于Python + Vue3.js技术栈实现的域名和SSL证书监测平台,它可以帮助我们自动检测多个业务域名的SSL证书是否过期。不同业务域名的证书可以从不同的平台申请,而Domain Admin可以无缝集成这些不同的平台,并在证书到期前提前通知我们。
通过使用Domain Admin,我们可以保证网站的安全性和可靠性,避免因为证书过期而导致的线上访问异常,从而避免被老板责骂的尴尬场景。
在这里插入图片描述

功能描述

  • 核心功能:域名 和SSL证书 的过期监控,到期提醒
  • 支持证书:单域名证书、多域名证书、通配符证书、IP证书、自签名证书
  • 证书部署: 单一主机部署、多主机部署、动态主机部署
  • 通知渠道:支持邮件、Webhook、企业微信、钉钉、飞书等通知方式
  • 支持平台:macOS、Linux、Windows
  • 辅助功能:Let’s Encrypt SSL证书申请

安装

管理员默认的账号和密码

账号:admin
密码:123456
强烈建议:登录系统后修改默认密码

方式一:pip安装

运行环境:

Python >= 2.7 或者 Python >= 3.4

可以使用 pyenv + venv 管理多个Python版本和隔离虚拟环境

$ python3 --version
Python 3.7.0

创建名为 venv 的虚拟环境

$ python3 -m venv venv

激活虚拟环境

$ source venv/bin/activate

安装启动 domain-admin 【linux / macos 安装】

$ pip install gunicorn domain-admin
$ gunicorn --bind '127.0.0.1:8000' 'domain_admin.main:app'

安装 domain-admin【windows 安装】

$ pip install waitress domain-admin
$ waitress-serve --listen=127.0.0.1:8000 'domain_admin.main:app'

访问地址:http://127.0.0.1:8000

升级到最新版本

$ pip3 install -U domain-admin -i https://pypi.org/simple

方式二:docker启动

$ docker run -p 8000:8000 mouday/domain-admin
#后台运行
$ docker run -d -p 8000:8000 mouday/domain-admin
#本地文件夹和容器文件夹映射
$ docker run \
-v $(pwd)/database:/app/database \
-v $(pwd)/logs:/app/logs \
-p 8000:8000 \
--name domain-admin \
mouday/domain-admin:latest

方式三:下载源码安装

下载地址:https://github.com/mouday/domain-admin/releases

本方式仅适用于二次开发,推荐采用 pip安装 或者 docker启动 的方式体验

例如:以v1.5.8为例

每次发布都会包含以下代码包

domain-admin-1.5.8.tar.gz # 完整源码包,包含打包后的H5端、web端代码
domain_admin-1.5.8-py2.py3-none-any.whl # pip包,可直接安装
domain-admin-mini-v1.5.8.tar.gz # H5端源码
domain-admin-web-v1.5.8.tar.gz # web端源码
Source code(zip) # Python源码 windows适用
Source code(tar.gz) # Python源码 linux/mac适用

下载 domain-admin-1.5.8.tar.gz

wget https://github.com/mouday/domain-admin/releases/download/v1.5.8/domain-admin-1.5.8.tar.gz
cd domain-admin

安装依赖

pip install -r requirements.txt

启动运行

$ gunicorn --bind '127.0.0.1:8000' 'domain_admin.main:app'
  • 项目地址:
    Github: https://github.com/mouday/domain-admin
    国内镜像:https://gitee.com/mouday/domain-admin

  • 发布渠道:
    pypi:https://pypi.org/project/domain-admin
    docker:https://hub.docker.com/r/mouday/domain-admin
    releases:https://github.com/mouday/domain-admin/releases

  • 使用文档:
    github: https://mouday.github.io/domain-admin/
    gitee: https://mouday.gitee.io/domain-admin/
    readthedocs: https://domain-admin.readthedocs.io

在这里插入图片描述

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

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

相关文章

NAT详解(网络地址转换)

一句话说清楚它是干什么的: 网络地址转换:是指通过专用网络地址转换为公用地址,从而对外隐藏内部管理的IP地址,它使得整个专用网只需要一个全球IP就可以访问互联网,由于专用网IP地址是可以重用的,所以NAT大…

基于机器学习的供水管网水力模型

大数据、人工智能、物联网等前沿技术正推动人类社会发展发生深刻变革。2021年12月12日,国务院印发了《“十四五”数字经济发展规划》,进一步指明了各行业数字化转型发展的方向。作为传统的民生保障行业,供水行业也面临着向数字化智慧化转型的…

2023年的前端开发还好找工作么

首先可以明确写在前面的是,前端的确是不像之前一样,只会简单的基础就能轻轻松松的找到工作的,随着学习的人不断增多,市场自然会逐步提高对就业人员的要求,那么再以之前的要求来看待前端的话的确是不可取的 互联网在&a…

机器学习深度学习——多层感知机的从零开始实现

👨‍🎓作者简介:一位即将上大四,正专攻机器学习的保研er 🌌上期文章:机器学习&&深度学习——多层感知机 📚订阅专栏:机器学习&&深度学习 希望文章对你们有所帮助 为…

计算机二级Python基本操作题-序号41

1. 输入字符串s,按要求把s输出到屏幕,格式要求:宽度为30个字符,星号字符*填充,居中对齐。如果输入字符串超过30位,则全部输出。 例如:键盘输入字符串s为"Congratulations”,屏幕…

基于Kaggle训练集预测的多层人工神经网络的能源消耗的时间序列预测(Matlab代码实现)

目录 💥1 概述 📚2 运行结果 🌈3 Matlab代码实现 🎉4 参考文献 💥1 概述 本文为能源消耗的时间序列预测,在Matlab中实现。该预测采用多层人工神经网络,基于Kaggle训练集预测未来能源消耗。 &am…

自动化测试如何做?分层自动化测试如何实施?一篇概全...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 分层的自动化测试…

qt简易闹钟

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);ui->stopBtn->setDisabled(true);this->setFixedSize(this->size()); //设置固定大小this->s…

【Spring Cloud Alibaba】限流--Sentinel

文章目录 概述一、Sentinel 是啥?二、Sentinel 的生态环境三、Sentinel 核心概念3.1、资源3.2、规则 四、Sentinel 限流4.1、单机限流4.1.1、引入依赖4.1.2、定义限流规则4.1.3、定义限流资源4.1.4、运行结果 4.2、控制台限流4.2.1、客户端接入控制台4.2.2、引入依赖…

(双指针) 剑指 Offer 57. 和为s的两个数字 ——【Leetcode每日一题】

❓ 剑指 Offer 57. 和为s的两个数字 难度:简单 输入一个递增排序的数组和一个数字 s,在数组中查找两个数,使得它们的和正好是 s。如果有多对数字的和等于 s,则输出任意一对即可。 示例 1: 输入:nums [2…

1400*C. Strong Password

Example input 5 88005553535123456 2 50 56 123412341234 3 111 444 1234 4 4321 4321 459 2 49 59 00010 2 10 11output YES NO YES NO YES解析: 题目要求有一种密码不在数据库中即可,所以枚举每一位的所有可能的数字,记录这一位数字在数…

帆软 FineReport/FineBI channel反序列化漏洞分析

事件背景 热点漏洞 漏洞说明 1. 漏洞原理:FineReport/FineBI channel接口能接受序列化数据并对其进行反序列化。配合帆软内置CB链会导致任意代码执行。 2. 组件描述:FineReport是一款企业级报表设计和数据分析工具,它提供了丰富多样的组件…

教你轻松又简单的绘制地铁线路图

地铁是主要以地下运输为主的交通系统。其轨道通常在地下隧道内。其中:地铁线路中的M,L,S,R分别代表:MMetro地,LLight轻轨,SSuburb市郊铁路,Rrapid,快速铁路。地铁线路图则可以简单理解为地铁的运行路线轨道…

基于Java+SpringBoot+vue前后端分离足球青训俱乐部管理后台系统设计实现

博主介绍:✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专…

【自动话化运维】Ansible常见模块的运用

目录 一、Ansible简介二、Ansible安装部署2.1环境准备 三、ansible 命令行模块3.1.command 模块3.2.shell 模块3.3.cron 模块3.4.user 模块3.5.group 模块3.6.copy 模块3.7.file 模块8&#xff…

Java阶段五Day15

Java阶段五Day15 文章目录 Java阶段五Day15分层其他依赖dao-apidao-implinfrustructuredomainadaptermain 测试整合项目main前台师傅功能luban-front配置师傅相关表格ER图ER练习案例鲁班表格ER关系(非常重要) 前台师傅接口——师傅入驻adapterdomaininfr…

【C语言】指针进阶(二)

💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤 📃个人主页 :阿然成长日记 …

使用xtcp映射穿透指定服务

使用xtcp映射穿透指定服务 管理员Ubuntu配置公网服务端frps配置service自启(可选) 配置内网服务端frpc配置service自启(可选) 使用者配置service自启(可选) 通过frp实现内网client访问另外一个内网服务器 管理员 1)配置公网服务端frps2)配置内网服务端…

2023年 React 最佳学习路线

CSS CSS JavaScript JavaScript TypeScript 目前没有找到比其他文档好很多的文档地址 可以先看官网 React 新版 React 官方文档无敌 React React-router-dom V5 V6 Webpack webpack Antd antd

基于贴花的热力图呈现方法参考

首先是热力图信息类: using System; using UnityEngine;[Serializable] public class HeatMapInfo {public Rect rect Rect.zero;public float pixelDensity 1;public float valBase 0;public float valRange 1;public PercentColor[] ribbon;//色带public Col…