Чтобы пользоваться AnyTLS на iPhone или iPad, нужны клиент, который понимает этот протокол, ссылка anytls:// или пароль и настройки TLS сервера — и несколько минут. Эта инструкция проведет вас через всю настройку в Potatso, бесплатном прокси-клиенте для iOS, включая настройки, характерные для AnyTLS: имя сервера, закрепление сертификата, отпечатки и UDP.

Только знакомитесь с протоколом? Сначала прочитайте Что такое AnyTLS?

Что понадобится

  • iPhone или iPad с iOS 17 или новее.
  • Сервер AnyTLS — от провайдера или ваш собственный на anytls-go, sing-box или mihomo. У вас будет одно из следующего:
    • ссылка anytls://, например anytls://secret@anytls.example.com:443/?sni=anytls.example.com#Tokyo,
    • QR-код с этой ссылкой,
    • URL подписки Clash / Mihomo или конфигурация Surge с серверами AnyTLS, или
    • сами настройки: адрес, порт, пароль и имя сервера TLS.

Конфигурация sing-box? Potatso пока не импортирует серверы AnyTLS из конфигурации sing-box. Попросите или сгенерируйте ссылку anytls:// для сервера.

Шаг 1. Установите Potatso

Скачайте Potatso из App Store и откройте приложение. Нажмите Начать, введите название профиля, например «Личный», и нажмите Продолжить. В профиле хранятся ваши серверы, правила и настройки DNS.

Шаг 2. Добавьте сервер AnyTLS

На шаге Добавьте свои серверы есть четыре способа. Выберите тот, что подходит к тому, что у вас есть.

Из ссылки anytls:// или URL подписки

  1. Скопируйте ссылку anytls:// или URL подписки.
  2. В Potatso нажмите Вставьте ссылку, затем Вставить.

Potatso прочитает пароль, адрес и порт, а также любые из этих параметров в ссылке:

Параметр Что задает
sni Имя сервера TLS. Без него Potatso использует адрес сервера.
insecure=1 Отключает проверку сертификата.
hpkp Закрепляет сертификат сервера по его SHA-256.
fp Отпечаток браузера, например chrome.
alpn Список ALPN, например h2,http/1.1.

Подписка продолжает обновляться после импорта. Весь процесс описан в статье как импортировать подписку Clash на iPhone.

Из QR-кода

Нажмите Сканировать QR-код и наведите камеру на код. Если QR-код сохранен как снимок экрана в «Фото», нажмите кнопку с фото в углу сканера и выберите изображение.

Вручную

  1. Нажмите Ввести сервер вручную.
  2. Введите Название и выберите AnyTLS в поле Протокол.
  3. Заполните Адрес и Порт (обычно 443).
  4. Введите Пароль точно так, как он задан на сервере.
  5. Нажмите Настройки TLS и заполните то, что нужно вашему серверу:
    • Имя сервера: домен из сертификата сервера. Оставьте пустым, если вы и так подключаетесь по этому домену.
    • Закрепление сертификата (SHA-256): SHA-256 сертификата, если он самоподписанный.
    • Отпечаток клиента: браузер, который нужно имитировать, например chrome.
    • ALPN: только если этого требует сервер.
    • Не проверять сертификат: оставьте выключенным, если вы не проводите тесты.
  6. Для сервера sing-box с REALITY заполните Публичный ключ Reality и Short ID Reality, укажите в Имя сервера сайт, у которого сервер заимствует сертификат, и выберите отпечаток.
  7. Включите Ретрансляция UDP, если сервер передает UDP.
  8. Нажмите Сохранить (галочка).

Когда сервер добавлен, шаг меняется на Серверы добавлены. Нажмите Продолжить.

Закрепляйте, а не отключайте проверку. Многие самостоятельно развернутые серверы AnyTLS используют самоподписанный сертификат. Без проверки сертификата любой посредник может читать ваш трафик. Закрепленный сертификат означает доверие только этому одному сертификату.

Шаг 3. Выберите маршрут

Пока вы выбираете, Potatso проверяет задержку каждого сервера:

  • Глобальный — весь трафик идет через выбранный сервер. С одним сервером это самый простой вариант.
  • По правилам — правила вашей конфигурации решают, что идет через прокси, а что подключается напрямую. Этот режим предлагается, если импорт содержал правила, как в большинстве подписок Clash.

