Skip to content

ShadowsocksR

Potatso が対応する ShadowsocksR の暗号方式、プロトコル、難読化方式。

Updated Markdown で表示

ShadowsocksR(SSR)サーバは、暗号方式、プロトコル、obfs(難読化)方式の 3 つの設定で表されます。Potatso は、この 3 つすべてに対応している場合にのみ、サーバに接続します。プロバイダが示す設定、またはサーバの ssr:// リンクを見ながら、以下の表でサーバの設定を確認してください。

SSR サーバは、手動、ssr:// リンク、または Clash か Mihomo のサブスクリプションで追加できます。Potatso は、_compatible 形式を含め、プロバイダが指定するプロトコルと obfs をそのまま保持します。

暗号方式

暗号方式 対応
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 暗号は、ShadowsocksR ではなく Shadowsocks の暗号方式です。プロバイダが 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 として読み込まれます) —

マルチユーザサーバは、1 つのポートを複数のユーザで共有します。このようなサーバでは、プロトコルパラメータ(protocol-param、ssr:// リンクでは protoparam)に、プロバイダから受け取ったユーザ ID とキーを使って uid:key を設定します。

現在の ShadowsocksR サーバは、auth_sha1 と auth_sha1_v2 を提供しなくなっています。Potatso はこれらでも接続しますが、実サーバでテストされていないため、プロバイダが別のプロトコルを提供している場合は、そちらを優先してください。

以前のバージョンの Potatso は verify_simple、verify_sha1、auth_simple を一覧に載せていましたが、実際には常に origin で接続していました。Potatso は現在もこれらを origin として読み込み、その際に警告を表示します。

Obfs

Obfs 対応
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 は、その名前が示す obfs 方式を使うので、プロバイダが示す名前のままで構いません。

HTTP 方式では、obfs パラメータ(obfs-param、ssr:// リンクでは obfsparam)が Host ヘッダーを設定します。単一のホスト、カンマ区切りのホストのリスト、またはカスタムヘッダーのブロックを指定できます。空の場合、Potatso はサーバのアドレスを使います。TLS 方式では、TLS ハンドシェイクで送信されるサーバ名を設定します。

UDP

UDP は、対応するすべてのプロトコルで動作し、SSR サーバではデフォルトでオンです。サーバが UDP を中継しない場合は、サーバの設定でオフにしてください。

ssr:// リンクは、1 行にサーバ全体の情報をまとめたものです。ssr:// 以降のすべてが Base64 でエンコードされます。

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

/? より前の部分は、コロンで区切られた 6 つのフィールドです。

フィールド 説明
host サーバのアドレス。IPv6 アドレスは [2001:db8::1] のように角括弧で囲みます。
port サーバのポート。
protocol 上記のプロトコルのいずれか。空の場合、Potatso は origin を使います。
cipher 上記の暗号方式のいずれか。必須。
obfs 上記の obfs 方式のいずれか。空の場合、Potatso は plain を使います。
password パスワード(Base64 エンコード)。

/? より後ろの部分は任意です。各値は Base64 でエンコードされます。

パラメータ 説明
obfsparam obfs パラメータ。http_simple の Host など。
protoparam プロトコルパラメータ。マルチユーザサーバの uid:key など。
remarks Potatso でのサーバ名。

Potatso は、group、udpport、uot などのほかのパラメータや、リンク末尾の #name を無視します。UDP はリンクには含まれません。デフォルトでオンで、読み込み後にオフにできます。

Potatso は、標準と URL セーフの Base64 を、= のパディングの有無を問わず受け付けます。名前は大文字と小文字を区別しないため、AUTH_CHAIN_A は auth_chain_a と同じように動作します。Potatso がサーバを共有するときは、パディングなしの URL セーフな Base64 で書き出します。

各例では、最初にデコードしたテキストを、続けて読み込むリンクを示しています。すべての例でパスワードは secret です。

プロトコルプラグインも難読化もない、基本的なサーバ:

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

サーバ名に cdn.example.com を使う、TLS 難読化:

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