Technology reviews & practical guides
Shadowsocks reviewed in late 2026: how the free proxy protocol works, which server and clients to use, Shadowsocks 2022 ciphers, GFW detection and the 2026 revival.

Shadowsocks is one of the oldest tools still in use for getting around network censorship. It started in 2012 as a single developer's side project, survived a police-ordered takedown in 2015, and is now a community-run protocol with implementations in Rust, C and Go and clients for every major platform. It costs nothing. There is no company behind it, no account to create and no server network to subscribe to.
That makes this an unusual review. Price is not the question. The question is whether Shadowsocks is still worth setting up in late 2026, when China's Great Firewall has been flagging fully encrypted traffic since 2021 and several of the official clients went years without a release. This autumn brought a real revival: shadowsocks-libev was modernized and renamed shadowsocks-c, ShadowsocksX-NG 2 shipped its first alphas, and v2ray-plugin gained a Hysteria2 transport. We went through shadowsocks.org, the official repositories and the published censorship research to find out which parts are solid and which are traps left over from old tutorials.
shadowsocks.org describes the project as "a fast tunnel proxy that helps you bypass firewalls". Its own documentation is more precise: Shadowsocks is "a secure split proxy loosely based on SOCKS5". You run a small client on your device and a server on a machine outside the network you are trying to escape. Traffic between the two is encrypted, and the server makes the real connections on your behalf.
Wikipedia calls it a "free and open-source encryption protocol project, widely used in China to circumvent Internet censorship". Unlike SSH port forwarding it can also carry UDP, and some clients redirect all system traffic, which lets Shadowsocks be used much like a VPN.
Shadowsocks is a protocol and a set of programs, not a provider. There is no subscription, no server list, no no-logs policy and no audit to check. You rent a server and run it yourself, so your privacy depends on you and on your hosting company. If you want something you can sign up for, a commercial VPN with a Shadowsocks-based stealth mode is the closer fit.
The project was created in 2012 by a developer known as clowwindy (Wikipedia gives the release date as 20 April 2012). On 22 August 2015 the developer wrote on GitHub that police had contacted them and that they could no longer maintain it: "Today they asked me to delete all the code from GitHub." The original repository was replaced with a removal notice, but forks and the shadowsocks GitHub organization carried on. The original Python version last shipped in January 2017 (2.9.1) and is of historical interest only.
The design has two halves. ss-local runs on your device and acts as a SOCKS5 server for your apps. It encrypts each request and sends it to ss-remote on your server, which decrypts it, connects to the destination and encrypts the reply on the way back. Both TCP and UDP are proxied, and for UDP the server effectively performs NAT for the client. Destination addresses use the SOCKS5 format, so IPv4, IPv6 and domain names all work.

Everything around the core protocol is defined in numbered proposals called SIPs. SIP002 sets the ss:// share link format, which is how most people move a server profile between devices (plain form: ss://method:password@hostname:port, usually base64-encoded). SIP003 defines plugins, modeled on Tor's pluggable transports, which wrap Shadowsocks in another transport such as WebSocket or TLS. SIP008 covers online configuration, the subscriptions that GUI clients fetch over HTTPS. SIP022 is the 2022 edition of the protocol, and SIP023 adds Extensible Identity Headers.
Every official implementation can talk to every other one. A server running shadowsocks-rust works with an Android client, a Mac client or the C version, as long as both ends agree on the cipher and any plugin.
For a few years Shadowsocks looked like it was winding down. Then a run of releases landed in 2026.

