TL;DR
API Endpoint for github.com/nabla-c0d3/sslyze written in Python/Flask and Celery
Install Python v2.7+ and pip before proceeding further
- Install the dev-requirements.txt using
pip install -r dev-requirements.txt
- Change to
sslyze_api
directory - Start Celery with
celery -A sslyze_api.celery_app worker -l info
- Execute
run.py
file with python
Default credentials
username: admin
password: password
token: ae027250efaafacd3087085fb1ee787c
Available API routes
/api/user/new ==> Create new user with args ?username=YOUR_USERNAME&password=YOUR_PASSWORD
/api/user/token ==> Get the token with args ?username=YOUR_USERNAME&password=YOUR_PASSWORD
/api/scan ==> Scan the domain name, you can use either token or username:password
eg:
/api/scan?host=example.com
default port is 443 so unless you want to scan non-default port, use port=PORT_NUMBER in args
Test
curl -H "X-Auth-Token: ae027250efaafacd3087085fb1ee787c" http://localhost:5000/api/scan?host=snehesh.me
[x] User Authenticaton
[x] Token Based Auth
[ ] Rate Limiting based on IP
[ ] Logging requests
[ ] Caching Response
- Python 2
- Flask
- sslyze
- celery
- billiard
- sqlalchemy
- sqlite3
- gunicorn
- Docker