tyzoid/ssl-dashboard

一个简单的 SSL 监控仪表盘

安装: 6

依赖项: 0

建议者: 0

安全性: 0

星星: 0

关注者: 2

分支: 0

公开问题: 0

语言:JavaScript

类型:项目

dev-master 2018-04-21 22:42 UTC

This package is not auto-updated.

Last update: 2024-09-21 14:49:11 UTC


README

一个用于跟踪各种服务 SSL/TLS 证书的免费仪表盘

目录

  1. 目录
  2. 为什么选择它?
  3. 配置
  4. API
  5. 计划变更

为什么

这个项目的想法源于我的 IRC 反向代理的证书过期。我确保在我的反向代理中保持证书更新,但由于证书的配置方式,自动化并不容易。此外,尽管 letsencrypt 会给你发送提醒邮件,certbot 可以自动创建和续订你的证书,但它有一些限制

  1. 它只适用于 Letsencrypt
  2. 对于非 http 服务,自动续订并不容易

配置

开始使用 SSL 仪表盘很简单。

  1. 克隆此存储库
  2. 将你想要跟踪的服务添加到 /controllers/SSLExpory.php
  3. 将你的网站根目录指向你选择的 php 兼容的 web 服务器中的 /web/
  4. (如果不使用 apache)将重写从 /api/*/api/index.php

API

这个仪表盘由两部分组成

  1. 后端(API)
  2. 前端(JavaScript)

Web 界面通过调用 API 并行查询证书信息。这样做是为了代理过去跨站限制,以及提供更多关于如何处理证书验证的控制。

API 有两部分。第一部分是服务器列表

$ curl https://ssl.tyzoid.com/api/servers
{
    "servers": [
        {
            "id": 0,
            "host": "apilabs.tyzoid.com",
            "port": "https (443)",
            "name": "Api Labs"
        }
    ]
}

第二部分是特定服务器的证书到期信息

$ curl https://ssl.tyzoid.com/api/expiredate/0
{
    "cert": {
        "CNMatch": true,
        "validFrom": "2018-04-12T20:51:14-04:00",
        "validUntil": "2018-07-11T20:51:14-04:00"
    }
}

这两个 API 端点也支持 XML 输出,只需在请求中添加 .xml 扩展名即可。(默认情况下,会隐式添加 .json

$ curl https://ssl.tyzoid.com/api/expiredate/0.xml
<?xml version="1.0"?>
<cert>
  <CNMatch>1</CNMatch>
  <validFrom>2018-04-12T20:51:14-04:00</validFrom>
  <validUntil>2018-07-11T20:51:14-04:00</validUntil>
</cert>

计划变更

我希望让它看起来更像一个“仪表盘”,而不是主机/端口的列表,但这将在以后实现。计划功能和问题将通过问题跟踪器进行跟踪。