Hysteria2 一键安装与完整配置指南
基于 QUIC 的 Hysteria2 代理部署指南:一键脚本的 Python 与 Shell 两种装法、证书配置、完整服务端示例和常用管理命令。
📖 项目介绍
项目地址:https://github.com/seagullz4/hysteria2
这是一个轻量级的 Hysteria2 一键安装脚本项目,支持 Shell 版本和 Python 版本两种安装方式。项目基于 Hysteria 官方内核,旨在简化 Hysteria2 的部署流程。
Hysteria2 是什么?
Hysteria2 是一款基于 QUIC 协议的高性能代理工具,相比传统 TCP 代理具有以下优势:
| 特性 | 说明 |
|---|---|
| 极速传输 | 基于 QUIC (UDP),在高丢包、高延迟网络中表现优异 |
| 抗封锁能力 | 伪装成标准 HTTP/3 流量,难以被识别和封锁 |
| 智能拥塞控制 | 支持 BBR 和 Brutal 两种模式,自动适应网络状况 |
| 极低资源占用 | 内存消耗仅数十 MB,适合低配置服务器 |
| 跨平台支持 | 支持 Linux、Windows、macOS、Android、iOS 等 |
适用场景
- 网络拥塞或高丢包环境(如晚高峰、移动网络)
- 需要高速传输的场景
- 作为 REALITY 等 TCP 方案的备用节点
🔧 部署前提
服务器要求
- 操作系统:Debian 11+ / Ubuntu 20.04+ / CentOS Stream 8+
- 网络:需要公网 IP(IPv4 或 IPv6)
- 域名(可选):有域名可使用 ACME 自动申请证书;无域名可使用自签名证书
本地准备
根据你的操作系统选择合适的客户端(见本文末尾)。
🚀 开始部署
方式一:Python 版本(推荐)
Python 版本提供交互式界面,更适合新手用户。
第一步:安装依赖
wget -O phy2.sh https://raw.githubusercontent.com/seagullz4/hysteria2/main/phy2.sh && chmod +x phy2.sh && bash phy2.sh
第二步:运行安装脚本
wget -O hy2.py https://raw.githubusercontent.com/seagullz4/hysteria2/main/hysteria2.py && chmod +x hy2.py && python3 hy2.py
💡 安装完成后,可通过终端输入
hy2快捷方式一键执行脚本。
方式二:Shell 版本
如果你更喜欢传统方式,可以使用 Shell 版本:
wget -O install.sh https://raw.githubusercontent.com/seagullz4/hysteria2/main/install.sh && chmod +x install.sh && bash install.sh
📝 服务端配置详解
安装完成后,配置文件位于 /etc/hysteria/config.yaml。
证书配置
Hysteria2 支持两种证书配置方式:
方式一:ACME 自动申请(需要域名)
acme:
domains:
- your.domain.com # 替换为你的域名
email: your@email.com # 替换为你的邮箱
tls:
cert: /etc/hysteria/server.crt
key: /etc/hysteria/server.key
方式二:自签名证书(无需域名)
openssl req -x509 -nodes -newkey ec:<(openssl ecparam -name prime256v1) \
-keyout /etc/hysteria/server.key \
-out /etc/hysteria/server.crt \
-subj "/CN=bing.com" -days 36500
sudo chown hysteria /etc/hysteria/server.key
sudo chown hysteria /etc/hysteria/server.crt
完整配置示例
listen: :443 # 监听端口
# ACME 证书配置
acme:
domains:
- hy2.yourdomain.com
email: your@email.com
# 自签名证书配置(注释掉上面的 acme 部分)
# tls:
# cert: /etc/hysteria/server.crt
# key: /etc/hysteria/server.key
# 认证配置
auth:
type: password
password: your-strong-password # 替换为你的强密码
# 伪装配置(被探测时返回正常网站内容)
masquerade:
type: proxy
proxy:
url: https://www.bing.com
rewriteHost: true
# QUIC 参数优化
quic:
initStreamReceiveWindow: 8388608
maxStreamReceiveWindow: 8388608
initConnReceiveWindow: 20971520
maxConnReceiveWindow: 20971520
maxIdleTimeout: 30s
keepAlivePeriod: 10s
🔒 服务管理
常用命令
# 启动服务
systemctl start hysteria-server.service
# 开机自启
systemctl enable hysteria-server.service
# 重启服务(修改配置后)
systemctl restart hysteria-server.service
# 查看状态
systemctl status hysteria-server.service
# 查看实时日志
journalctl -u hysteria-server.service -f
防火墙配置
确保开放 UDP 443 端口:
# ufw
ufw allow 443/udp
# firewalld
firewall-cmd --add-port=443/udp --permanent
firewall-cmd --reload
🔄 进阶配置
启用 Salamander 混淆
如果你的网络针对性屏蔽了 QUIC 流量,可以启用 salamander 混淆:
服务端配置(在 config.yaml 中添加):
obfs:
type: salamander
salamander:
password: your-obfs-password # 混淆密码
客户端配置(见下方客户端配置部分)。
端口跳跃(应对单端口 UDP 阻断)
如果遇到运营商阻断单端口 UDP,可以使用端口跳跃功能:
第一步:安装 firewalld
sudo apt-get install firewalld
sudo systemctl enable firewalld
第二步:配置端口转发
# 开放全量端口
firewall-cmd --add-port=1-65535/tcp --permanent
firewall-cmd --add-port=1-65535/udp --permanent
# 配置端口跳跃转发(20000-50000 端口转发到 443)
firewall-cmd --add-forward-port=port=20000-50000:proto=udp:toport=443 --permanent
firewall-cmd --reload
第三步:修改服务端配置
listen: :443
# 启用多端口监听
listenPorts:
- 443
- 20000-50000
BBR 加速
启用 BBR 拥塞控制可以提升传输效率和稳定性:
wget -N --no-check-certificate "https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh" && chmod +x tcp.sh && ./tcp.sh
运行后选择安装 BBRplus 或 BBRv3,重启服务器后生效。
📱 客户端配置
订阅转换
可以使用以下订阅转换网站将 Hysteria2 节点转换为常用客户端格式:
各平台推荐客户端
Android
| 客户端 | 特点 |
|---|---|
| NekoBox | 功能全面 |
| Husi | 轻量简洁 |
| Clash Meta | 分流规则强大 |
| v2rayNG | 老牌稳定 |
iOS
- Shadowrocket
- Hiddify
Windows
| 客户端 | 特点 |
|---|---|
| v2rayN | 推荐 |
| Clash Verge | 现代化界面 |
macOS
| 客户端 | 特点 |
|---|---|
| v2rayU | 简洁易用 |
| ClashX | 分流灵活 |
客户端配置示例
server: your.domain.com:443 # 替换为你的服务器地址
auth: your-strong-password # 替换为你在服务端设置的密码
# TLS 配置
tls:
sni: your.domain.com # 替换为你的域名
insecure: false # 设为 true 则跳过证书验证
# 混淆配置(如服务端启用了 salamander)
obfs:
type: salamander
salamander:
password: your-obfs-password
# 带宽设置(根据实际网络调整)
bandwidth:
up: 50 mbps
down: 100 mbps
# 拥塞控制
congestion:
type: bbr # 或 brutal
bbrProfile: standard
⚠️ 常见问题排查
1. 证书申请失败
原因:域名未正确解析或防火墙未开放端口
解决:
- 确认域名已正确解析到服务器 IP
- 检查防火墙是否开放 80 和 443 端口
2. 客户端连接无响应
原因:防火墙未开放 UDP 端口或混淆密码不匹配
解决:
- 确认服务器防火墙已开放 UDP 443 端口
- 检查客户端和服务端的混淆密码是否一致
3. 速度不理想
原因:未启用加速或带宽设置过高/过低
解决:
- 启用 BBR 加速
- 调整客户端带宽设置,建议设置为实际带宽的 80%
- 尝试切换 BBR/Brutal 拥塞控制模式
🔧 更新与卸载
更新 Hysteria2
bash <(curl -fsSL https://get.hy2.sh/)
卸载
bash <(curl -fsSL https://get.hy2.sh/) --remove
📚 相关资源
| 资源 | 链接 |
|---|---|
| 官方文档 | https://v2.hysteria.network/zh/docs/ |
| GitHub 源码 | https://github.com/apernet/hysteria |
| 项目脚本 | https://github.com/seagullz4/hysteria2 |
本教程最后更新于 2026 年 4 月
评论