From 8bcb6b488e4b02cfce842c5a3e55599c961b078c Mon Sep 17 00:00:00 2001 From: Olia Lisa Date: Sun, 11 Jan 2026 22:30:50 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AE=80=E5=8C=96=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 105 ++++-------------------------------------------------- 1 file changed, 6 insertions(+), 99 deletions(-) diff --git a/README.md b/README.md index 78b1b06..8bc96f6 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,14 @@ # 使用说明 ## 项目描述 -项目使用自签名证书搭建 Hysteria 代理服务器,无需准备域名。 -默认使用 `bing.com` 域名作为伪装。 + +基于 docker 容器的 hysteria2 服务器端节点搭建 ## 快速开始 -### 方法一:使用交互脚本(推荐新手) -确认安装好下列软件 +提前安装下列软件 + +- wget - git - curl @@ -23,111 +24,17 @@ git clone https://gitea.9001001.xyz/William/hysteria_docker.git cd hysteria_docker ``` -运行安装脚本,选择选项1(安装并启动) +运行安装脚本,选择选项 1(一键部署) ```bash bash ./install.sh ``` -脚本会自动检测并安装必要的软件(Docker、Docker Compose、jq),然后初始化配置并启动容器。 - -### 方法二:手动部署服务器端 - -如果您更喜欢手动控制,或需要在不同环境下进行自定义,请按以下步骤操作。 - -确认安装好下列软件 - -- docker -- docker-compose -- git -- jq -- curl - -下载项目代码 - -```bash -git clone https://gitea.9001001.xyz/William/hysteria_docker.git -``` - -进入项目目录 - -```bash -cd hysteria_docker -``` - -执行命令初始化配置并启动容器 - -```bash -bash ./bin/run.sh -``` - -## 其他说明 -### install.sh 脚本说明 -项目提供了 `install.sh` 交互脚本,可以帮助您轻松管理 Hysteria 服务。运行脚本后,根据提示选择数字编号来执行相应操作: - -1. **安装并启动** - 自动检测并安装所需软件(Docker、Docker Compose、jq),然后初始化配置并启动服务。 -2. **生成配置/重置配置** - 重新生成 Hysteria 配置文件。 -3. **启动容器** - 仅启动 Hysteria 容器(假设配置已存在)。 -4. **查看分享链接** - 显示客户端可用的配置链接。 -5. **停止容器** - 停止并移除运行中的容器。 -6. **更新镜像** - 下载最新的 Hysteria docker镜像。 -7. **更新端口** - 修改服务监听端口。 - -使用方法:进入项目目录后,运行 `bash ./install.sh` 并根据菜单选择。 - -### 查看日志 -检查服务端是否启动成功 - -```bash -docker-compose logs | head -n 50 -``` - -### 查看分享链接 - -服务器端启动成功后, 进入项目目录, 执行以下命令 - -```bash -bash ./bin/print_share_link.sh -``` - ### 电脑配置客户端 客户端软件(选择其中一种) - - [V2rayN](https://github.com/2dust/v2rayN/releases) - [Nekoray](https://github.com/MatsuriDayo/nekoray/releases) -- [Hyteria 官方提及的第三方客户端](https://v2.hysteria.network/zh/docs/getting-started/3rd-party-apps/) - -客户端配置 -把分享链接直接粘贴到客户端 -分享链接获取, 参考"查看分享链接" - - -## 文件解析 - -### 文件`bin/gen_self_tls.sh` - -用来生成自签证书和设置伪装域名。该脚本实际执行的 OpenSSL 命令: - -```bash -# 生成自签名的 ECDSA 证书并设置有效期为 100 年 - -openssl req \ - -x509 \ # 生成自签名的X.509证书 - -nodes \ # 不使用加密算法保护私钥 - -newkey ec:<(openssl ecparam -name prime256v1) \ # 使用 bash process substitution 生成 ECDSA 私钥 - -keyout ./key/server.key \ # 将生成的私钥保存到项目 key 目录 - -out ./key/server.crt \ # 将生成的自签名证书保存到项目 key 目录 - -subj "/CN=yourdomain.com" \ # 设置证书主题的 CN(Common Name) - -days 36500 # 设置证书有效期为 36500 天(约100年) -``` - -- `openssl`是一个开源的加密工具包,提供了一系列用于处理安全通信的命令和库。它支持多种加密算法、数字证书和相关的功能,包括生成和签名证书、创建和验证数字签名、加解密数据等。常见用途包括创建和管理 SSL/TLS 证书、进行加密通信以及执行与加密相关的各种操作。 - -- `-subj `参数用于在 OpenSSL 命令中设置证书主题字段,其中 "/CN=example.com" 指定了通用名称 (Common Name, CN),表示证书关联的主机名。 - -### 文件`key/server.crt`是 Tls 证书, `key/server.key`是 Tls 私钥 - ## 参考