
Proxy HTTP/HTTPS in un singolo script Python
Proxy HTTP/HTTPS in un singolo script python
Questo script funziona su Python 2.7. È necessario installare OpenSSL per intercettare le connessioni HTTPS.
Eseguilo semplicemente come script:
$ python proxy2.py
Il comando precedente avvia il proxy su localhost:8080. Verifica che funzioni digitando il comando seguente in un altro terminale dello stesso host.
$ http_proxy=localhost:8080 curl http://www.example.com/
proxy2 è pensato per debug/test, quindi accetta solo connessioni da localhost.
Per usare un'altra porta, specifica il numero di porta come primo argomento.
$ python proxy2.py 3128
Per intercettare le connessioni HTTPS, genera le chiavi private e un certificato CA privato:
$ ./setup_https_intercept.sh
Attraverso il proxy, puoi accedere a http://proxy2.test/ e installare il certificato CA nei browser.
Puoi facilmente personalizzare il proxy, modificare le richieste/risposte o salvare dati su file. La classe ProxyRequestHandler ha 3 metodi da personalizzare:
Di default, è implementato solo save_handler, che emette le intestazioni HTTP(S) e alcuni dati utili sull'output standard.