Caterpillar Proxy - The simple and parasitic web proxy with SPAM filter (formerly, php-httpproxy)
Go to file
2024-07-02 12:32:22 +09:00
.github Create FUNDING.yml 2024-02-23 17:10:43 +09:00
assets Remove unused workers (will be refactor) 2024-07-02 12:32:22 +09:00
plugins Update fediverse.py 2024-06-05 13:50:47 +09:00
.gitignore Update .gitignore 2024-02-20 16:20:37 +09:00
base.py Update base.py 2024-05-21 00:04:39 +09:00
caterpillar.service Create caterpillar.service 2024-02-21 02:24:06 +09:00
configure_certs.sh Update a certificate 2024-06-10 05:29:37 +09:00
console.html Update console.html 2024-06-26 16:21:05 +09:00
Dockerfile Create Dockerfile 2024-03-06 15:11:13 +09:00
LICENSE Initial commit 2022-10-06 02:16:30 +09:00
README.md Update README.md 2024-06-28 14:27:27 +09:00
requirements.txt Create requirements.txt 2022-10-06 13:29:24 +09:00
server.py Update server.py 2024-06-20 17:20:57 +09:00
smtp.py Update smtp.py 2024-06-20 17:21:08 +09:00
web.py Update web.py 2024-06-20 17:21:19 +09:00

gnh1201/caterpillar

Caterpillar Proxy - The simple web debugging proxy (formerly, php-httpproxy)

title image

Use cases

How it works

Basic structure

You <-> Proxy client (Python) <-> Parasitized proxy server (Optional, PHP) <-> On the Web

For example, build a simple web debugging proxy on the shared servers.

Stateful mode

This project supports two modes of connection. The default is stateless. You can use the stateful mode to avoid being constrained by transfer capacity limits. See the Stateful mode (github.com/gnh1201/caterpillar wiki).

(Optional) Before to use

If you have a server that will be parasitized and you want to proxy it, you should upload the index.php file to a shared server. The index.php file is located in the assets/php directory within this repository.

How to use

  1. Write a file .env(Linux) or settings.ini(Windows). Like this:
[settings]
PORT=5555
SERVER_URL=http://example.org
SERVER_CONNECTION_TYPE=stateless
CA_KEY=ca.key
CA_CERT=ca.crt
CERT_KEY=cert.key
CERT_DIR=certs/
OPENSSL_BINPATH=openssl
CLIENT_ENCODING=utf-8
  • (Optional) Create a certificate for SSL decryption
chmod +x configure_certs.sh
./configure_certs.sh
sudo apt-get install -y ca-certificates
sudo cp ca.crt /usr/local/share/ca-certificates/caterpillar-ca.crt
sudo update-ca-certificates
  1. Run python3 server.py and set HTTP(S) proxy in your web browser (e.g. Firefox, Chromium)

  2. Test 100MB/SSL, 1GB/SSL, 10GB/SSL download and check the speed.

  3. Enjoy it

  4. (Optional) With Cloudflare, we can expect to accelerate the 4x speed and reduce the network stuck.

Extensions

Thanks to

Report abuse