Files
HY2XS_flamy/docs/03-server-hysteria2.md
T

4.1 KiB

Server Hysteria2 baseline

Цель документа

Зафиксировать правила для серверного слоя Hysteria2 в модели, где UI поставляется вместе с проектом, а Hysteria берётся из official upstream во время установки.

Роль Hysteria2

Hysteria2 — основной транспортный компонент сервера.
Он не форкается и не поставляется как часть UI-форка.

Source policy

Базовое правило:

  • Hysteria2 скачивается во время установки
  • источник — официальный upstream
  • install layer не должен подменять собой upstream-дистрибуцию Hysteria2

Версионная политика

С учётом выбранной модели «берём свежее из upstream» фиксируется такая практика:

  • по умолчанию install layer тянет свежий upstream release / install source
  • фактически установленная версия обязательно записывается в post-install.env
  • документация не обещает жёсткий pin как baseline
  • если оператору нужна строгая фиксация версии, это отдельный режим, а не базовая модель

Платформа

  • ОС: только Debian 12
  • init/system management: systemd
  • сетевой фильтр: nftables
  • архитектура baseline: x86_64/amd64

Listen и сеть

Listen

  • только IPv4
  • формат: 0.0.0.0:<PORT>

Порт

  • один фиксированный UDP-порт
  • этот порт должен совпадать в:
    • server config
    • firewall rules
    • post-install.env

Обфускация

В baseline включается:

  • obfs.type: salamander
  • obfs.password

Правила:

  • пароль должен быть сильным
  • пароль должен фиксироваться в конфигурационном контуре
  • значение должно быть доступно оператору через runtime config и post-install.env

TLS

Требования:

  • нормальный домен
  • корректный server_name / SNI на клиентах
  • одна понятная TLS policy
  • без смешивания нескольких несовместимых схем по умолчанию

Auth policy

Для baseline выбирается одна предсказуемая auth-модель.

Правила:

  • install flow должен оставить рабочий auth state
  • bootstrap auth material должен быть либо передан оператором, либо безопасно сгенерирован
  • дальнейшая модель выдачи доступа пользователям не фиксируется в этом пакете docs

Bandwidth и congestion

Серверная baseline policy:

  • bandwidth.up = 50 mbps
  • bandwidth.down = 50 mbps
  • ignoreClientBandwidth = false

Важно:

  • эти параметры сами по себе не исчерпывают speed policy
  • корректный лимит ожидается только в паре с совместимым клиентским конфигом

Рекомендуемые пути

  • /etc/hysteria/config.yaml
  • /var/lib/hysteria/
  • /etc/hysteria/post-install.env

Серверные инварианты

После установки должно быть верно:

  1. Hysteria2 получена из official upstream
  2. фактическая версия отражена в post-install.env
  3. конфиг валиден
  4. сервис стартует через systemd
  5. нужный UDP-порт реально слушается
  6. тестовый совместимый клиент может подключиться
  7. bundled UI работает поверх актуального состояния сервера