設定範例
config.yaml YAML
proxies: - name: "ss1" type: ss server: server port: 443 cipher: aes-128-gcm password: "password" udp: true udp-over-tcp: false plugin: obfs plugin-opts: mode: tls
基礎欄位
password必須連線密碼;SS2022 系列加密方式下這裡是 EIH key。
cipher必須加密方式,常用的有 aes-128-gcm/aes-256-gcm/chacha20-ietf-poly1305/xchacha20-ietf-poly1305,以及更新的 SS2022 系列 2022-blake3-aes-128-gcm/2022-blake3-aes-256-gcm/2022-blake3-chacha20-poly1305。舊式的 aes-*-ctr/aes-*-cfb 系列也支援,但安全性和效能都不如 AEAD 系列,不建議新建節點使用。
udp-over-tcp / udp-over-tcp-version可選把 UDP 流量偽裝成 TCP 流量轉發,某些只放行 TCP 的網路環境下可以用這個繞過限制。
plugin 插件
plugin 欄位支援 obfs/v2ray-plugin/gost-plugin/shadow-tls/restls/kcptun,每種插件配套自己的 plugin-opts。
obfs(simple-obfs)
YAML obfs
plugin: obfs plugin-opts: mode: tls # 或 http host: bing.com
把流量偽裝成 TLS 或 HTTP 握手的樣子,是最簡單的一種混淆方式,抗深度封包檢測能力有限。
shadow-tls
YAML shadow-tls
plugin: shadow-tls client-fingerprint: chrome plugin-opts: host: "cloud.tencent.com" password: "shadow_tls_password" version: 3 # 支援 1/2/3
把 SS 流量套一層真實的 TLS 握手(host 指向一個真實存在的網站),偽裝效果比簡單 obfs 更逼真,是目前抗封鎖能力較強的方案之一。
restls
YAML restls
plugin: restls client-fingerprint: chrome # chrome/ios/firefox/safari 之一 plugin-opts: host: "www.microsoft.com" # 應為 TLS 1.3 伺服器 password: [YOUR_RESTLS_PASSWORD] version-hint: "tls13" restls-script: "300?100<1,400~100,350~100,600~100,300~200,300~100"
比 shadow-tls 更進一步,透過 restls-script 精細控制握手後的流量行為,隱藏「TLS in TLS」這類特徵。
v2ray-plugin
YAML v2ray-plugin
plugin: v2ray-plugin plugin-opts: mode: websocket # tls: true # host: bing.com # path: /path
把 SS 流量包裝成 WebSocket,可以套 CDN,相容性好;目前暫不支援 QUIC 模式。
還有 kcptun 插件,用來把流量轉成 KCP 協議提升弱網下的傳輸效率,欄位較多(key/crypt/mode/mtu 等),使用場景較少,這裡不展開。