Skip to content

SOCKS5 і SOCKS5 через TLS

Параметри, посилання та можливості SOCKS5 і SOCKS5 через TLS, які підтримує Potatso.

Updated Відкрити як Markdown

Сервер SOCKS5 відкриває з’єднання за вас і ретранслює UDP, з ім’ям користувача та паролем або без них (RFC 1928). SOCKS5 через TLS — це той самий сервер, до якого звертаються через TLS, тож з’єднання із сервером також зашифроване.

Potatso надсилає серверу назву сайту, який ви відвідуєте, а не його адресу, і сервер сам визначає адресу за назвою. Інші програми називають це socks5h або віддаленим DNS.

Сервер SOCKS5 можна додати вручну, через посилання socks5:// або імпортом:

  • підписки Clash чи Mihomo (type: socks5),
  • конфігурації Surge (socks5 і socks5-tls),
  • конфігурації Xray чи V2Ray (вихід socks, з TLS або без).

Щоб додати сервер SOCKS5 через TLS вручну, виберіть SOCKS5 і ввімкніть TLS.

Параметри

Параметр Опис
Сервер, порт Адреса й порт сервера. IPv6-адреса теж підходить.
Автентифікація Немає, або ім’я користувача та пароль.
Ім’я користувача, пароль Кожне до 255 байтів.
Ретрансляція UDP Типово ввімкнено. Див. UDP.
TLS Ввімкнено для SOCKS5 через TLS.
Пропустити перевірку сертифіката Лише SOCKS5 через TLS. Приймає будь-який сертифікат. Використовуйте лише для тестування.
Закріплення сертифіката Лише SOCKS5 через TLS, необов’язково. Відбиток SHA-256 сертифіката сервера у вигляді 64 шістнадцяткових цифр. Із закріпленням Potatso приймає закріплений сертифікат, зокрема самопідписаний, і більше нічого.

Якщо сервер вимагає ім’я користувача та пароль, а ви їх не задали, Potatso не під’єднується. Potatso не підтримує автентифікацію GSSAPI (Kerberos).

Сервер Clash чи Mihomo із порожнім username імпортується без автентифікації, як і в Clash.

Сертифікати

У SOCKS5 через TLS назва сервера в рукостисканні TLS завжди дорівнює адресі сервера, і сертифікат сервера має бути дійсним для неї. Якщо це не так, задайте закріплення сертифіката або ввімкніть Пропустити перевірку сертифіката. Іншу назву сервера задати не можна: Potatso не імпортує посилання, сервер Surge чи сервер Xray, що її мають. Clash і Mihomo не мають назви сервера для SOCKS5, тому Potatso ігнорує там sni, як і вони.

Potatso не підтримує:

  • власний сертифікат CA: натомість закріпіть сертифікат сервера,
  • клієнтський сертифікат TLS (certificate і private-key у Clash) або іншу назву для перевірки сертифіката (name-cert-verify): Potatso не імпортує сервер, якому вони потрібні,
  • список ALPN: Potatso імпортує сервер без нього.

UDP

UDP використовують QUIC, голосові й відеодзвінки та багато ігор. Коли ввімкнено Ретрансляція UDP, Potatso надсилає UDP через сервер (UDP ASSOCIATE) на адреси IPv4 та IPv6. Це працює і з сервером за NAT, який повідомляє свою адресу як 0.0.0.0: Potatso надсилає UDP на адресу, яку ви задали.

Вимкніть «Ретрансляція UDP», якщо ваш сервер не ретранслює UDP. Тоді:

  • За наявності правил Potatso пропускає правило, що спрямовує UDP на цей сервер, і вирішує наступне правило, що підійшло. UDP, якому не відповідає жодне інше правило, надсилається напряму.
  • У глобальному режимі UDP не працює, бо весь трафік має йти через сервер.

Що варто знати про UDP:

  • UDP ретранслюється через окремий порт UDP сервера, тож брандмауер сервера має пропускати UDP.
  • У SOCKS5 через TLS шифрується лише з’єднання із сервером. SOCKS5 надсилає UDP поза ним, тож ваш трафік UDP доходить до сервера без шифрування.
  • Для UDP Potatso сам визначає адресу сайту й надсилає серверу адресу.
  • Коли ви імпортуєте з Clash, Mihomo чи Surge, «Ретрансляція UDP» увімкнена, якщо сервер не задає udp: false (udp-relay=false у Surge). Clash залишає UDP вимкненим, коли udp відсутній, тож перевірте, чи ваш сервер ретранслює UDP.

