Skip to content

ShadowsocksR

Potatso 支援的 ShadowsocksR 加密方式、協定與混淆方式。

Updated 以 Markdown 檢視

ShadowsocksR(SSR)伺服器由三項設定描述:加密方式、協定和混淆(obfs)方式。Potatso 只有在三者都支援時才會連線到伺服器。請使用下方表格,對照服務商提供或 ssr:// 連結中顯示的伺服器設定。

你可以手動加入 SSR 伺服器、使用 ssr:// 連結,或從 Clash 或 Mihomo 訂閱匯入。Potatso 會保留服務商指定的協定與混淆,包含 _compatible 形式。

加密方式

加密方式 支援
none ✅
aes-128-ctr、aes-192-ctr、aes-256-ctr ✅
aes-128-cfb、aes-192-cfb、aes-256-cfb ✅
camellia-128-cfb、camellia-192-cfb、camellia-256-cfb ✅
chacha20、chacha20-ietf ✅
salsa20 ✅
bf-cfb ✅
rc4-md5 ✅
cast5-cfb、des-cfb、idea-cfb、rc2-cfb、seed-cfb ✅
rc4-md5-6、table ✅
xchacha20、xsalsa20 ❌

aes-256-gcm 之類的 AEAD 加密方式屬於 Shadowsocks,而不是 ShadowsocksR。如果服務商為 SSR 伺服器列出了這類加密方式,請確認該伺服器實際上是不是 Shadowsocks 伺服器。

協定

協定 支援 多使用者
origin ✅ —
verify_deflate ✅ —
auth_sha1、auth_sha1_v2 已棄用(未以真實伺服器測試) —
auth_sha1_v4 ✅ —
auth_sha1_v4_compatible ✅ —
auth_aes128_md5 ✅ ✅
auth_aes128_sha1 ✅ ✅
auth_chain_a ✅ ✅
auth_chain_b ✅ ✅
verify_simple、verify_sha1、auth_simple 已棄用(以 origin 匯入) —

