All Projects → kyhau → ssllabs-scan

kyhau / ssllabs-scan

Licence: MIT license
A simple Python script that calls SSL Labs API to do SSL testings on servers and create a report in html.

Programming Languages

python
139335 projects - #7 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to ssllabs-scan

sslcli
Pretty awesome command-line client for public SSLLabs API
Stars: ✭ 17 (-15%)
Mutual labels:  ssllabs
Sslyze
Fast and powerful SSL/TLS scanning library.
Stars: ✭ 2,623 (+13015%)
Mutual labels:  ssllabs
Nginx Admins Handbook
How to improve NGINX performance, security, and other important things.
Stars: ✭ 12,463 (+62215%)
Mutual labels:  ssllabs
Htrace.sh
My simple Swiss Army knife for http/https troubleshooting and profiling.
Stars: ✭ 3,465 (+17225%)
Mutual labels:  ssllabs-scan

SSL Labs Scan

githubactions travisci CodeQL codecov License

This tool calls the SSL Labs API v3 to do SSL testings on the given hosts, and generates csv and html reports.

All notable changes to this project will be documented in CHANGELOG.


Built with


Input and outputs

Sample input: sample/SampleServerList.txt

  1. summary.html (sample output: sample/summary.html)
  2. summary.csv (sample output: sample/summary.csv)
  3. hostname.json (sample output: sample/google.com.json)

Sample html output: alt text

You can change the report template and styles in these files:

ℹ️ Please note that the SSL Labs Assessment API has access rate limits. You can find more details in the sections "Error Response Status Codes" and "Access Rate and Rate Limiting" in the official SSL Labs API Documentation. Some common status codes are:

  • 400 - invocation error (e.g., invalid parameters)
  • 429 - client request rate too high or too many new assessments too fast
  • 500 - internal error
  • 503 - the service is not available (e.g., down for maintenance)
  • 529 - the service is overloaded

Build and run

Linux

# Create and activate a new virtual env (optional)
virtualenv env
. env/bin/activate

# Install and run
pip install -e .
ssllabs-scan sample/SampleServerList.txt

Windows

# Create and activate a new virtual env (optional)
virtualenv env
env\Scripts\activate

# Install and run
pip install -e .
ssllabs-scan sample\SampleServerList.txt

Example console output

$ ssllabs-scan sample/SampleServerList.txt
Start analyzing duckduckgo.com...
Status: DNS, StatusMsg(Resolving domain names): waiting 30 secs until next check...
Status: IN_PROGRESS, StatusMsg(None): waiting 30 secs until next check...
Status: IN_PROGRESS, StatusMsg(None): waiting 30 secs until next check...
Start analyzing google.com...
Status: DNS, StatusMsg(Resolving domain names): waiting 30 secs until next check...
Status: IN_PROGRESS, StatusMsg(None): waiting 30 secs until next check...
Status: IN_PROGRESS, StatusMsg(None): waiting 30 secs until next check...
Status: IN_PROGRESS, StatusMsg(None): waiting 30 secs until next check...
Status: IN_PROGRESS, StatusMsg(None): waiting 30 secs until next check...
Status: IN_PROGRESS, StatusMsg(None): waiting 30 secs until next check...
Status: IN_PROGRESS, StatusMsg(None): waiting 30 secs until next check...
Creating summary.html ...

Run Tox tests and build the wheels

pip install -r requirements-build.txt
tox -r
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].