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

在现代的企业网络中,网站安全和可靠性是至关重要的。一个不注意的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版本和隔离虚拟环境

bash 复制代码
$ python3 --version
Python 3.7.0

创建名为 venv 的虚拟环境

bash 复制代码
$ python3 -m venv venv

激活虚拟环境

bash 复制代码
$ source venv/bin/activate

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

bash 复制代码
$ pip install gunicorn domain-admin
$ gunicorn --bind '127.0.0.1:8000' 'domain_admin.main:app'

安装 domain-admin【windows 安装】

bash 复制代码
$ pip install waitress domain-admin
$ waitress-serve --listen=127.0.0.1:8000 'domain_admin.main:app'

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

升级到最新版本

bash 复制代码
$ pip3 install -U domain-admin -i https://pypi.org/simple

方式二:docker启动

bash 复制代码
$ 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

bash 复制代码
wget https://github.com/mouday/domain-admin/releases/download/v1.5.8/domain-admin-1.5.8.tar.gz
cd domain-admin

安装依赖

bash 复制代码
pip install -r requirements.txt

启动运行

bash 复制代码
$ gunicorn --bind '127.0.0.1:8000' 'domain_admin.main:app'
相关推荐
江梦寻几秒前
思科模拟器路由器配置实验
开发语言·网络·网络协议·学习·计算机网络
前端李易安42 分钟前
什么是HTTP,什么是HTTPS?HTTP和HTTPS都有哪些区别?
网络协议·http·https
IT小辉同学43 分钟前
一键生成本地SSL证书:打造HTTPS安全环境
安全·https·ssl
胎粉仔43 分钟前
网络初阶——应用层:HTTPS 协议
网络协议·http·https
KuaFuAI43 分钟前
微软推出的AI无代码编程微应用平台GitHub Spark和国产AI原生无代码工具CodeFlying比到底咋样?
人工智能·github·aigc·ai编程·codeflying·github spark·自然语言开发软件
hgdlip2 小时前
本机ip地址和网络ip地址一样吗
网络·网络协议·tcp/ip·网络ip地址·本机ip地址
Mr_Xuhhh3 小时前
递归搜索与回溯算法
c语言·开发语言·c++·算法·github
hzyyyyyyyu9 小时前
隧道技术-tcp封装icmp出网
网络·网络协议·tcp/ip
运维佬10 小时前
在 MySQL 8.0 中,SSL 解密失败,在使用 SSL 加密连接时出现了问题
mysql·adb·ssl
用户31574760813511 小时前
成为程序员的必经之路” Git “,你学会了吗?
面试·github·全栈