Підтримка можливостей

Можливість Підтримується
CONNECT до цілей IPv4, IPv6 і доменів (RFC 1928) ✅
Віддалений DNS: доменні імена визначає сервер (socks5h) ✅ Для TCP
Без автентифікації ✅
Ім’я користувача та пароль (RFC 1929) ✅
GSSAPI (RFC 1961) ❌
UDP ASSOCIATE до цілей IPv4 та IPv6 ✅
UDP із сервером за NAT (адреса ретранслятора 0.0.0.0) ✅
Фрагментація UDP ❌ Фрагментовані датаграми відкидаються, що дозволяє RFC 1928
BIND (вхідні з’єднання, як-от FTP в активному режимі) ❌
SOCKS5 через TLS ✅ Із закріпленням сертифіката та пропуском перевірки сертифіката
Назва сервера TLS, відмінна від адреси сервера, ALPN, власний CA, клієнтський сертифікат ❌
UDP, зашифрований через TLS ❌ SOCKS5 надсилає UDP поза TLS
Адреса сервера IPv6 ✅
SOCKS4 і SOCKS4a ❌

Кожну підтримувану можливість перевірено на справжніх серверах SOCKS5: Xray, sing-box, Mihomo, 3proxy і microsocks. sing-box обслуговує SOCKS5 через TLS на вході mixed, а не на вході socks.

Посилання SOCKS5 містить цілий сервер в одному рядку:

socks5://user:password@host:port#name
socks5+tls://user:password@host:port?insecure=1#name
Частина Опис
схема socks5://, socks:// або socks5h:// для SOCKS5; socks5+tls:// чи socks+tls:// для SOCKS5 через TLS. Potatso завжди надсилає серверу доменні імена, тож socks5h:// працює так само, як socks5://.
user:password Необов’язково. Закодуйте відсотковим кодуванням :, @ та інші спеціальні символи в паролі, наприклад p%3Ass для p:ss. Ім’я користувача не може містити :.
host Адреса сервера. IPv6-адресу беріть у квадратні дужки, наприклад [2001:db8::1].
port Порт сервера.
insecure Лише SOCKS5 через TLS, необов’язково. 1 вмикає «Пропустити перевірку сертифіката». Potatso також читає allowInsecure і skip-cert-verify.
name Необов’язково. Назва сервера в Potatso.

Посилання не може містити закріплення сертифіката. Посилання з sni, відмінним від адреси сервера, не імпортується.

Potatso також імпортує дві інші форми:

socks://base64(user:password)@host:port#name
socks5://base64(user:password@host:port)#name

Перша — це спосіб, яким v2rayN поширює сервери SOCKS. Друга — старіша форма, де все між :// і # закодовано в Base64. Коли Potatso ділиться сервером SOCKS5 із паролем, він пропонує стандартне посилання та форму v2rayN.

Сервер без пароля:

socks5://proxy.example.com:1080#Open

Сервер з ім’ям користувача alice і паролем s3cret:

socks5://alice:s3cret@proxy.example.com:1080#Auth

Пароль p:ss wörd, закодований відсотковим кодуванням:

socks5://alice:p%3Ass%20w%C3%B6rd@proxy.example.com:1080#Encoded

Той самий сервер як посилання socks5h://:

socks5h://alice:s3cret@proxy.example.com:1080#Remote-DNS

Форма v2rayN, де alice:s3cret закодовано в Base64:

socks://YWxpY2U6czNjcmV0@proxy.example.com:1080#v2rayN

Старіша форма:

socks5://YWxpY2U6czNjcmV0QHByb3h5LmV4YW1wbGUuY29tOjEwODA#Legacy

Сервер з адресою IPv6:

socks5://[2001:db8::1]:1080#IPv6

Сервер SOCKS5 через TLS:

socks5+tls://alice:s3cret@proxy.example.com:443#TLS

Сервер SOCKS5 через TLS із самопідписаним сертифікатом:

socks+tls://proxy.example.com:443?insecure=1#Self-signed
Навігація

Type to search…

↑↓ navigate↵ selectEsc close