Un server SOCKS5 apre connessioni per te e inoltra UDP, con o senza nome utente e password (RFC 1928). SOCKS5 over TLS è lo stesso server raggiunto tramite TLS, quindi anche la connessione al server è cifrata.
Potatso invia al server il nome del sito che visiti, non il suo indirizzo, e il server cerca il nome. È ciò che altre app chiamano socks5h, o DNS remoto.
Puoi aggiungere un server SOCKS5 a mano, con un link socks5://, oppure importando:
- una sottoscrizione Clash o Mihomo (
type: socks5), - una configurazione Surge (
socks5esocks5-tls), - una configurazione Xray o V2Ray (uscita
socks, con o senza TLS).
Per aggiungere a mano un server SOCKS5 over TLS, scegli SOCKS5 e attiva TLS.
Impostazioni
| Impostazione | Descrizione |
|---|---|
| Server, porta | L'indirizzo e la porta del server. Funziona anche un indirizzo IPv6. |
| Autenticazione | Nessuna, oppure nome utente e password. |
| Nome utente, password | Ciascuno fino a 255 byte. |
| Relay UDP | Attivo per impostazione predefinita. Vedi UDP. |
| TLS | Attivo per SOCKS5 over TLS. |
| Salta verifica certificato | Solo SOCKS5 over TLS. Accetta qualsiasi certificato. Usalo solo per i test. |
| Pin certificato | Solo SOCKS5 over TLS, facoltativo. L'impronta SHA-256 del certificato del server, come 64 cifre esadecimali. Con un pin, Potatso accetta il certificato fissato, anche autofirmato, e nient'altro. |
Se il server richiede un nome utente e una password e non li hai impostati, Potatso non si connette. Potatso non supporta l'autenticazione GSSAPI (Kerberos).
Un server Clash o Mihomo con username vuoto viene importato senza autenticazione, come fa Clash.
Certificati
Con SOCKS5 over TLS, il nome del server nell'handshake TLS è sempre l'indirizzo del server, e il certificato del server deve essere valido per esso. Se non lo è, imposta un pin del certificato oppure attiva Salta verifica certificato. Non puoi impostare un nome di server diverso: Potatso non importa un link, un server Surge o un server Xray che ne abbia uno. Clash e Mihomo non hanno un nome di server per SOCKS5, quindi Potatso ignora lì un sni, come fanno loro.
Potatso non supporta:
- un certificato CA personalizzato: fissa invece il certificato del server,
- un certificato client TLS (
certificateeprivate-keydi Clash), o un nome diverso con cui controllare il certificato (name-cert-verify): Potatso non importa un server che ne richiede uno, - un elenco ALPN: Potatso importa il server senza di esso.
UDP
UDP è usato da QUIC, dalle chiamate vocali e video e da molti giochi. Con Relay UDP attivo, Potatso invia UDP tramite il server (UDP ASSOCIATE), verso indirizzi IPv4 e IPv6. Funziona anche con un server dietro NAT che indica il proprio indirizzo come 0.0.0.0: Potatso invia UDP all'indirizzo che hai impostato.
Disattiva Relay UDP se il tuo server non inoltra UDP. Allora:
- Con le regole, Potatso salta una regola che invia UDP a questo server, e decide la regola successiva che corrisponde. L'UDP che nessun'altra regola riconosce viene inviato direttamente.
- In modalità Globale, UDP non funziona, perché tutto il traffico deve passare dal server.
Alcune cose da sapere su UDP:
- UDP viene inoltrato con la porta UDP separata del server, quindi il firewall del server deve lasciar passare UDP.
- Con SOCKS5 over TLS, solo la connessione al server è cifrata. SOCKS5 invia UDP al di fuori di essa, quindi il tuo traffico UDP raggiunge il server non cifrato.
- Per UDP, Potatso cerca da sé l'indirizzo del sito e invia l'indirizzo al server.
- Quando importi da Clash, Mihomo o Surge, Relay UDP è attivo a meno che il server imposti
udp: false(udp-relay=falsein Surge). Clash lascia UDP disattivato quandoudpmanca, quindi controlla che il tuo server inoltri UDP.
Funzioni supportate
| Funzione | Supportata |
|---|---|
CONNECT verso destinazioni IPv4, IPv6 e di dominio (RFC 1928) |
✅ |
DNS remoto: nomi di dominio cercati dal server (socks5h) |
✅ Per TCP |
| Nessuna autenticazione | ✅ |
| Nome utente e password (RFC 1929) | ✅ |
| GSSAPI (RFC 1961) | ❌ |
UDP ASSOCIATE verso destinazioni IPv4 e IPv6 |
✅ |
UDP con un server dietro NAT (indirizzo di relay 0.0.0.0) |
✅ |
| Frammentazione UDP | ❌ I datagrammi frammentati vengono scartati, come consente l'RFC 1928 |
BIND (connessioni in ingresso, come FTP in modalità attiva) |
❌ |
| SOCKS5 over TLS | ✅ Con pin del certificato e salta verifica certificato |
| Nome del server TLS diverso dall'indirizzo del server, ALPN, CA personalizzata, certificato client | ❌ |
| UDP cifrato con TLS | ❌ SOCKS5 invia UDP al di fuori di TLS |
| Un indirizzo di server IPv6 | ✅ |
| SOCKS4 e SOCKS4a | ❌ |
Ogni funzione supportata è testata con server SOCKS5 reali: Xray, sing-box, Mihomo, 3proxy e microsocks. sing-box offre SOCKS5 over TLS sul suo inbound mixed, non sul suo inbound socks.
Link
Un link SOCKS5 contiene un intero server in una riga:
socks5://user:password@host:port#name
socks5+tls://user:password@host:port?insecure=1#name| Parte | Descrizione |
|---|---|
| schema | socks5://, socks:// o socks5h:// per SOCKS5; socks5+tls:// o socks+tls:// per SOCKS5 over TLS. Potatso invia sempre i nomi di dominio al server, quindi socks5h:// funziona come socks5://. |
user:password |
Facoltativo. Codifica con percent-encoding :, @ e altri caratteri speciali nella password, ad esempio p%3Ass per p:ss. Il nome utente non può contenere :. |
host |
Indirizzo del server. Metti un indirizzo IPv6 tra parentesi quadre, come [2001:db8::1]. |
port |
Porta del server. |
insecure |
Solo SOCKS5 over TLS, facoltativo. 1 attiva Salta verifica certificato. Potatso legge anche allowInsecure e skip-cert-verify. |
name |
Facoltativo. Il nome del server in Potatso. |
Un link non può contenere un pin del certificato. Un link con un sni diverso dall'indirizzo del server non viene importato.
Potatso importa anche altre due forme:
socks://base64(user:password)@host:port#name
socks5://base64(user:password@host:port)#nameLa prima è il modo in cui v2rayN condivide i server SOCKS. La seconda è la vecchia forma, in cui tutto ciò che sta tra :// e # è codificato in Base64. Quando Potatso condivide un server SOCKS5 con una password, offre il link standard e la forma v2rayN.
Esempi
Un server senza password:
socks5://proxy.example.com:1080#OpenUn server con il nome utente alice e la password s3cret:
socks5://alice:s3cret@proxy.example.com:1080#AuthLa password p:ss wörd, con percent-encoding:
socks5://alice:p%3Ass%20w%C3%B6rd@proxy.example.com:1080#EncodedLo stesso server come link socks5h://:
socks5h://alice:s3cret@proxy.example.com:1080#Remote-DNSLa forma v2rayN, con alice:s3cret codificato in Base64:
socks://YWxpY2U6czNjcmV0@proxy.example.com:1080#v2rayNLa vecchia forma:
socks5://YWxpY2U6czNjcmV0QHByb3h5LmV4YW1wbGUuY29tOjEwODA#LegacyUn server con un indirizzo IPv6:
socks5://[2001:db8::1]:1080#IPv6Un server SOCKS5 over TLS:
socks5+tls://alice:s3cret@proxy.example.com:443#TLSUn server SOCKS5 over TLS con un certificato autofirmato:
socks+tls://proxy.example.com:443?insecure=1#Self-signed