core: add IP-range based rules for permissions and fifficulty
This commit is contained in:
11
README.md
11
README.md
@@ -12,13 +12,22 @@ AI scrapers are everywhere. This will stop them. `robots.txt` won't.
|
||||
- Protect your endpoint from AI bots with a cryptographic challenge
|
||||
- Easy configuration in jsonc
|
||||
- Support for cloudflare
|
||||
- Support for IP-Range based rules (both ipv4 and ipv6)
|
||||
- Minimal. The waiting page is tiny and light on network usage.
|
||||
|
||||
### Planned features
|
||||
- Dynamic challenge amount (aka difficulty)
|
||||
- Dynamic challenge amount (aka difficulty) based on traffic
|
||||
- Detection of token overuse
|
||||
- Better wait screen
|
||||
- Better git integration (it's quite rudimentary right now)
|
||||
|
||||
## Caveats
|
||||
If you are using this, it's almost certain search engines will stop indexing your site. Keep this in mind.
|
||||
|
||||
## Setup guide
|
||||
|
||||
1. Clone and build this repo. You will need `openssl`, `g++>=12`, and deps for `pistache`, `fmt` and `tinylates`.
|
||||
2. Create a `config.jsonc`. An example one is in `example/`.
|
||||
3. Adjust the config to your needs. Options are documented with comments in the example config.
|
||||
4. Set up your IP rules if you want. These allow you to set up IPs that are automatically blocked, or allowed to access without a challenge. This is useful for e.g. search engine scrapers. Some IP ranges can be found in `example/index_bots.jsonc`.
|
||||
5. Run checkpoint with your config: `./build/checkpoint -c config.jsonc`. How you run it long-term as a service is up to you.
|
||||
|
||||
Reference in New Issue
Block a user