Automatic detection and blocking bad bots (DDoS, shopping bots, scrappers, booking bots and others) by TLS and HTTP fingerprints or IP based on Tempesta FW access logs stored in the Clickhouse database.
The current version 0.1 is experimental and should not be used in production.
- Python 3.12 <=
- Tempesta FW 0.8.0 <=
- Clickhouse 25.6.0 <=
To run the tests you need to copy GeoLite2-City.mmdb to tests/ directory.
# run all tests with a logging level INFO
pytest
# show the tests output
pytest -s
# the additional verbose level for pytest
pytest -vvv
# run debugger on the error
pytest --pdb
# run the tests from dir
pytest -s -vvv tests
# run the tests from file
pytest -s -vvv tests/test_app.py
# run the specific test
pytest -s -vvv tests/test_app.py::test_run_app
# preferred running params
pytest -s -vvv --pdbblack .
isort .