Что такое Hysteria и зачем он нужен
Hysteria — это прокси-протокол, предназначенный для быстрой и устойчивой передачи данных в сетях с нестабильным качеством канала. В отличие от классических VPN-решений, которые работают поверх TCP, Hysteria использует UDP и модифицированный протокол QUIC, что позволяет ему лучше переносить потери пакетов, высокие задержки и перегрузки.
Протокол часто применяется для обхода блокировок, но его главная ценность — не в маскировке, а в способности поддерживать высокую скорость даже на плохих маршрутах. Это особенно актуально для мобильного интернета, слабого Wi-Fi, перегруженных провайдеров и длинных международных соединений.
Hysteria не является готовым VPN-сервисом. Это техническая основа, которая требует собственного сервера или подписки от провайдера, а также совместимого клиента. Пользователь получает профиль с параметрами подключения и импортирует его в приложение.
Как работает Hysteria: QUIC, UDP и TLS 1.3
В основе Hysteria лежит протокол QUIC, разработанный Google и стандартизованный IETF (RFC 9000). QUIC работает поверх UDP и включает встроенную поддержку TLS 1.3, что обеспечивает шифрование и защиту от подмены данных.
Hysteria использует QUIC для создания туннеля между клиентом и сервером. Трафик внутри туннеля инкапсулируется в UDP-пакеты, которые выглядят как обычный HTTP/3-трафик. Это позволяет протоколу маскироваться под стандартные веб-запросы, что затрудняет его обнаружение и блокировку.
Однако важно понимать: если сеть блокирует или ограничивает UDP-трафик в целом, Hysteria может работать хуже или не работать вообще. В таких случаях может помочь обфускация Salamander, которая преобразует пакеты в случайные байты, но это делает сервер несовместимым со стандартными QUIC-соединениями.
Алгоритм управления перегрузкой Brutal: главное преимущество Hysteria 2
Классический TCP-протокол при обнаружении потерь пакетов резко снижает скорость передачи, что приводит к «просадкам» на нестабильных линиях. Hysteria 2 использует собственный алгоритм управления перегрузкой Brutal, который работает иначе.
Brutal позволяет пользователю заранее указать реальную полосу пропускания, и алгоритм агрессивно удерживает эту скорость, не снижая её при потерях. Это даёт значительно большую полезную пропускную способность на перегруженных или нестабильных каналах, например, на 4G в зонах с плохим покрытием.
В Hysteria 2 также доступны альтернативные алгоритмы BBR и Reno, но именно Brutal считается ключевой особенностью, которая делает протокол особенно эффективным в сложных условиях. Однако стоит помнить: если сервер слабый или канал до него перегружен, никакой алгоритм не превратит его в «гоночный болид».
Hysteria 1 и Hysteria 2: в чём различия и совместимость
Hysteria развивается, и на данный момент существует две основные версии: Hysteria 1 и Hysteria 2. Они используют разные форматы конфигурации и несовместимы между собой. То, что работает в одном клиенте или профиле, не обязательно запустится в другом.
Hysteria 2 считается более современной версией, с улучшенной производительностью и расширенной поддержкой клиентов. Многие приложения, такие как NekoBox, Hiddify Next, Karing, sing-box, Streisand, v2RayTun и Happ, поддерживают именно Hysteria 2.
При добавлении сервера важно проверять, какую версию протокола поддерживает ваш клиент и какой формат указан в конфигурации. Типичная ошибка новичка — вставить ссылку, не обращая внимания на версию, и получить ошибку подключения.
Настройка сервера Hysteria: установка и базовая конфигурация
Для установки Hysteria на сервер с Debian/Ubuntu можно использовать официальный скрипт: bash <(curl -fsSL https://get.hy2.sh/). Если запуск от обычного пользователя вызывает ошибку, скрипт можно скачать и запустить с правами root.
После установки необходимо отредактировать файл конфигурации /etc/hysteria/config.yaml. В нём указываются:
- listen — порт для прослушивания (по умолчанию 443);
- acme — домен и email для автоматического получения сертификата через acme.sh;
- auth — тип аутентификации: пароль, многопользовательская или HTTP;
- masquerade — режим маскировки под HTTP/3;
- obfs — обфускация Salamander (опционально).
Пример базовой конфигурации:
listen: :443
acme:
domains:
- your.domain.net
email: your@email.com
auth:
type: password
password: your_password
masquerade:
type: proxy
proxy:
url: https://news.ycombinator.com/
rewriteHost: trueВажно следить за отступами в YAML: лишний или отсутствующий пробел может вызвать ошибки. Также необходимо обеспечить доступность файлов сертификата, если вы используете собственные ключи.
Аутентификация и управление пользователями
Hysteria поддерживает несколько способов аутентификации:
- Пароль — единый пароль для всех пользователей;
- Многопользовательская — список логинов и паролей;
- HTTP — сервер отправляет POST-запрос на ваш backend для проверки;
- Командная — выполнение внешней команды для проверки.
Многопользовательская конфигурация выглядит так:
auth:
type: userpass
userpass:
user1: pass1
user2: pass2HTTP-аутентификация позволяет интегрировать Hysteria с существующей системой управления пользователями. При подключении сервер отправляет POST-запрос с данными клиента, а ваш backend должен вернуть JSON с полем ok и идентификатором пользователя.
Командная аутентификация аналогична HTTP, но вместо запроса выполняется указанная команда. Это удобно для нестандартных сценариев.
Маскировка под HTTP/3 и обфускация Salamander
Одной из ключевых особенностей Hysteria является способность маскироваться под стандартный HTTP/3-трафик. Это означает, что пакеты выглядят как обычные QUIC-соединения, а сервер отвечает на HTTP-запросы как настоящий веб-сервер.
Для маскировки используется секция masquerade, которая может работать в трёх режимах:
- file — статический файловый сервер;
- proxy — обратный прокси, передающий содержимое с другого сайта;
- string — сервер, возвращающий заданную строку.
Рекомендуется выбирать сайт, расположенный в той же подсети, что и ваш VPS, чтобы маскировка выглядела правдоподобно.
Если сеть блокирует QUIC или HTTP/3, можно включить обфускацию Salamander. Она преобразует пакеты в случайные байты без шаблона, что затрудняет их идентификацию. Однако это делает сервер несовместимым со стандартными QUIC-соединениями, и он перестаёт выглядеть как настоящий HTTP/3-сервер.
Клиенты и настройка подключения
Для подключения к Hysteria-серверу необходимо использовать клиент, поддерживающий этот протокол. Среди популярных приложений: NekoBox, Hiddify Next, Karing, sing-box, Streisand, v2RayTun, Happ, Shadowrocket и другие.
Пользователь получает ссылку или QR-код с параметрами подключения: адрес сервера, порт, пароль, транспортные настройки, SNI, обфускацию и лимиты скорости. Эти данные импортируются в приложение.
Важно проверять, поддерживает ли клиент именно Hysteria 2, а не первую версию. Также стоит обращать внимание на источник конфигурации: неизвестные бесплатные ссылки могут вести на серверы, владельцы которых видят ваш трафик.
После добавления профиля рекомендуется проверить задержку, скорость и стабильность соединения. Если профиль не работает, проверьте версию протокола, порт, пароль и настройки TLS.
Проброс портов и работа в условиях блокировок
Некоторые провайдеры блокируют или ограничивают постоянные UDP-соединения на конкретных портах. Для обхода этого ограничения Hysteria поддерживает проброс портов.
Клиент может использовать несколько портов одновременно, например: example.com:1234,5678,9012 или диапазон 20000-50000. Клиент случайным образом выбирает порт для первоначального соединения и периодически переключается на другой.
На сервере необходимо настроить перенаправление портов с помощью iptables. Например, для диапазона портов 20000-50000 на порт 443:
iptables -t nat -A PREROUTING -i eth0 -p udp --dport 20000:50000 -j DNAT --to-destination :443Это позволяет серверу прослушивать только один порт, но принимать соединения на любом из указанных.
Ограничения и типичные ошибки при использовании Hysteria
Hysteria — мощный инструмент, но он не лишён ограничений. Вот основные моменты, о которых стоит помнить:
- Не является полной анонимностью. Прокси скрывает ваш IP от сайтов, но владелец сервера видит технические данные: время подключений, объём трафика, адреса назначения.
- Зависит от качества сервера. Слабый или перегруженный сервер сведёт на нет все преимущества протокола.
- Требует совместимости. Не все клиенты поддерживают Hysteria 2, а конфигурации разных версий несовместимы.
- Чувствителен к блокировкам UDP. Если сеть режет UDP-трафик, Hysteria может не работать.
Типичные ошибки:
- Использование случайных ссылок из неизвестных источников.
- Игнорирование версии протокола.
- Неправильные настройки скорости (слишком высокие или низкие лимиты).
- Хранение множества неработающих профилей.
Чтобы избежать проблем, выбирайте проверенные серверы, проверяйте настройки и не доверяйте бесплатным конфигурациям для чувствительных данных.
Вопросы и ответы
Чем Hysteria отличается от обычного VPN?
Обычный VPN — это готовый сервис с приложением и кнопкой подключения. Hysteria — это протокол, который требует собственного сервера и настройки. Он даёт больше контроля: можно настроить аутентификацию, лимиты скорости, обфускацию и маршрутизацию. Но за гибкость приходится платить вниманием к деталям.
Hysteria 2 работает через ТСПУ?
Hysteria 2 маскируется под обычный QUIC/HTTP3-трафик, который ТСПУ обычно не фильтрует. На большинстве российских провайдеров он работает стабильно. Однако в некоторых случаях может потребоваться обфускация Salamander, если сеть блокирует QUIC.
Какие клиенты поддерживают Hysteria 2?
Hysteria 2 поддерживают NekoBox, Hiddify Next, Karing, sing-box, Streisand, v2RayTun, Happ и другие. Перед использованием проверьте, поддерживает ли ваше приложение именно Hysteria 2, так как конфигурации первой и второй версий несовместимы.
Почему Hysteria может не работать?
Причины могут быть разными: несовместимость версии протокола, неправильные настройки (порт, пароль, SNI), блокировка UDP-трафика провайдером, слабый или перегруженный сервер, ошибки в конфигурации. Также важно использовать актуальный клиент и проверять источник конфигурации.
Насколько безопасен Hysteria?
Hysteria шифрует трафик с помощью TLS 1.3, что защищает данные от перехвата. Однако он не обеспечивает полную анонимность: владелец сервера может видеть технические данные. Используйте только доверенные серверы и не передавайте через бесплатные конфиги чувствительную информацию.
Стоит ли использовать Hysteria для обхода блокировок?
Hysteria — один из эффективных протоколов для обхода блокировок благодаря маскировке под HTTP/3 и алгоритму Brutal. Однако выбор зависит от конкретной сети и качества сервера. Если у вас стабильное соединение, можно рассмотреть и другие протоколы, например VLESS Reality или Shadowsocks.