Cyber security

Shadowsocks : The Ultimate Guide To Features, Installation, And Configuration

  • hickory-dns – Uses hickory-resolver as DNS resolver instead of tokio‘s builtin.
  • local-http – Allow using HTTP protocol for sslocal
    • local-http-native-tls – Support HTTPS with native-tls
    • local-http-rustls – Support HTTPS with rustls
  • local-tunnel – Allow using tunnel protocol for sslocal
  • local-socks4 – Allow using SOCKS4/4a protocol for sslocal
  • local-redir – Allow using redir (transparent proxy) protocol for sslocal
  • local-dns – Allow using dns protocol for sslocal, serves as a DNS server proxying queries to local or remote DNS servers by ACL rules
  • local-fake-dns – FakeDNS, allocating an IP address for each individual Query from a specific IP pool
  • local-tunTUN interface support for sslocal
  • local-online-config – SIP008 Online Configuration Delivery
  • stream-cipher – Enable deprecated stream ciphers. WARN: stream ciphers are UNSAFE!
  • aead-cipher-extra – Enable non-standard AEAD ciphers
  • aead-cipher-2022 – Enable AEAD-2022 ciphers (SIP022)
  • aead-cipher-2022-extra – Enable AEAD-2022 extra ciphers (non-standard ciphers)

Memory Allocators

This project uses system (libc) memory allocator (Rust’s default). But it also allows you to use other famous allocators by features:

  • jemalloc – Uses jemalloc as global memory allocator
  • mimalloc – Uses mi-malloc as global memory allocator
  • tcmalloc – Uses TCMalloc as global memory allocator. It tries to link system-wide tcmalloc by default, use vendored from source with tcmalloc-vendored.
  • snmalloc – Uses snmalloc as global memory allocator
  • rpmalloc – Uses rpmalloc as global memory allocator

crates.io

# Install from crates.io
cargo install shadowsocks-rust

then you can find sslocal and ssserver in $CARGO_HOME/bin.

Install Using Homebrew

For macOS and Linux, you can install it using Homebrew:

brew install shadowsocks-rust

For more information click here.

Varshini

Varshini is a Cyber Security expert in Threat Analysis, Vulnerability Assessment, and Research. Passionate about staying ahead of emerging Threats and Technologies.

Recent Posts

git fetch vs git pull: How They Work and When to Use Each

Both git fetch and git pull talk to a remote repository, but they do very different things to your…

2 days ago

git cherry-pick Command: Apply Commits from Another Branch

Sometimes the change you need already exists, just on the wrong branch. A hotfix lands…

2 days ago

Best Email APIs for Secure Business Email: Why Developers Are Moving Beyond SMTP

Email is still one of the most important communication channels inside modern applications. Password resets,…

3 days ago

Nginx Commands in Linux: Start, Stop, Reload, Test, and Log

Nginx is a high-performance web server and reverse proxy trusted by some of the largest…

6 days ago

ufw Command in Linux: Manage Firewall Rules with Examples

ufw (Uncomplicated Firewall) sits on top of iptables (or nftables on newer systems) and replaces…

6 days ago

who Command in Linux: Show All Logged-In Users and Sessions

When you share a server with a team or investigate unexpected activity, the first question…

6 days ago