多使用者伺服器讓多位使用者共用同一個連接埠。對於這類伺服器,請把協定參數(protocol-param,在 ssr:// 連結中為 protoparam)設為 uid:key,使用服務商提供的使用者 ID 與金鑰。

目前的 ShadowsocksR 伺服器已不再提供 auth_sha1 和 auth_sha1_v2。Potatso 仍可使用它們連線,但尚未以真實伺服器測試,因此如果服務商提供其他協定,請優先使用其他協定。

舊版 Potatso 雖然列出 verify_simple、verify_sha1 和 auth_simple,但實際上一律以 origin 連線。Potatso 現在仍會把它們當作 origin 匯入,並在匯入時顯示警告。

混淆

混淆 支援
plain ✅
http_simple、http_simple_compatible ✅
http_post、http_post_compatible ✅
tls1.2_ticket_auth、tls1.2_ticket_auth_compatible ✅
tls1.2_ticket_fastauth、tls1.2_ticket_fastauth_compatible ✅
random_head、random_head_compatible ✅ 已棄用

名稱帶有 _compatible 表示伺服器也接受不使用混淆的用戶端。Potatso 會使用它所指定的混淆方式,因此你可以沿用服務商提供的名稱。

對於 HTTP 方式,混淆參數(obfs-param,在 ssr:// 連結中為 obfsparam)用來設定 Host 標頭。它可以是單一主機、以逗號分隔的主機清單,或一組自訂標頭。留空時,Potatso 會使用伺服器的位址。對於 TLS 方式,它用來設定 TLS 交握中傳送的伺服器名稱。

UDP

UDP 適用於每一種支援的協定,且 SSR 伺服器預設為開啟。如果你的伺服器不轉送 UDP,請在伺服器的設定中將它關閉。

ssr:// 連結用一行就包含整台伺服器。ssr:// 之後的所有內容都以 Base64 編碼:

ssr://base64(host:port:protocol:cipher:obfs:base64(password)/?obfsparam=…&protoparam=…&remarks=…)

/? 之前的部分是以冒號分隔的六個欄位:

欄位 說明
host 伺服器位址。IPv6 位址請放在方括號中,例如 [2001:db8::1]。
port 伺服器連接埠。
protocol 上方協定之一。若為空,Potatso 會使用 origin。
cipher 上方加密方式之一。必填。
obfs 上方混淆方式之一。若為空,Potatso 會使用 plain。
password 密碼,以 Base64 編碼。

/? 之後的部分為選填。每個值都以 Base64 編碼:

參數 說明
obfsparam 混淆參數,例如 http_simple 的 Host。
protoparam 協定參數,例如多使用者伺服器的 uid:key。
remarks 伺服器在 Potatso 中的名稱。

Potatso 會忽略其他參數,例如 group、udpport 和 uot,以及連結結尾的任何 #name。UDP 不屬於連結的一部分:它預設為開啟,你可以在匯入後將它關閉。

Potatso 接受標準與 URL-safe 的 Base64,有無 = 補位皆可。名稱不分大小寫,因此 AUTH_CHAIN_A 與 auth_chain_a 的作用相同。Potatso 分享伺服器時,會寫出不帶補位的 URL-safe Base64。

每個範例都先顯示解碼後的文字,再顯示要匯入的連結。每個範例中的密碼都是 secret。

沒有協定外掛程式也沒有混淆的基本伺服器:

ssr.example.com:8388:origin:aes-256-cfb:plain:c2VjcmV0/?remarks=QmFzaWM
ssr://c3NyLmV4YW1wbGUuY29tOjgzODg6b3JpZ2luOmFlcy0yNTYtY2ZiOnBsYWluOmMyVmpjbVYwLz9yZW1hcmtzPVFtRnphV00

TLS 混淆,以 cdn.example.com 作為伺服器名稱:

ssr.example.com:443:auth_aes128_md5:chacha20-ietf:tls1.2_ticket_auth:c2VjcmV0/?obfsparam=Y2RuLmV4YW1wbGUuY29t&remarks=VExTIG9iZnM
ssr://c3NyLmV4YW1wbGUuY29tOjQ0MzphdXRoX2FlczEyOF9tZDU6Y2hhY2hhMjAtaWV0Zjp0bHMxLjJfdGlja2V0X2F1dGg6YzJWamNtVjAvP29iZnNwYXJhbT1ZMlJ1TG1WNFlXMXdiR1V1WTI5dCZyZW1hcmtzPVZFeFRJRzlpWm5N

多使用者伺服器:使用者 2173、金鑰 userkey、none 加密方式,以及 HTTP 混淆:

ssr.example.com:8080:auth_chain_a:none:http_simple:c2VjcmV0/?obfsparam=Y2RuLmV4YW1wbGUuY29t&protoparam=MjE3Mzp1c2Vya2V5&remarks=TXVsdGktdXNlcg
ssr://c3NyLmV4YW1wbGUuY29tOjgwODA6YXV0aF9jaGFpbl9hOm5vbmU6aHR0cF9zaW1wbGU6YzJWamNtVjAvP29iZnNwYXJhbT1ZMlJ1TG1WNFlXMXdiR1V1WTI5dCZwcm90b3BhcmFtPU1qRTNNenAxYzJWeWEyVjUmcmVtYXJrcz1UWFZzZEdrdGRYTmxjZw

使用 IPv6 位址的伺服器:

[2001:db8::1]:8388:auth_sha1_v4:rc4-md5:http_post:c2VjcmV0/?remarks=SVB2Ng
ssr://WzIwMDE6ZGI4OjoxXTo4Mzg4OmF1dGhfc2hhMV92NDpyYzQtbWQ1Omh0dHBfcG9zdDpjMlZqY21WMC8_cmVtYXJrcz1TVkIyTmc
導覽

Type to search…

↑↓ navigate↵ selectEsc close