Un server ShadowsocksR (SSR) è descritto da tre impostazioni: una cifratura, un protocollo e un metodo obfs (offuscamento). Potatso si connette a un server solo quando supporta tutte e tre. Usa le tabelle qui sotto per controllare le impostazioni del tuo server, come le indica il tuo provider o come compaiono nel suo link ssr://.
Puoi aggiungere un server SSR a mano, con un link ssr://, o da una sottoscrizione Clash o Mihomo. Potatso mantiene il protocollo e l'obfs indicati dal tuo provider, comprese le forme _compatible.
Cifrature
| Cifratura | Supportata |
|---|---|
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 |
❌ |
Le cifrature AEAD come aes-256-gcm sono cifrature Shadowsocks, non ShadowsocksR. Se il tuo provider ne indica una per un server SSR, controlla se il server è in realtà un server Shadowsocks.
Protocolli
| Protocollo | Supportato | Più utenti |
|---|---|---|
origin |
✅ | — |
verify_deflate |
✅ | — |
auth_sha1, auth_sha1_v2 |
Obsoleti (non testati con un server reale) | — |
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 |
Obsoleti (importati come origin) |
— |
I server con più utenti condividono una porta tra più utenti. Per questi, imposta il parametro del protocollo (protocol-param, oppure protoparam in un link ssr://) su uid:key, usando l'ID utente e la chiave forniti dal tuo provider.
I server ShadowsocksR attuali non offrono più auth_sha1 e auth_sha1_v2. Potatso si connette ancora con essi, ma non sono stati testati con un server reale, quindi preferisci un altro protocollo se il tuo provider ne offre uno.
Le versioni precedenti di Potatso elencavano verify_simple, verify_sha1 e auth_simple ma si connettevano sempre con origin. Potatso li importa ancora come origin e mostra un avviso quando lo fa.
Obfs
| Obfs | Supportato |
|---|---|
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 |
✅ Obsoleto |
Un nome _compatible significa che il server accetta anche client che non usano l'offuscamento. Potatso usa il metodo obfs che il nome indica, quindi puoi mantenere il nome fornito dal tuo provider.
Per i metodi HTTP, il parametro obfs (obfs-param, oppure obfsparam in un link ssr://) imposta l'intestazione Host. Può essere un singolo host, un elenco di host separati da virgole o un blocco di intestazioni personalizzate. Se è vuoto, Potatso usa l'indirizzo del server. Per i metodi TLS, imposta il nome del server inviato nell'handshake TLS.
UDP
UDP funziona con ogni protocollo supportato ed è attivo per impostazione predefinita per i server SSR. Disattivalo nelle impostazioni del server se il tuo server non inoltra UDP.
Link ssr://
Un link ssr:// contiene un intero server in una riga. Tutto ciò che segue ssr:// è codificato in Base64:
ssr://base64(host:port:protocol:cipher:obfs:base64(password)/?obfsparam=…&protoparam=…&remarks=…)La parte prima di /? è composta da sei campi separati da due punti:
| Campo | Descrizione |
|---|---|
host |
Indirizzo del server. Metti un indirizzo IPv6 tra parentesi quadre, come [2001:db8::1]. |
port |
Porta del server. |
protocol |
Uno dei protocolli qui sopra. Se è vuoto, Potatso usa origin. |
cipher |
Una delle cifrature qui sopra. Obbligatoria. |
obfs |
Uno dei metodi obfs qui sopra. Se è vuoto, Potatso usa plain. |
password |
La password, codificata in Base64. |
La parte dopo /? è facoltativa. Ogni valore è codificato in Base64:
| Parametro | Descrizione |
|---|---|
obfsparam |
Il parametro obfs, come l'Host per http_simple. |
protoparam |
Il parametro del protocollo, come uid:key per un server con più utenti. |
remarks |
Il nome del server in Potatso. |
Potatso ignora gli altri parametri, come group, udpport e uot, e qualsiasi #name alla fine del link. UDP non fa parte del link: è attivo per impostazione predefinita e puoi disattivarlo dopo l'importazione.
Potatso accetta Base64 standard e URL-safe, con o senza il padding =. I nomi non distinguono maiuscole e minuscole, quindi AUTH_CHAIN_A funziona come auth_chain_a. Quando Potatso condivide un server, scrive Base64 URL-safe senza padding.
Esempi
Ogni esempio mostra prima il testo decodificato, poi il link da importare. La password in ogni esempio è secret.
Un server semplice senza plugin di protocollo e senza offuscamento:
ssr.example.com:8388:origin:aes-256-cfb:plain:c2VjcmV0/?remarks=QmFzaWMssr://c3NyLmV4YW1wbGUuY29tOjgzODg6b3JpZ2luOmFlcy0yNTYtY2ZiOnBsYWluOmMyVmpjbVYwLz9yZW1hcmtzPVFtRnphV00Offuscamento TLS, con cdn.example.com come nome del server:
ssr.example.com:443:auth_aes128_md5:chacha20-ietf:tls1.2_ticket_auth:c2VjcmV0/?obfsparam=Y2RuLmV4YW1wbGUuY29t&remarks=VExTIG9iZnMssr://c3NyLmV4YW1wbGUuY29tOjQ0MzphdXRoX2FlczEyOF9tZDU6Y2hhY2hhMjAtaWV0Zjp0bHMxLjJfdGlja2V0X2F1dGg6YzJWamNtVjAvP29iZnNwYXJhbT1ZMlJ1TG1WNFlXMXdiR1V1WTI5dCZyZW1hcmtzPVZFeFRJRzlpWm5NUn server con più utenti: utente 2173 con chiave userkey, cifratura none e offuscamento HTTP:
ssr.example.com:8080:auth_chain_a:none:http_simple:c2VjcmV0/?obfsparam=Y2RuLmV4YW1wbGUuY29t&protoparam=MjE3Mzp1c2Vya2V5&remarks=TXVsdGktdXNlcgssr://c3NyLmV4YW1wbGUuY29tOjgwODA6YXV0aF9jaGFpbl9hOm5vbmU6aHR0cF9zaW1wbGU6YzJWamNtVjAvP29iZnNwYXJhbT1ZMlJ1TG1WNFlXMXdiR1V1WTI5dCZwcm90b3BhcmFtPU1qRTNNenAxYzJWeWEyVjUmcmVtYXJrcz1UWFZzZEdrdGRYTmxjZwUn server con un indirizzo IPv6:
[2001:db8::1]:8388:auth_sha1_v4:rc4-md5:http_post:c2VjcmV0/?remarks=SVB2Ngssr://WzIwMDE6ZGI4OjoxXTo4Mzg4OmF1dGhfc2hhMV92NDpyYzQtbWQ1Omh0dHBfcG9zdDpjMlZqY21WMC8_cmVtYXJrcz1TVkIyTmc