Proxy Protocols

[l4proxies]

This section defines Layer 4 proxies, like Shadowsocks and VMess. The key for each entry is a user-defined name for the proxy.

Common Fields

KeyTypeDescriptionRequired
typeStringThe proxy type. Supported: shadowsocks, vmess, anytls, vless, trojan, http, socks5.Yes
nicknameStringA user-friendly name.No
serverStringThe server address.Yes
portIntegerThe server port.Yes
enabledBooleanWhether the proxy is enabled. Defaults to true.No
route-via-vpnBoolean(New in 1.8.0) Whether the proxy need to route over the VPN, thus you can chain it traffic to another VPN/Proxy server. Default to false, server IP must be in IPv4 address.No

Shadowsocks Fields

KeyTypeDescriptionRequired
passwordStringThe password.Yes
methodStringThe encryption method. Supported AEAD methods: aes-128-gcm, aes-256-gcm, chacha20-ietf-poly1305. Supported Shadowsocks 2022 methods: 2022-blake3-aes-128-gcm, 2022-blake3-aes-256-gcm, 2022-blake3-chacha20-poly1305.Yes
obfs-typeStringObfuscation type (tls or http).No
obfs-hostStringObfuscation host (required for obfs-type).No
obfs-pathStringObfuscation path (required for obfs-type=http).No
udp-forwardBooleanWhether to forward UDP traffic. Defaults to false.No

For Shadowsocks 2022 methods, password must be a base64-encoded pre-shared key. The decoded key must be 16 bytes for 2022-blake3-aes-128-gcm, and 32 bytes for 2022-blake3-aes-256-gcm or 2022-blake3-chacha20-poly1305.

VMess Fields

KeyTypeDescriptionRequired
user-idUUIDThe user ID.Yes
alter-idIntegerThe alter ID.Yes
securityStringSecurity type. E.g., auto.Yes
transport-typeStringTransport type (tcp or ws).Yes
ws-pathStringThe WebSocket path (required for transport-type=ws).No
sniStringServer Name Indication for TLS.No
skip-cert-checkBooleanIf true, skip certificate validation. Defaults to false.No
alpnStringApplication-Layer Protocol Negotiation. Defaults to h2,http/1.1.No
KeyMeaning
ws-hostOptional WebSocket HTTP Host, separate from TLS SNI.
ws-h2-max-streamsOptional HTTP/2 WebSocket concurrent-stream limit: 1–256. Omit to use the runtime default.
tls-enabledBoolean; defaults to true. Enable TLS when required by the server.

AnyTLS Fields

AnyTLS is configured as an L4 proxy with type=anytls. The fields below configure authentication, TLS, and idle session reuse.

KeyTypeDescriptionRequired
passwordStringAnyTLS password.Yes
sniStringTLS Server Name Indication. Defaults to the server value when omitted.No
skip-cert-checkBooleanIf true, skip upstream certificate validation. Defaults to false.No
session-reuseBooleanEnables AnyTLS idle session reuse. Defaults to true.No
idle-session-check-intervalIntegerInterval in seconds for checking idle AnyTLS sessions. Valid range: 1 to 3600. Defaults to 30.No
idle-session-timeoutIntegerIdle session timeout in seconds. Valid range: 1 to 3600. Defaults to 60.No
min-idle-sessionsIntegerMinimum idle sessions to keep. Valid range: 0 to 64. Defaults to 1.No
max-idle-sessionsIntegerMaximum idle sessions to keep. Valid range: 0 to 64. Defaults to 4.No

Example:

[l4proxies]
any=type:anytls,nickname:AnyTLS,server:any.example.com,port:443,password:secret,sni:cdn.example.com,skip-cert-check:false,session-reuse:true,idle-session-check-interval:30,idle-session-timeout:60,min-idle-sessions:1,max-idle-sessions:4,enabled:true

HTTP&Socks5 Fields

KeyTypeDescriptionRequired
usernameStringProxy username for upstream authentication.No
passwordStringProxy password for upstream authentication.No
udp-forwardBooleanSOCKS5 UDP forwarding flag. Currently kept for profile compatibility; UDP forwarding depends on runtime support.No

Example:

[l4proxies]
tshttp=type:http,nickname:tshttp,server:3.3.3.3,port:1055,enabled:true
tssocks=type:socks5,nickname:tssocks,server:10.1.1.1,port:1055,username:user,password:pass,enabled:true,udp-forward:false,route-via-vpn:true
ss2022=type:shadowsocks,nickname:SS2022,server:ss.example.com,port:8388,password:base64-psk,method:2022-blake3-aes-256-gcm,udp-forward:true,enabled:true
any=type:anytls,nickname:AnyTLS,server:any.example.com,port:443,password:secret,sni:cdn.example.com,skip-cert-check:false,session-reuse:true

VLESS: TCP + REALITY + Vision (Pro)

Only this combination is supported in 2.1.0. UDP/XUDP, WebSocket, gRPC, other fingerprints, and plain VLESS/TLS are unsupported. Replace all sample server credentials with your server's values.

KeyMeaning
user-idUser UUID.
transport-typetcp only; default tcp.
transport-securityRequired: reality.
flowRequired: xtls-rprx-vision.
encryptionnone only; default none.
sniRequired REALITY cover server DNS name, as configured by the server.
reality-public-keyRequired canonical 32-byte base64url public key, without padding.
reality-short-idOptional; empty or an even number of hexadecimal digits, at most 16. Must match the server.
reality-fingerprintchrome only; default chrome.
udp-forwardMust be false or omitted; TCP only.
[l4proxies]
vless-1=type:vless,server:proxy.example.com,port:443,user-id:00010203-0405-0607-0809-0a0b0c0d0e0f,transport-type:tcp,transport-security:reality,flow:xtls-rprx-vision,encryption:none,sni:cover.example.com,reality-public-key:E59WjnvZcQMu7tR7_BgyhycuEdBS-CtKxfImRCdAvFM,reality-short-id:0123456789abcdef,reality-fingerprint:chrome,udp-forward:false

Trojan: TCP or WebSocket + TLS (Pro)

TLS is required. UDP, gRPC, mux, and early data are unsupported. Keep certificate verification enabled for normal use.

KeyMeaning
passwordRequired server password.
transport-typetcp (default) or ws.
sniTLS server name; defaults to server. Must match the certificate.
skip-cert-checkDefaults to false. true disables server certificate verification.
alpnComma-separated TLS ALPN, quoted as one value. WebSocket requires http/1.1.
ws-pathWebSocket path beginning with /; used with ws.
ws-hostOptional WebSocket HTTP Host, independent of TLS SNI.
tls-enabledMust be true or omitted.
udp-forwardMust be false or omitted; TCP only.
[l4proxies]
trojan-1=type:trojan,server:trojan.example.com,port:443,password:"replace-with-password",sni:trojan.example.com,skip-cert-check:false
trojan-ws=type:trojan,server:trojan.example.com,port:443,password:"replace-with-password",transport-type:ws,ws-path:/proxy,ws-host:trojan.example.com,sni:trojan.example.com,alpn:"http/1.1",skip-cert-check:false

Paste a supported vless://, trojan://, vmess://, anytls://, or ss:// link, scan a QR code, or choose a QR image. Review the imported draft and save. Importing fills settings; it does not connect or verify the server. Unsupported options produce errors instead of being silently discarded.

Read this page as Markdown