Выберите сервер AnyTLS и нажмите кнопку внизу, например Использовать Tokyo. Если у сервера здесь не отображается задержка, проверьте его, прежде чем продолжать: см. Если не подключается.

Выбор сервера для выхода: у каждого сервера указаны протокол и задержка

Шаг 4. Разрешите VPN и подключитесь

Potatso направляет трафик через прокси с помощью конфигурации VPN на устройстве. iOS один раз попросит ее одобрить.

  1. Нажмите Добавить конфигурацию VPN, а затем Разрешить, когда iOS спросит.
  2. На экране Главная включите переключатель на карточке состояния.

Состояние сменится на Подключение…, затем на Подключено, а в строке состояния появится значок VPN. Откройте любой сайт и проверьте, что он загружается.

Экран «Главная» в Potatso при активном подключении

Если не подключается

Проблемы с AnyTLS почти всегда связаны с паролем или настройками TLS.

Неверный пароль

На неверный пароль AnyTLS не выдает сообщения об ошибке — сервер просто закрывает соединение. В Potatso это выглядит как сервер без задержки или сайт, который никогда не загружается. Скопируйте пароль заново, символ в символ. В ссылке anytls:// специальные символы пароля должны быть в процентном кодировании, поэтому ссылка, отредактированная вручную, может его испортить.

Ошибки сертификата

  • Имя сервера не совпадает. Если вы подключаетесь по IP-адресу или по домену, которого нет в сертификате, укажите в Имя сервера (sni) домен, для которого выпущен сертификат.
  • Самоподписанный сертификат. Проверка не пройдет, пока вы не закрепите сертификат. Спросите SHA-256 у провайдера или задайте hpkp в ссылке.
  • Неверное закрепление. После того как сервер обновит сертификат, старое значение перестает совпадать. Обновите его.
  • Клиентские сертификаты. Potatso не поддерживает для AnyTLS клиентские TLS-сертификаты и собственный корневой сертификат (CA), поэтому не импортирует серверы, которым они нужны.

REALITY не подключается

Сверьте публичный ключ и short ID с сервером и убедитесь, что имя сервера — это заимствованный сайт, а не адрес вашего сервера. REALITY нужен отпечаток браузера, например chrome.

Не работает UDP

Голосовым звонкам, некоторым играм и QUIC нужен UDP. Ретрансляция UDP для серверов AnyTLS по умолчанию выключена, как и в Clash, поэтому Potatso не отправляет UDP через сервер. Включите ее в настройках сервера, если сервер передает UDP. В подписке Clash она включается параметром udp: true.

Предупреждение при импорте из Surge

Параметр Surge reuse=false не применяется. Potatso всегда повторно использует соединения, как того требует спецификация AnyTLS, и показывает предупреждение при импорте. Сервер при этом работает.

Если ничего не помогло, запустите пошаговую проверку в разделе Настройки → Устранение неполадок — она описана на странице VPN не подключается. Все поддерживаемые настройки перечислены в справке по AnyTLS.

Что дальше

Частые вопросы

Можно ли пользоваться AnyTLS на iPhone?
Да, с клиентом, который поддерживает этот протокол. Potatso — бесплатный прокси-клиент для iPhone и iPad — подключается к серверам AnyTLS из ссылки anytls://, подписки Clash или Mihomo, конфигурации Surge или настроек, введенных вручную.
Почему мой сервер AnyTLS никогда не подключается?
Чаще всего причина в неверном пароле: сервер просто закрывает соединение, и это выглядит как тайм-аут или неудачная проверка задержки. Затем проверьте имя сервера (SNI) и настройки сертификата — они должны соответствовать TLS-сертификату сервера.
Включать ли режим insecure для самоподписанного сертификата?
Лучше не надо. Без проверки сертификата любой, кто находится между вами и сервером, может читать ваш трафик. Вместо этого закрепите сертификат сервера: введите его SHA-256 в поле закрепления сертификата — в ссылке anytls:// это параметр hpkp.
Почему через мой сервер AnyTLS не работают голосовые звонки?
Звонки и многие игры используют UDP, а «Ретрансляция UDP» для серверов AnyTLS в Potatso, как и в Clash, по умолчанию выключена. Включите «Ретрансляция UDP» в настройках сервера, если сервер передает UDP.

Другие языки: English · 简体中文 · 繁體中文 · 日本語