最近新开了台VPS准备尝试 Hysteria 2 协议,基础系统选择使用 Ubuntu 22.04 LTS。
基础配置
将子域名的 DNS 指向 VPS 的 IP 地址(IPv4、IPv6都可),使用 Cloudflare 的不能使用代理仅使用 DNS,之后部署 Hysteria 会用到。
登录 VPS 配置 Ubuntu 系统以使用高效的排队算法、BBR 拥塞控制以及启用 ECN,从而优化 TCP 网络性能。
shell
sudo bash -c '{
echo "net.core.default_qdisc=fq";
echo "net.ipv4.tcp_congestion_control=bbr";
echo "net.ipv4.tcp_ecn=1";
} >> /etc/sysctl.conf'
sudo sysctl -p
调整 Ubuntu 系统中网络接收和发送缓冲区大小为16MB,可根据资源情况调整。
shell
sysctl -w net.core.rmem_max=16777216
sysctl -w net.core.wmem_max=16777216
Hysteria 2 安装
使用如下命令可以安装或者更新最新版本的 Hysteria。
shell
bash <(curl -fsSL https://get.hy2.sh/)
之后会生成 /etc/hysteria/config.yaml
基础配置文件,需要根据实际情况进行修改。
yaml
# listen: :443 #默认监听443,如需修改需要取消掉注释
acme:
domains:
- a.example.com #已经解析到VPS的域名,可以单个或多个
- b.example.com
email: mail@example.com #email
auth:
type: password
password: ***** #密码可以修改
masquerade:
type: proxy
proxy:
url: https://gallery.fylsen.com #用于伪装的URL
rewriteHost: true
listenHTTP: :80 #全套伪装
listenHTTPS: :443
forceHTTPS: true
#设置带宽
bandwidth:
up: 1 gbps
down: 1 gbps
#设置QUIC参数
quic:
initStreamReceiveWindow: 26843545
maxStreamReceiveWindow: 26843545
initConnReceiveWindow: 67108864
maxConnReceiveWindow: 67108864
重启服务,使配置生效。
shell
systemctl restart hysteria-server.service
使用 ss -tuln
查看端口占用情况。
其他相关命令
shell
#启动Hysteria
systemctl start hysteria-server.service
#查看Hysteria状态
systemctl status hysteria-server.service
#停止Hysteria
systemctl stop hysteria-server.service
#设置开机自启
systemctl enable hysteria-server.service
#查看日志
journalctl -u hysteria-server.service
Surge 配置
toml
Hysteria2 = hysteria2, 服务器IP, 端口, password=配置文件中的密码, sni=解析到服务器的域名, download-bandwidth=带宽, ecn=true