Skip to content

ShadowsocksR

[!NOTE] This document is partially generated by AI.

ShadowsocksR is a fork of the original Shadowsocks with added features such as protocol and obfuscation plugins to bypass censorship. In yuhaiin, it is an outbound-only protocol.

  • TCP: Supported natively.
  • UDP: Supported natively.
    • NAT Type: Full-Cone NAT.

The shadowsocksr protocol block requires several fields to match the server’s specific security and obfuscation settings:

  • server (string): The address of the SSR server. While often provided by the simple layer, SSR specific implementations may use this field.
  • port (string): The port of the SSR server.
  • method (string): The symmetric encryption method.
    • Examples: aes-256-cfb, chacha20, rc4-md5.
  • password (string): The authentication password.
  • protocol (string): The SSR internal protocol used for data transmission.
    • Examples: origin, auth_sha1_v4, auth_aes128_md5.
  • protoparam (string): Optional parameters for the chosen protocol.
  • obfs (string): The obfuscation method used to disguise the traffic.
    • Examples: plain, http_simple, tls1.2_ticket_auth.
  • obfsparam (string): Optional parameters for the chosen obfuscation method.
{
"name": "My-SSR-Client",
"protocols": [
{
"simple": {
"host": "ssr.example.com",
"port": 1234
}
},
{
"shadowsocksr": {
"server": "ssr.example.com",
"port": "1234",
"method": "aes-128-cfb",
"password": "your-password",
"protocol": "auth_aes128_md5",
"obfs": "tls1.2_ticket_auth"
}
}
]
}

SSR support is provided for legacy compatibility. It handles the complex handshaking and data transformation required by various SSR protocols and obfuscators.

SSR links start with ssr:// followed by a Base64-encoded string containing all parameters. Format: ssr://base64(host:port:protocol:method:obfs:base64(password)/?obfsparam=base64&protoparam=base64&remarks=base64)