大家好,我是羊刀仙。
本次带来的是一个基于Python + Vue3.js 技术栈实现的域名和SSL证书监测平台项目:Domain Admin。用于解决,不同业务域名SSL证书,申请自不同的平台,到期后不能及时收到通知,导致线上访问异常(被老板责骂)的问题~
对于大部分个人用户来说,一般持有域名较少,依靠咱们之前介绍过的Lucky或是Nginx Proxy Manager都可以实现完全的自动化,品牌NAS提供的免费域名和证书基本也都支持自动监测和续签。
如果你手头有大批量域名(或是某些域名无法自动续期),正在寻找一个可靠、免费的域名管理解决方案,不妨试试 Domain Admin。
本文分为 项目介绍,部署流程,演示,通知配置 四个部分。
项目优势与描述
源自项目作者:
⭕️ 项目优势
集中管理: 提供一个统一的平台来管理多个域名,极大地提高了管理效率。
自动提醒: 支持域名到期提醒,帮助用户避免因域名过期导致的服务中断。
开源灵活: 作为开源项目,用户可以根据自身需求进行定制和扩展。
社区支持: 拥有活跃的社区,可以获得持续的更新和问题支持。
用户友好: 界面简洁直观,容易上手。
⭕️ 功能描述
核心功能:域名、SSL证书 和 托管证书文件 的过期监控,到期提醒
支持证书:单域名证书、多域名证书、泛域名(通配符)证书、IP证书、自签名证书
证书部署:单一主机部署、多主机部署、动态主机部署
通知渠道:支持邮件、Webhook、企业微信、钉钉、飞书等通知方式
支持平台:macOS、Linux、Windows
辅助功能:Let’s Encrypt SSL证书免费申请和SSL证书自动续期
多语言:支持中文、英文
部署流程
本文给出 Docker run 和 Docker Compose 两种部署方式。
⭕️ 准备文件目录
在常用的Docker目录下创建一个名为domain-admin
的文件夹,用于保存和持久化数据。
⭕️ Docker run部署
利用SSH工具连接至NAS命令控制台,将以下命令修改后直接粘贴运行即可完成部署。
docker run -d \
--name domain-admin \
-v /share/Container/domain-admin/database:/app/database \
-v /share/Container/domain-admin/logs:/app/logs \
-p 4096:8000 \
-e APP_MODE=production \
--restart unless-stopped \
mouday/domain-admin:latest
⭕️ Docker Compose部署(推荐)
打开Container Station,创建新的应用程序。将以下代码修改后粘贴进框内并点击创建。
version: '3.3' # 最新版可删除此行
services:
domain-admin:
container_name: domain-admin
image: mouday/domain-admin:latest
volumes:
- '/share/Container/domain-admin/database:/app/database'
- '/share/Container/domain-admin/logs:/app/logs'
ports:
- '4096:8000' # 冒号左侧端口可改,上面的文件映射同理
environment:
- APP_MODE=production # 应用程序模式为生产环境
restart: unless-stopped
部署完毕后,web界面输入NAS_IP:4096即可访问和使用。
使用一览
本节进行大概功能介绍,邮箱通知配置放在下一节。
登陆界面如下,初始的账户密码为admin/123456
。
登陆进来后,会提示先去更改管理员密码。
右上角可跳转使用文档,工具箱支持多个实用功能。
尝试添加已有的几个域名测试,可以顺便把子域证书勾选上。
可以看到域名的天数倒计时、证书数量以及到期时间。
在数据管理中可以看到具体的证书以及证书的剩余有效天数。
这里显示的我个人博客站证书到期时间,与网页这边完全一致。
此外还有证书申请功能,因为我这边域名都是配置好的,所以就不额外试验了。
通知配置
支持邮件、Webhook、企业微信、钉钉、飞书等通知方式,本节仅介绍邮箱配置,其他请见本节最后一张图。
主流的邮箱基本都支持,我这里选择的163邮箱演示。在系统管理中点击系统设置。在邮件设置中修改配置,发件人密码是SMTP的设备授权密码,而并非你的邮箱登录密码。
如果各位想用其他邮箱服务,可以自行搜索对应的SMTP配置方式;如果你是自建邮件服务器,对应的搭建平台应该也都会有相关介绍,请自行查阅。
点击测试,将邮箱修改为预备的收件人,发送测试。
可以看到,QQ邮箱成功接收。
测试成功后,左侧栏点击通知管理,添加通知,事件类型可选。按照下图格式添加邮箱即可,多邮箱的话一行一个。最后保存即可。
再次测试,成功收到域名证书到期通知。
鉴于ZDM现在比较严格,需要的朋友自取网址前往查看。
评论区