头图

大家好,我是 Java陈序员

在企业开发中,由于业务众多,涉及到很多业务域名证书,证书过期由于遗忘常常未能及时续期,导致线上访问异常,给企业带来损失!

今天,给大家介绍一个轻量级的域名和 SSL 证书监测平台,用来解决证书管理困难的问题!

关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。

项目介绍

Domain Admin —— 一个基于 Python + Vue3.js 技术栈实现的域名和 SSL 证书监测平台。用于解决,不同业务域名 SSL 证书,申请自不同的平台,到期后不能及时收到通知,导致线上访问异常,被老板责骂的问题。

此外,Domain Admin 还是一个轻量级监控方案,占用系统资源较少。同时也可以作为一个 Flask 和 Vue.js 前后端分离的项目模板。

功能特色

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

项目截图

证书监控

证书申请

域名监控

网站监控

分组管理

通知管理

系统设置

项目安装

源码安装

1、下载发布包

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

domain-admin-mini-v1.6.51.tar.gz          # H5 端源码
domain-admin-web-v1.6.51.tar.gz           # Web 端源码
domain_admin-1.6.51-py2.py3-none-any.whl  # Pip 包,可直接安装
domain-admin-1.6.51.tar.gz                # 完整源码包,包含打包后的 H5 端、Web 端代码
Source code(zip)                         # Python 源码 Windows 适用
Source code(tar.gz)                      # Python 源码 Linux/MacOS 适用

以 Linux/MacOS 为例,Windows 可直接在下载页面点击下载,自行使用解压软件解压。

# 下载 domain_admin-1.6.51.tar.gz
wget https://github.com/dromara/domain-admin/releases/download/v1.6.51/domain_admin-1.6.51.tar.gz

2、解压进入

tar -zxvf domain_admin-1.6.51.tar.gz

cd domain-admin-1.6.51

3、创建虚拟环境

# 创建名为 venv 的虚拟环境
python3 -m venv venv && source venv/bin/activate

# 安装依赖
pip3 install .

4、新建启动文件 app.py

from domain_admin.main import app

if __name__ == '__main__':
    app.run(port=8000)

此时的目录结构如下:

tree -L 1
.
├── LICENSE
├── MANIFEST.in
├── PKG-INFO
├── README.md
├── app.py                 # 新建的启动文件
├── build
├── database
├── domain_admin
├── domain_admin.egg-info
├── logs
├── requirements
├── setup.cfg
├── setup.py
├── temp
└── venv

5、启动运行

# 启动运行
python app.py

* Serving Flask app 'domain_admin.main'
* Debug mode: off
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
* Running on http://127.0.0.1:8000
Press CTRL+C to quit

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

Pip 安装

运行环境

  • Python >= 2.7 或者 Python >= 3.4
  • SQLite、OpenSSL

Linux/MacOS 安装

# 创建名为 venv 的虚拟环境并激活
$ python3 -m venv venv && source venv/bin/activate

# 安装 domain-admin
$ pip install gunicorn domain-admin

# 启动运行
$ gunicorn --bind '127.0.0.1:8000' 'domain_admin.main:app'

Windows 安装

# 创建名为 venv 的虚拟环境
> py -3 -m venv venv

# 激活虚拟环境
> venv\Scripts\activate

# 安装 domain-admin
> pip install waitress domain-admin

# 启动运行
> waitress-serve --listen=127.0.0.1:8000 domain_admin.main:app

Docker 安装

Docker 一键启动

docker run \
    -d \
    -v /data/software/domain/data:/app/database \
    -v /data/software/domain/logs:/app/logs \
    -p 8000:8000 \
    --name domain-admin \
    mouday/domain-admin:latest

参数说明:

  • database:sqlite 数据库和重要数据的目录
  • logs:日志目录,用于排查问题

Dokcer Compose 一键启动

1、创建 dokcer-compose.yaml 文件

version: '3.3'
services:
    domain-admin:
        volumes:
            - '/data/software/domain/data:/app/database'
            - '/data/software/domain/logs:/app/logs'
        ports:
            - '8000:8000'
        container_name: domain-admin
        image: mouday/domain-admin:latest

2、一键启动

docker-compose up -d

默认管理员账号密码

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

Domain Admin 可以说是一个十分好用的域名证书管理平台,很好地解决了不同业务域名证书过期导致线上访问异常的问题,大大减轻了工作量(挨骂)!

如果你受困于域名证书难以管理的问题,可以试试使用 Domain Admin ~

项目地址:https://github.com/dromara/domain-admin

最后

推荐的开源项目已经收录到 GitHub 项目,欢迎 Star

https://github.com/chenyl8848/great-open-source-project

或者访问网站,进行在线浏览:

https://chencoding.top:8090/#/

大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!


Java陈序员
61 声望8 粉丝