proxy-checker-rs/README.md
2024-08-20 15:47:05 +08:00

61 lines
1.2 KiB
Markdown

# Proxy Checker
This repository provides an open-source server-side API for detecting if a client is using a proxy. The detection method compares the Round-Trip Time (RTT) of both the TLS and TCP layers. This differential analysis helps identify the presence of a proxy.
## How
![](./docs/image1.png)
## Demo
click [demo](https://blog.yccd.cc/tools/proxy-checker)
or
```shell
curl https://api.proxychecker.yccd.cc:8443
```
## Usage
Clone the repository:
```bash
git clone https://github.com/YCCDSZXH/proxy-checker-rs.git
cd proxy-checker-rs
```
Build
```bash
cargo b
```
Configure certificate
```bash
openssl req -new -newkey rsa:2048 -days 365 -nodes -x509 -keyout server.key -out server.crt
```
Run the server:
```bash
cargo r
```
Make a request to the detection endpoint:
```bash
curl https://localhost:8443 -k
```
If you use self generate certificate, you need `-k` to skip certificate verify
The API will return a JSON response indicating whether a proxy was detected.
## Contributing
Contributions are welcome! Feel free to submit issues, fork the repository, and create pull requests.
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.