Обновить правила репозитория и подписи исходников в 99 заметках, не затрагивая пользовательские незакоммиченные файлы. Сделать Forgejo Actions содержательным: проверять опубликованный commit, а не пустое рабочее дерево после checkout.
12 KiB
| date | tags | aliases | link | |||||||
|---|---|---|---|---|---|---|---|---|---|---|
| 2026-07-11 |
|
|
https://v2.hysteria.network/docs/getting-started/Installation/ |
🦎 Hysteria 2 — установка сервера
[!info] О чём заметка Практический гайд по установке серверной части Hysteria 2 на Linux-VPS: официальный bash-скрипт с systemd-сервисом, ручная установка бинарника и Docker. Обзор протокола и модели «клиент-сервер» — в Hysteria/00-overview. После установки нужно написать конфиг — см. Hysteria/config-server.
TL;DR
- Проще всего — официальный скрипт:
bash <(curl -fsSL https://get.hy2.sh/). Он ставит бинарник и заводит systemd-сервисhysteria-server.service. - Скрипт только устанавливает и создаёт пример конфига. Рабочий конфиг с доменом, паролем и сертификатом нужно Hysteria/config-server в
/etc/hysteria/config.yaml, иначе сервис не запустится. - Конфиг лежит в
/etc/hysteria/config.yaml, запуск/перезапуск — черезsystemctl, логи — черезjournalctl. - Нужен дистрибутив с systemd: Debian 11+, Ubuntu 22.04 LTS+, Rocky/CentOS Stream 8+, Fedora 37+. CentOS 7 и busybox-системы (Alpine, OpenWrt) не поддерживаются.
- Один и тот же бинарник
hysteria— это и сервер, и клиент; режим выбирается аргументом (hysteria server/hysteria client).
Требования
- VPS с публичным IP (IPv4 или IPv6 — оба подходят). Нет белого IP (дом, CGNAT, мобильный модем)? Сервер всё равно можно поднять — см. Hysteria/realms-nat.
- Домен, указывающий на IP сервера (подойдёт и поддомен). Домен нужен, чтобы Hysteria автоматически получила TLS-сертификат через ACME (Let's Encrypt / ZeroSSL). Без домена придётся использовать самоподписанный сертификат — см. Hysteria/config-client, раздел про
insecure/pinSHA256. - Для скрипта установки: система на systemd (команда
systemctl) и установленныеbash,grep,curl, GNU Coreutils (не busybox-версии).
[!tip] Какой дистрибутив выбрать новичку Для нового VPS берите стабильную версию мейнстрим-дистрибутива не старше 2 лет. Рекомендованные официальной документацией: Debian 11+, Ubuntu 22.04 LTS+, Rocky Linux 8+, CentOS Stream 8+, Fedora 37+. Явно избегайте CentOS 7 (старое ядро ломает QUIC-соединения). Не поддерживаются busybox-системы: OpenWrt, Alpine Linux, NixOS.
Способ 1 — официальный скрипт установки (рекомендуется)
Официальный bash-скрипт скачивает свежий бинарник, кладёт его в систему и настраивает systemd-сервис. Он аналогичен пакетному менеджеру: устанавливает и обновляет, но сам сервис не настраивает до рабочего состояния — генерирует только пример конфига.
Установка или обновление
Установить (или обновить до последней версии):
bash <(curl -fsSL https://get.hy2.sh/)
Установить конкретную версию (например, v2.9.3):
bash <(curl -fsSL https://get.hy2.sh/) --version v2.9.3
Удаление
bash <(curl -fsSL https://get.hy2.sh/) --remove
Полезные варианты запуска скрипта
- Установка из локального файла — если VPS не может достучаться до GitHub Releases, скачайте бинарник вручную и передайте путь:
bash <(curl -fsSL https://get.hy2.sh/) --local /path/to/hysteria-linux-amd64. - Указать архитектуру (в основном для AVX-сборки, она быстрее на поддерживающих AVX процессорах):
ARCHITECTURE=amd64-avx bash <(curl -fsSL https://get.hy2.sh/). - Запуск от root — если не хотите возиться с правами (например, при внешней генерации сертификатов):
HYSTERIA_USER=root bash <(curl -fsSL https://get.hy2.sh/). Вернуть обычного пользователя:HYSTERIA_USER=hysteria bash <(curl -fsSL https://get.hy2.sh/).
[!warning] Скрипт не «настроит всё сам» Официальный
get.hy2.sh— это установщик, а не «мастер настройки под ключ». Он создаёт пример конфига, но не пропишет за вас домен, пароль и сертификат. Рабочий конфиг нужно написать самому (см. Hysteria/config-server). Существуют сторонние «скрипты Hysteria 2», которые ставят и настраивают всё разом, но это чужой неофициальный код — запускать его от root на своём сервере стоит только осознанно и из доверенного источника.
Управление сервисом (systemd)
После установки скриптом сервис называется hysteria-server.service.
Отредактировать конфиг:
nano /etc/hysteria/config.yaml
Включить автозапуск и сразу стартовать:
systemctl enable --now hysteria-server.service
Перезапустить (обычно после правки конфига):
systemctl restart hysteria-server.service
Проверить статус:
systemctl status hysteria-server.service
Посмотреть логи сервера:
journalctl --no-pager -e -u hysteria-server.service
[!tip] Как понять, что сервер поднялся В логах должно появиться сообщение «server up and running» без ошибок. Если вместо этого видите ошибки про
permission deniedна порт 443 или про сертификат — загляните в Hysteria/troubleshooting.
Способ 2 — ручная установка бинарника
Если systemd-скрипт не подходит (например, нестандартная система), можно скачать исполняемый файл напрямую. Ссылка вида https://download.hysteria.network/app/latest/[имя файла] всегда ведёт на последнюю версию — удобно для скриптов и автоматизации.
Имена файлов для Linux (выберите под свою архитектуру):
| Файл | Архитектура | Примечание |
|---|---|---|
hysteria-linux-amd64 |
x86-64 | обычный |
hysteria-linux-amd64-avx |
x86-64 | требует поддержки AVX (быстрее) |
hysteria-linux-arm64 |
ARM64 | |
hysteria-linux-arm |
ARMv7 | |
hysteria-linux-386 |
x86 |
Есть также сборки под Windows, macOS (включая ARM/M1), FreeBSD и Android (последние — ELF-бинарники под NDK, а не APK). Полный список — в официальной документации.
Пример: скачать, сделать исполняемым и запустить как сервер с конфигом config.yaml в текущей папке:
curl -fsSL -o hysteria https://download.hysteria.network/app/latest/hysteria-linux-amd64-avx
chmod +x hysteria
./hysteria server -c config.yaml
[!warning] Порт 443 требует привилегий Hysteria по умолчанию слушает 443 порт, а порты ниже 1024 недоступны обычному пользователю. Либо запускайте от root, либо выдайте бинарнику право привязываться к привилегированным портам:
sudo setcap cap_net_bind_service=+ep ./hysteria. Подробнее об этой ошибке — в Hysteria/troubleshooting.
Способ 3 — Docker
Официальный образ — tobyxdd/hysteria. Пример docker-compose.yaml:
version: "3.9"
services:
hysteria:
image: tobyxdd/hysteria
container_name: hysteria
restart: always
network_mode: "host"
cap_add:
- NET_ADMIN
volumes:
- acme:/acme
- ./hysteria.yaml:/etc/hysteria.yaml
command: ["server", "-c", "/etc/hysteria.yaml"]
volumes:
acme:
Capability NET_ADMIN нужна только если включён Hysteria/obfs-port-hopping (серверу надо править правила фаервола). Для обычной работы её можно убрать.
Что дальше
После установки бинарник есть, но сервис ещё не работает — нужен конфиг. Переходите к Hysteria/config-server: домен, ACME-сертификат, пароль аутентификации и маскировка под сайт.
📚 См. также
- Hysteria/00-overview — что это за протокол и кому подходит.
- Hysteria/config-server — следующий обязательный шаг после установки.
- Hysteria/troubleshooting — если сервис не стартует.
- 🔗 Installation — официальная документация
- 🔗 Server Installation Script — детали скрипта
[!quote] 🤖 Эти статьи открыты — можно обучать на них ИИ При желании вы можете натренировать ИИ на наших статьях. Исходное форматирование и скачивание всего репозитория одним zip-архивом доступны в Forgejo: исходник этой заметки · весь репозиторий.