A proxy server that implements Socks5/Shadowsocks/Redirect/HTTP (tcp) and Shadowsocks/TProxy/Tunnel (udp) protocols.
Project description
Shadowproxy
Intro
A proxy server that implements Socks5/Shadowsocks/Redirect/HTTP (tcp) and Shadowsocks/TProxy/Tunnel (udp) protocols.
Thanks to Dabeaz's awesome curio project: https://github.com/dabeaz/curio
This project is inspired by qwj's python-proxy project(https://github.com/qwj/python-proxy), and some part of http proxy code was copy from it.
It is a replacement of shadowsocks and shadowsocks-libev, you can replace ss-redir, ss-tunnel, ss-server, ss-local with shadowproxy.py
Usage
usage: shadowproxy [-h] [-v] [--version] [--monitor] server [server ...]
uri syntax: {server_scheme}://[cipher:password@]{netloc}[#fragment][{=client_scheme}://[cipher:password@]{netloc}]
support tcp schemes:
server_scheme: socks, ss, red, http, https
client_scheme: ss, http
support udp schemes:
server_scheme: ssudp, tproxyudp, tunneludp
client_scheme: ssudp
examples:
# socks5 --> shadowsocks
shadowproxy -v socks://:8527=ss://aes-256-cfb:password@127.0.0.1:8888
# http --> shadowsocks
shadowproxy -v http://:8527=ss://aes-256-cfb:password@127.0.0.1:8888
# https --> shadowsocks
shadowproxy -v https://:8527#keyfile,certfile=ss://aes-256-cfb:password@127.0.0.1:8888
# redir --> shadowsocks
shadowproxy -v red://:12345=ss://aes-256-cfb:password@127.0.0.1:8888
# shadowsocks server (tcp)
shadowproxy -v ss://aes-256-cfb:password@:8888
# shadowsocks server (udp)
shadowproxy -v ssudp://aes-256-cfb:password@:8527
# tunnel --> shadowsocks (udp)
shadowproxy -v tunneludp://:8527#8.8.8.8:53=ssudp://aes-256-cfb:password@127.0.0.1:8888
# tproxy --> shadowsocks (udp)
shadowproxy -v tproxyudp://:8527=ssudp://aes-256-cfb:password@127.0.0.1:8888
Installation
shadowproxy requires Python3.6+
pip install shadowproxy
Features
supported protocols
protocol | server | client | scheme |
---|---|---|---|
socks5 | ✓ | ✓ | socks:// |
socks4 | ✓ | socks4:// | |
ss | ✓ | ✓ | ss:// |
ss aead | ✓ | ss:// | |
http | ✓ | ✓ | httponly:// |
http connect(tunnel) | ✓ | ✓ | http:// |
transparent proxy | ✓ | red:// |
supported plugins
plugin | server | client |
---|---|---|
http_simple | ✓ | ✓ |
tls1.2_ticket_auth | ✓ |
supported ciphers
- aes-256-cfb
- aes-128-cfb
- aes-192-cfb
- chacha20
- salsa20
- rc4
- aes-256-gcm
- aes-192-gcm
- aes-128-gcm
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
shadowproxy-0.4.0.tar.gz
(8.0 kB
view hashes)
Built Distribution
Close
Hashes for shadowproxy-0.4.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a15389cc7fa574be844a2e9032dad80173f313882c8908cf26af97a06bbb054c |
|
MD5 | 9f0a5f171caeeada1f5afc2cd4b45fa9 |
|
BLAKE2b-256 | f47afe8208ff8bf0f27002edaa04cd334b697f512a1e5c03aec545b5b4f35451 |