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:// リンク
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=QmFzaWMssr://c3NyLmV4YW1wbGUuY29tOjgzODg6b3JpZ2luOmFlcy0yNTYtY2ZiOnBsYWluOmMyVmpjbVYwLz9yZW1hcmtzPVFtRnphV00サーバ名に cdn.example.com を使う、TLS 難読化:
ssr.example.com:443:auth_aes128_md5:chacha20-ietf:tls1.2_ticket_auth:c2VjcmV0/?obfsparam=Y2RuLmV4YW1wbGUuY29t&remarks=VExTIG9iZnMssr://c3NyLmV4YW1wbGUuY29tOjQ0MzphdXRoX2FlczEyOF9tZDU6Y2hhY2hhMjAtaWV0Zjp0bHMxLjJfdGlja2V0X2F1dGg6YzJWamNtVjAvP29iZnNwYXJhbT1ZMlJ1TG1WNFlXMXdiR1V1WTI5dCZyZW1hcmtzPVZFeFRJRzlpWm5Nマルチユーザサーバ:ユーザ 2173、キー userkey、none 暗号方式、HTTP 難読化:
ssr.example.com:8080:auth_chain_a:none:http_simple:c2VjcmV0/?obfsparam=Y2RuLmV4YW1wbGUuY29t&protoparam=MjE3Mzp1c2Vya2V5&remarks=TXVsdGktdXNlcgssr://c3NyLmV4YW1wbGUuY29tOjgwODA6YXV0aF9jaGFpbl9hOm5vbmU6aHR0cF9zaW1wbGU6YzJWamNtVjAvP29iZnNwYXJhbT1ZMlJ1TG1WNFlXMXdiR1V1WTI5dCZwcm90b3BhcmFtPU1qRTNNenAxYzJWeWEyVjUmcmVtYXJrcz1UWFZzZEdrdGRYTmxjZwIPv6 アドレスのサーバ:
[2001:db8::1]:8388:auth_sha1_v4:rc4-md5:http_post:c2VjcmV0/?remarks=SVB2Ngssr://WzIwMDE6ZGI4OjoxXTo4Mzg4OmF1dGhfc2hhMV92NDpyYzQtbWQ1Omh0dHBfcG9zdDpjMlZqY21WMC8_cmVtYXJrcz1TVkIyTmc