# 使用说明 项目使用自有证书搭建, 无需要准备域名. 默认使用`bing.com`域名作为伪装. ## 快速开始 确认安装好docker, docker-compose, git 下载代码 ``` git clone https://gittea.wingogo.top/William/hysteria_docker.git ``` 启动项目 ```bash docker-compose up -d ``` 查看日志 ```bash docker-compose logs | head -n 50 ``` ## 客户端配置 无域名,使用IP搭建,download-bandwidth 根据实际填写 ```yaml 地址: 服务器ip 端口: 8443 # 服务器端端口 密码: RhCLi%T&MFe5&de # 服务器端密码 传输安全层: tls SNI: bing.com # 伪装域名 跳过证书验证: true download-bandwidth=200 ``` ## 修改域名 如果需要修改伪装域名 1. 根据新域名生成证书文件 - 修改gen_cent.sh文件, 把`-subj "/CN=bing.com"`改为其他域名, 例如`-subj "/CN=abc.com" ` - 然后执行`bash gen_cert.sh`重新生成证书文件`server.crt`和`server.key` 2. 修改hysteria.yaml文件 修改masquerade.proxy.url ```yml masquerade: type: proxy proxy: url: https://改为其他tls1.3的域名 rewriteHost: true ``` ## 修改端口 修改文件`hysteria.yaml` ```yml listen: :9999 # 改为其他端口 # 省略其他代码... ``` ## 文件解析 - 文件`gen_cert.sh`, 用来生成自签证书 ```bash # 生成自签名的 ECDSA 证书并设置有效期为 100 年 # 使用 OpenSSL 的证书请求工具 openssl req \ -x509 \ # 生成自签名的X.509证书 -nodes \ # 不使用加密算法保护私钥 -newkey ec:<(openssl ecparam -name prime256v1) \ # 生成 ECDSA 私钥和公钥,使用 prime256v1 曲线 -keyout /etc/hysteria/server.key \ # 将生成的私钥保存到指定路径 -out /etc/hysteria/server.crt \ # 将生成的自签名证书保存到指定路径 -subj "/CN=bing.com" \ # 设置证书的主题字段,这里是 Common Name (CN) -days 36500 \ # 设置证书的有效期为 36500 天(约100年) ``` `-subj `参数用于在 OpenSSL 命令中设置证书主题字段,其中 "/CN=example.com" 指定了通用名称 (Common Name, CN),表示证书关联的主机名。 `openssl`是一个开源的加密工具包,提供了一系列用于处理安全通信的命令和库。它支持多种加密算法、数字证书和相关的功能,包括生成和签名证书、创建和验证数字签名、加解密数据等。常见用途包括创建和管理SSL/TLS证书、进行加密通信以及执行与加密相关的各种操作。 - 文件`server.crt`和`server.key`是证书文件 - 文件`hysteria.yaml`是hysteria服务器端配置文件 ## 参考 - https://v2.hysteria.network/zh/docs/getting-started/Server/ - https://v2rayssr.com/hysteria2.html - https://www.iiiam.in/articles/server/deploy-hysteria2