以下是如何在服务器上搭建 Hysteria 服务的详细步骤,包含目录创建、证书生成、配置文件创建、Docker 启动及端口跳跃设置。

1. 创建目录与配置文件
首先创建存放 Hysteria 配置文件的目录及配置文件,并进入该目录:
mkdir /root/hysteria && touch /root/hysteria/hysteria.yaml && cd /root/hysteria
2. 申请自签名证书
生成一个自签名证书,以便 Hysteria 服务使用 TLS 进行加密。以下命令会创建 server.key 和 server.crt 两个文件,证书有效期为 100 年:
openssl req -x509 -nodes -newkey ec:<(openssl ecparam -name prime256v1) -keyout /root/hysteria/server.key -out /root/hysteria/server.crt -subj "/CN=bing.com" -days 36500
3. 创建 Hysteria 配置文件
接下来,创建 Hysteria 的配置文件 hysteria.yaml:
cat > /root/hysteria/hysteria.yaml <<EOF
listen: :443 # 监听端口
tls:
cert: /etc/hysteria/server.crt
key: /etc/hysteria/server.key
auth:
type: password
password: 12345678 # 自定义密码
masquerade:
type: proxy
proxy:
url: https://bing.com/
rewriteHost: true
sniff:
enable: true
timeout: 2s
rewriteDomain: false
tcpPorts: 80,443,8000-9000
udpPorts: all
outbounds:
- name: warp
type: socks5
socks5:
addr: 127.0.0.1:19898
acl:
inline:
- warp(suffix:x.com)
- warp(suffix:azure.com)
- warp(suffix:ip.sb)
- warp(suffix:v2ex.com)
- warp(geosite:openai)
- warp(geosite:reddit)
- warp(geosite:netflix)
- warp(geosite:apple)
- warp(geosite:meta)
- warp(geosite:spotify)
- warp(geosite:Microsoft)
- warp(geosite:cloudflare)
- direct(all)
EOF
在此配置中:
listen是 Hysteria 服务监听的端口。tls配置中指定了证书路径。auth使用密码认证,密码可以自定义。masquerade设置代理信息,这里指定了bing.com作为伪装域名。- 需自己安装 warp 配置好 socks5 代理。
4. 使用 Docker 一键启动 Hysteria
通过 Docker 启动 Hysteria 服务,将 /root/hysteria 目录挂载到 Docker 容器中的 /etc/hysteria/:
docker run -dt --network=host --restart=always --name hysteria -v /root/hysteria/:/etc/hysteria/ tobyxdd/hysteria server -c /etc/hysteria/hysteria.yaml
此命令中,--network=host 使 Docker 容器与宿主机共享网络,--restart=always 保证容器在系统重启后自动启动。
5. 配置端口跳跃
由于 Hysteria 服务端无法同时监听多个端口,可通过 iptables 或 nftables 配置 DNAT 转发,将指定端口范围转发到 Hysteria 的监听端口(443)。
IPv4 配置:
iptables -t nat -A PREROUTING -i eth0 -p udp --dport 30000:50000 -j DNAT --to-destination :443
IPv6 配置:
ip6tables -t nat -A PREROUTING -i eth0 -p udp --dport 30000:50000 -j DNAT --to-destination :443
这两个命令将服务器的 UDP 端口 30000-50000 转发到 Hysteria 的监听端口 443,以实现多端口访问的效果。
以上即是完整的 Hysteria 服务器搭建流程。配置完成后,Hysteria2 服务即可在服务器上运行。
正文完