dev-master
9999999-dev https://github.com/tyzoid/ssl-dashboardA simple ssl monitoring dashboard
MIT
The Requires
by Tyler Dence
 Wallogit.com
                    
                    2017 © Pedro Peláez
                         Wallogit.com
                    
                    2017 © Pedro Peláez
                    
                    
                    
                    
                
                
            
A simple ssl monitoring dashboard
A free dashboard for tracking SSL/TLS Certificates on various services, (*1)
The idea for this project came from having a my IRC bouncer's certificate expire. I made sure to keep the cert up-to-date in my reverse proxy, but due to the way the certificate is configured, it was is not as easy to automate. Additionally, while letsencrypt will send you a reminder email, and certbot can take care of automatically creating and renewing your certificates, it has a few limitations:, (*2)
Getting started with SSL Dashboard is easy.
 1. Clone this repo
 2. Add the services you want to track to /controllers/SSLExpory.php
 3. Point your webroot at /web/ in a php-capable webserver of your choice
 4. (If not using apache) Configure a rewrite from /api/* to /api/index.php, (*3)
This dashboard is composed of two parts: 1. The Backend (API) 2. The Frontend (Javascript), (*4)
The web interface calls the API to query certificate information in parallel. This is done to proxy past cross-site restrictions, as well as give more control about how certificate validation is handled., (*5)
The API has two parts. The first is a list of servers:, (*6)
$ curl https://ssl.tyzoid.com/api/servers
{
    "servers": [
        {
            "id": 0,
            "host": "apilabs.tyzoid.com",
            "port": "https (443)",
            "name": "Api Labs"
        }
    ]
}
The second is the certificate expiry information for a particular server:, (*7)
$ 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"
    }
}
Both of these API endpoints support XML output as well, simply by adding a .xml extension to the request. (.json is implicitly added by default):, (*8)
$ 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>
I would like to make this appear more as a "dashboard", rather than as a list of hosts/ports, but this will come later. Planned features and issues will be tracked via the issue tracker., (*9)
A simple ssl monitoring dashboard
MIT