Обновить правила репозитория и подписи исходников в 99 заметках, не затрагивая пользовательские незакоммиченные файлы. Сделать Forgejo Actions содержательным: проверять опубликованный commit, а не пустое рабочее дерево после checkout.
8.7 KiB
| date | tags | aliases | link | |||||||
|---|---|---|---|---|---|---|---|---|---|---|
| 2026-07-11 |
|
|
https://v2.hysteria.network/docs/advanced/Troubleshooting/ |
🦎 Hysteria 2 — решение проблем
[!info] О чём заметка Расшифровка типичных ошибок Hysteria 2 при настройке клиента и сервера и что с ними делать. Если ещё не подняли сервер/клиент — начните с Hysteria/config-server и Hysteria/config-client конфигов. Обзор протокола — Hysteria/00-overview.
TL;DR
- timeout: no recent network activity — клиент не достучался до сервера. Проверьте: запущен ли сервер, не режет ли UDP фаервол/провайдер, верны ли адрес и порт, совпадает ли пароль обфускации.
- authentication error, HTTP status code: 404 — сервер отверг клиента. Почти всегда неверный пароль или подключение не к тому серверу.
- certificate signed by unknown authority — клиент не доверяет сертификату сервера. Для самоподписанного нужен
insecure+pinSHA256на клиенте. - listen udp :443: bind: permission denied — серверу не хватает прав на порт 443. Запуск от root или
setcap cap_net_bind_service. - Логи сервиса всегда под рукой:
journalctl --no-pager -e -u hysteria-server.service.
Ошибка: timeout (no recent network activity)
Полный текст: failed to initialize client (connect error: timeout: no recent network activity).
Это значит, что клиент не смог достучаться до сервера. Частые причины:
- Сервер не запущен (проверьте
systemctl status hysteria-server.service). - Порт заблокирован фаерволом. Помимо системного фаервола, у многих хостеров есть отдельный фаервол в панели управления VPS — про него часто забывают.
- Сервер слушает другой адрес/порт, чем указан в клиенте.
- Сервер слушает на сети, недоступной клиенту.
- Домен не резолвится в правильный IP.
- Неверные настройки обфускации. Если включён Hysteria/obfs-port-hopping, несовпадение пароля на клиенте и сервере даёт ровно такой таймаут — как будто сервера нет. Сверьте пароль обфускации на обеих сторонах.
- Слишком старое ядро Linux (известная проблема на CentOS 7). Обновите ядро или смените дистрибутив — см. Hysteria/install-server.
[!tip] Проверьте UDP отдельно Hysteria работает по UDP. Многие диагностические привычки (пинг,
telnetна порт) проверяют ICMP/TCP и ничего не скажут про UDP. Если TCP до сервера идёт, а Hysteria — нет, вероятно, провайдер или фаервол режут именно UDP на этом порту. Обходные приёмы — Hysteria/obfs-port-hopping; если UDP зарезан полностью, поможет только TCP-решение вроде VLESS/dpi-tls-june-2026.
Ошибка: authentication error (HTTP status code: 404)
Полный текст: failed to initialize client (authentication error, HTTP status code: 404).
Клиент дошёл до сервера, но был отвергнут. Причины:
- Неверные учётные данные — пароль на клиенте не совпадает с
auth.passwordна сервере. - Подключение не к тому серверу.
- На сервере неправильно настроена секция
auth.
Проверьте, что auth в Hysteria/config-client в точности равен auth.password в Hysteria/config-server (а при userpass-аутентификации формат username:password).
Ошибка: certificate signed by unknown authority
Полный текст: connect error: CRYPTO_ERROR ... tls: failed to verify certificate: x509: certificate signed by unknown authority.
Клиент считает сертификат сервера невалидным. Причины:
- Сервер использует самоподписанный сертификат, а на клиенте не добавлен доверенный CA и не включён
insecure. - В системном хранилище доверенных CA клиента нет центра, подписавшего сертификат.
- Вас атакуют «человеком посередине» (MITM).
Если сертификат самоподписанный — на клиенте укажите insecure: true вместе с pinSHA256 (закрепление отпечатка защищает от подмены). Подробно — в Hysteria/config-client, раздел про TLS. Лучший вариант вообще избежать этой ошибки — валидный сертификат через Hysteria/config-server на домен.
Ошибка: bind permission denied на порт 443
Полный текст: failed to load server config (invalid config: listen: listen udp :443: bind: permission denied).
У сервера нет прав привязаться к порту 443 (порты ниже 1024 требуют привилегий). Два решения:
- Запускать сервер от root.
- Выдать бинарнику capability на привязку к привилегированным портам:
sudo setcap cap_net_bind_service=+ep ./hysteria(подставьте реальное имя файла, напримерhysteria-linux-amd64-avx).
При установке Hysteria/install-server сервис обычно уже настроен на нужного пользователя — эта ошибка чаще возникает при ручном запуске бинарника.
Где смотреть логи
Диагностику всегда начинайте с логов. Для systemd-сервиса:
systemctl status hysteria-server.service
journalctl --no-pager -e -u hysteria-server.service
Рабочий сервер пишет «server up and running», рабочий клиент — «connected to server». Отсутствие этих строк и есть первый признак, что что-то не так.
📚 См. также
- Hysteria/config-server — правильная настройка
auth,tls/acme,listen. - Hysteria/config-client —
insecure/pinSHA256, адрес и пароль. - Hysteria/obfs-port-hopping — если UDP/QUIC режется провайдером.
- Hysteria/install-server — требования к системе и правам.
- 🔗 Troubleshooting — официальная документация
[!quote] 🤖 Эти статьи открыты — можно обучать на них ИИ При желании вы можете натренировать ИИ на наших статьях. Исходное форматирование и скачивание всего репозитория одним zip-архивом доступны в Forgejo: исходник этой заметки · весь репозиторий.