shadowsocks-rust

April 28, 2017 · View on GitHub

Build Status Build status crate

A rust port of shadowsocks, based on mio 0.5.x.

Install

Cargo

cargo install shadowsocks

Script

# uncomment to compile with OpenSSL support
# export SS_FEATURES=openssl
curl https://raw.githubusercontent.com/loggerhead/shadowsocks-rust/master/build.sh -sSf | sh
./sslocal --version
./ssserver --version

Compare to Python Version

Features

RustPython (2.9.0)
TCP & UDP support
TCP fast openwait mio support
Destination IP blacklistX
One time auth
Multiple encryption methods
Async UDP supportX
IPv6 supportuntested
Windows compatible            buggy    need install crypto libs
Multiple servers supportX

Encryption Methods

Both python and rust version supported

  • aes-128-ctr
  • aes-192-ctr
  • aes-256-ctr
  • aes-128-cfb
  • aes-256-cfb
  • aes-128-cfb1
  • aes-256-cfb1
  • aes-128-cfb8
  • aes-256-cfb8
  • salsa20
  • chacha20
  • rc4

Without OpenSSL

  • aes-128-ctr
  • aes-192-ctr
  • aes-256-ctr
  • rc4
  • hc128
  • salsa20
  • xsalsa20
  • chacha20
  • xchacha20
  • sosemanuk

TBD

  • test IPv6
  • fix very slow problem on windows (wait mio stable)
  • support TCP fast open