Not everything moved. shadowsocks-windows has not had a release since 4.4.1.0 in February 2022. The shadowsocks-android listing on Google Play still says it was updated on 17 September 2021, even though GitHub has v5.3.4 (October 2024) and a v5.3.5 nightly from February 2026. go-shadowsocks2 was last tagged in 2021, and simple-obfs is officially deprecated.
The server is the part you install yourself, so it is the most important choice. shadowsocks.org lists three command-line implementations, and Jigsaw's outline-ss-server is a fourth worth knowing.
This is where new development happens. It supports TCP Fast Open, multiple users, the management API, MPTCP, plugins and, uniquely, experimental plugin UDP. It implements the Shadowsocks 2022 ciphers and was one of the first implementations to ship the 2022 countermeasures against the GFW's entropy detection. It is MIT-licensed and packaged for crates.io, Arch, the AUR, NixOS, Snap, Homebrew and MacPorts. If you are starting fresh, start here.
The C version was, by its own account, in a "bug-fix-only maintenance phase" with new work going to Rust. The September 2026 overhaul gave it portable static builds for Linux, macOS, Windows and FreeBSD, and Docker is now the recommended way to run it as a server. It still has a very small footprint, which suits routers and low-end boxes. It also has an opt-in "printable salt" experiment that the docs are careful to describe as "not TLS impersonation, nor a promise of censorship resistance". GPL-3.0.
A clean Go implementation focused on the core protocol. It has no plugins, no multi-user support, no management API and no TCP Fast Open, and it has not been tagged since 2021. Fine for reading code, not our pick for a server.
Built by Jigsaw for the Outline project, and it runs fine on its own. It allows multiple users per port, exports Prometheus metrics, reloads its config on SIGHUP and refuses non-AEAD ciphers and unsafe access to localhost ports. Outline Server wraps it with a REST API for managing access keys, which is the easiest route if you want to hand out keys to family or a team.
Client quality is the weakest part of the Shadowsocks ecosystem in 2026. It ranges from actively developed to abandoned, and the store listings do not always reflect what is on GitHub.

shadowsocks-android is the most polished client: profiles, SIP008 subscriptions, custom routing rules with a GFW list, plugin support and an Android TV build. It has more than 5 million downloads on Google Play, but the Play version is years behind. Install the APK from GitHub releases or get it from F-Droid to receive the 2024 and 2026 fixes, including a DNS resolution fix for some Android 15 devices.

shadowsocks.org now recommends meow, a client built on the meow-rs engine. It supports the AEAD and 2022 ciphers, ss:// links and QR codes, simple-obfs and v2ray-plugin running in-process, rule routing, DNS over HTTPS and Clash-style subscriptions, and says it runs fully on-device with no data collection. It needs iOS 17 or later and is distributed through TestFlight. Its project page returned a 404 when we checked, so use the link on shadowsocks.org's Getting Started page.
ShadowsocksX-NG 2 is a promising rewrite: server groups and favorites, SIP008 subscriptions that show the provider's traffic and expiry info, Global, Rules and Direct modes, Shadowsocks 2022 and SIP023 support, latency tests, and bundled v2ray-plugin and Cloak. The server library is encrypted on disk with age, and diagnostic reports leave out passwords and subscription URLs. But it is alpha software, it runs only on Apple silicon with macOS 15 or later, and custom rules from alpha.1 were not carried over to alpha.2. The legacy 1.x client, last released in October 2024, is officially unmaintained, which leaves Intel Macs without a maintained official client.
This is where old guides do the most damage. Early Shadowsocks used stream ciphers such as rc4-md5 and aes-256-cfb. The project's own documentation now says: "Stream ciphers are completely broken and will be removed soon. New users must use AEAD ciphers."
AEAD ciphers "simultaneously provide confidentiality, integrity, and authenticity". The recommended ones are chacha20-ietf-poly1305 (mandatory for compliant implementations), aes-256-gcm and aes-128-gcm. Every current client supports them.
Shadowsocks 2022 (SIP022) goes further. It "drops usage of obsolete cryptography", mandates full replay protection, makes UDP session-based and produces traffic that is "indistinguishable from a random byte stream". Instead of a password, it uses a random pre-shared key of fixed length, base64-encoded, an idea the spec credits to WireGuard. Use 2022-blake3-aes-256-gcm or 2022-blake3-aes-128-gcm when both ends support it: shadowsocks-rust, ShadowsocksX-NG 2 and meow all do.
# generate a 32-byte key for 2022-blake3-aes-256-gcm
openssl rand -base64 32
# /etc/shadowsocks-rust/config.json
{
"server": "0.0.0.0",
"server_port": 8388,
"password": "<output of the command above>",
"method": "2022-blake3-aes-256-gcm"
}SIP022 states plainly that it does not provide forward secrecy. Anyone who captures your traffic and later obtains the key can decrypt it. Treat the key like a long-lived secret, and use HTTPS inside the tunnel for anything sensitive, as you would on any proxy.
Shadowsocks was built to look like nothing: a stream of random bytes with no headers to fingerprint. Since early November 2021 that is exactly what gives it away in China. Researchers from gfw.report and several universities documented, in a USENIX Security 2023 paper, that the Great Firewall passively detects "fully encrypted" protocols such as Shadowsocks, VMess and obfs4 in real time.
The firewall does not identify Shadowsocks directly. It exempts traffic that looks non-random and treats the rest as suspect. A connection is exempted if its first six bytes are printable, if more than half its bytes are printable, if it contains a run of more than 20 printable bytes, if it looks like TLS or HTTP, or if its average number of set bits per byte is 3.4 or less or 4.6 or more. Monitoring focuses on popular data-center IP ranges, covers about 26% of connections, and blocks for about 180 seconds once it fires.

