reality/README.md
2024-10-10 11:08:23 +08:00

79 lines
2.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# grs
1. grss(Golang Reverse SOCKS5 Server) 服务端需要有公网IP的机器上
1. grsc(Golang Reverse SOCKS5 Client) 客户端,需要运行于想要穿透的内网中机器上
1. grsu(Golang Reverse SOCKS5 User) 用户端需要运行于用户机器上提供socks5服务
grs是一个反向socks5代理,其中grss和grsc和grsu是通过REALITY协议通信
关于REALITY协议: [README-REALITY.md](./README-REALITY.md)
相对于frpnps等内网穿透工具有以下特点
1. 完美消除网络特征
1. 防止服务端被主动探测
1. 客户端和用户端内嵌配置,不需要命令行或额外配置文件
## 使用步骤
### 生成配置、客户端、用户端
`grss gen www.qq.com:443 127.0.0.1:443`
1. `www.qq.com:443` 是被模拟的目标
1. `127.0.0.1:443` 是服务器监听地址这里要填写公网IP端口最好和模拟目标一致
若SNIAddr或ServerAddr不指定则尝试加载已有配置文件
```txt
Usage:
grss [OPTIONS] gen [gen-OPTIONS] [SNIAddr] [ServerAddr]
generate server config and client
Help Options:
-h, --help Show this help message
[gen command options]
-d debug
-f=[chrome|firefox|safari|ios|android|edge|360|qq] client finger print (default: chrome)
-e= expire second (default: 30)
-o= server config output path (default: config.json)
--dir= client output directory (default: .)
[gen command arguments]
SNIAddr: tls server address, e.g. example.com:443
ServerAddr: server address, e.g. 8.8.8.8:443
```
### 启动服务端
`grss serv`
```txt
Usage:
grss [OPTIONS] serv [serv-OPTIONS]
run server
Help Options:
-h, --help Show this help message
[serv command options]
-o= server config path (default: config.json)
```
### 启动客户端
`grsc`
### 启动用户端
`grsu`
```txt
Usage of grsu:
-l string
socks5 listen address (default "127.0.0.1:61080")
```