A proxy server that implements Socks5/Shadowsocks/Redirect/HTTP (tcp) and Shadowsocks/TProxy/Tunnel (udp) protocols.
Project description
Shadowproxy
Introduction
A proxy server that implements Socks5/Shadowsocks/Redirect/HTTP (tcp) and Shadowsocks/TProxy/Tunnel (udp) protocols.
Thanks to Dabeaz's awesome curio project.
This project is inspired by qwj's python-proxy project.
It is a replacement of shadowsocks and shadowsocks-libev, you can replace ss-redir, ss-tunnel, ss-server, ss-local with just one shadowproxy command.
Installation
shadowproxy requires Python3.6+
pip3 install shadowproxy
Features
supported protocols
protocol | server | client | scheme |
---|---|---|---|
socks5 | ✓ | ✓ | socks:// |
socks4 | ✓ | ✓ | socks4:// |
ss | ✓ | ✓ | ss:// |
ss aead | ✓ | ✓ | ss:// |
http connect | ✓ | ✓ | http:// |
http forward | ✓ | forward:// | |
transparent proxy | ✓ | red:// | |
tunnel(udp) | ✓ | tunneludp:// | |
ss(udp) | ✓ | ✓ | ssudp:// |
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
- chacha20-ietf-poly1305
- aes-256-gcm
- aes-192-gcm
- aes-128-gcm
other features
- support both IPv4 and IPv6
Here are some ipv6 url examples:
http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:80/index.html
http://[1080:0:0:0:8:800:200C:417A]/index.html
http://[3ffe:2a00:100:7031::1]
http://[1080::8:800:200C:417A]/foo
http://[::192.9.5.5]/ipng
http://[::FFFF:129.144.52.38]:80/index.html
http://[2010:836B:4179::836B:4179]
Usage
usage: shadowproxy [-h] [-v] [--version] server [server ...]
uri syntax:
{scheme}://[{userinfo}@][hostname]:{port}[/?[plugin={p;args}][via={uri}][target={t}][source_ip={ip}]][#{fragment}]
userinfo = cipher:password or base64(cipher:password) when scheme is ss, ssudp
userinfo = username:password or base64(username:password) when scheme is socks, http.
examples:
# simple shadowsocks server
shadowproxy ss://chacha20:password@0.0.0.0:8888
# ipv6 binding
shadowproxy ss://chacha20:password@[::]:8888
# socks5 --> shadowsocks
shadowproxy -v socks://:8527/?via=ss://aes-256-cfb:password@127.0.0.1:8888
# http --> shadowsocks
shadowproxy -v http://:8527/?via=ss://aes-256-cfb:password@127.0.0.1:8888
# redir --> shadowsocks
shadowproxy -v red://:12345/?via=ss://aes-256-cfb:password@127.0.0.1:8888
# shadowsocks server (udp)
shadowproxy -v ssudp://aes-256-cfb:password@:8527
# tunnel --> shadowsocks (udp)
shadowproxy -v tunneludp://:8527/?target=8.8.8.8:53&via=ssudp://aes-256-cfb:password@127.0.0.1:8888
# tproxy --> shadowsocks (udp)
shadowproxy -v tproxyudp://:8527/?via=ssudp://aes-256-cfb:password@127.0.0.1:8888
use docker:
docker run -it --rm tensiongyb/shadowproxy -vv socks://:8527
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
Built Distribution
File details
Details for the file shadowproxy-0.7.0.tar.gz
.
File metadata
- Download URL: shadowproxy-0.7.0.tar.gz
- Upload date:
- Size: 23.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 13dadea82fd314e996d41437858010a80d3dc9426c7025101020138706d37954 |
|
MD5 | 96af1f219af5dc36a2e1d1230eeee2c1 |
|
BLAKE2b-256 | 57f857f9630c15e1dd68b93118033d910b491cfbf905a68693f91069746191ad |
File details
Details for the file shadowproxy-0.7.0-py3-none-any.whl
.
File metadata
- Download URL: shadowproxy-0.7.0-py3-none-any.whl
- Upload date:
- Size: 33.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ffdace7fa0cb9a60882a40d07f9c42c8bb0edd4cb4d293d72ff05167447535a4 |
|
MD5 | f9b905db908f60ece1437b196a5da3ee |
|
BLAKE2b-256 | 916caf1adc15ed11f6902e801cb8de54760899ea2d91ae0d60b3d17130d8075b |