Implementations responded. A customizable salt prefix was adopted by shadowsocks-rust in January 2022 and by Outline in October 2022, and popcount altering reached shadowsocks-rust and shadowsocks-android around the same time. As of February 2023 the researchers said these were still effective in China. The shadowsocks-c printable-salt option is the same idea, and its docs openly admit it adds its own fingerprint, since every enabled connection starts with six printable bytes.
Wikipedia also notes that Shadowsocks is not resistant to active probing, unlike obfs4. In practice, people who need it to work under heavy censorship pair it with a plugin such as v2ray-plugin over TLS or WebSocket, or Cloak. The new Hysteria2 mode in v2ray-plugin only works between two v2ray-plugin instances, cannot talk to ordinary Hysteria2 servers and does not carry Shadowsocks UDP.
The honest summary: Shadowsocks with a current implementation still works in many places, and in restrictive countries it works sometimes and on some servers. Nobody, including the project itself, promises it is undetectable.
The software is free under MIT, GPL-3.0 or Apache-2.0, depending on the component. Your only cost is a server. shadowsocks.org's deployment guide says to "buy a server from any cloud provider", recommends Ubuntu 22.04 or later and links to DigitalOcean with the project's own referral code. A small VPS is enough for personal use.
For many connections, the advanced guide recommends raising the open-file limit to 51200, tuning kernel parameters and using Linux 4.9 or newer. If editing JSON over SSH sounds like too much, Outline Server installs the same protocol with a desktop manager app that creates access keys for you.
Shadowsocks is still worth running in 2026, as long as you treat it as a tool rather than a service. Pair shadowsocks-rust on the server with a Shadowsocks 2022 cipher and a current client, and you get a fast, cheap, private proxy that no company can log or sell. The 2026 releases make the project look healthier than it has in years.
It is a poor choice if you want something that just works without a server, if you need guaranteed access under China-level censorship, or if you follow a 2018 tutorial with aes-256-cfb and shadowsocks-windows. For those cases, either add a TLS-based plugin and keep up with releases, or pay for a VPN that maintains the stealth layer for you.
Yes. Every official implementation and client is free and open source, and there is no paid tier. The only thing you pay for is the server you run it on, typically a small cloud VPS.
No, it is an encrypted SOCKS5 proxy protocol. Some clients route all device traffic through it, so it can behave like a VPN, but there is no provider, account or server network: you host the server yourself.
Sometimes. Since November 2021 the Great Firewall blocks fully encrypted traffic heuristically, and current implementations add countermeasures that researchers found still effective in early 2023. Results vary by server and over time, and the project makes no promise of censorship resistance.
Use 2022-blake3-aes-256-gcm or 2022-blake3-aes-128-gcm with a random base64 key when both ends support Shadowsocks 2022. Otherwise use chacha20-ietf-poly1305 or aes-256-gcm. Never use stream ciphers such as rc4-md5 or aes-256-cfb, which the project calls completely broken.
No, it was renamed. In September 2026 it became shadowsocks-c, moved from libev to libuv and gained portable builds for Linux, macOS, Windows and FreeBSD. The ss-local and ss-server commands and config paths are unchanged.
The software has no central service to log anything. Whoever runs the server can see the destinations you connect to, and the hosting company can see traffic volumes and your IP, so choose your VPS provider with that in mind.
The Play listing has not been updated since September 2021. Newer builds, v5.3.4 from October 2024 and a v5.3.5 nightly from February 2026, are on GitHub releases and F-Droid.
More in Virtual Private Network
Browse Virtual Private Networkshadowsocks-windows is still the org's most-starred repository, with about 59,000 stars, and still works: system proxy, PAC and global modes, user rules, server auto-switching, UDP relay and plugins. But it needs .NET Framework 4.8 and has had no release since February 2022. On Linux, most people simply run sslocal from shadowsocks-rust or ss-local from shadowsocks-c and point their browser or system proxy at it. shadowsocks-qt5 is still listed on shadowsocks.org.