Skip to content

cnpythonlib/shadowsocks-rust

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

252 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

shadowsocks-rust

Build Status Build status crate

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

Build

Linux & macOS

# 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

Windows

  1. Install rust with MSVC ABI: https://www.rust-lang.org/en-US/downloads.html

  2. Install visual C++ build tools: http://landinghub.visualstudio.com/visual-cpp-build-tools

  3. Download source code and enter the root directory of it.

  4. Run following commands:

    cargo build --release --features sslocal

    You will find sslocal at target\release\ssserver.

Compare to Python Version

Features

Rust Python (2.9.0)
TCP & UDP support
TCP fast open wait mio support
Destination IP blacklist X
One time auth
Multiple encryption methods
Async UDP support X
IPv6 support untested
Windows compatible             buggy     need install crypto libs
Multiple servers support X

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

About

Oh my implementation of Shadowsocks in Rust

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Rust 95.2%
  • Python 3.1%
  • Shell 1.7%