Update README.md

This commit is contained in:
snail007
2017-09-19 16:02:28 +08:00
committed by GitHub
parent ec7adea194
commit 6d9134aa25

View File

@ -7,13 +7,17 @@ Proxy是golang实现的高性能http,https,websocket,tcp代理服务器.
`./proxy -p 38080` `./proxy -p 38080`
**2.作为二级代理,使用本地端口8090,假设上级http代理是`22.22.22.22:8080`** **2.作为二级代理,使用本地端口8090,假设上级http代理是`22.22.22.22:8080`**
`./proxy -P "22.22.22.22:8080" -p 8090` `./proxy -P "22.22.22.22:8080" -p 8090`
**3.一级和二级代理加密通讯.** **3.生成加密通讯需要的证书和密钥**
在linux上并安装了openssl命令可以直接通过下面的命令生成证书和key文件.
`./proxy keygen`
会在当前目录下面生成一个证书文件proxy.crt和key文件proxy.key。
**4.一级和二级代理加密通讯.**
一级代理(VPS,IP:22.22.22.22) 一级代理(VPS,IP:22.22.22.22)
`./proxy -x -p 38080 -c proxy.crt -k proxy.key` `./proxy -x -p 38080 -c proxy.crt -k proxy.key`
二级代理(本地) 二级代理(本地)
`./proxy -X -P "22.22.22.22:38080" -p 8080 -c proxy.crt -k proxy.key` `./proxy -X -P "22.22.22.22:38080" -p 8080 -c proxy.crt -k proxy.key`
那么访问本地的8080端口就是访问VPS上面的代理端口38080. 那么访问本地的8080端口就是访问VPS上面的代理端口38080.
**4.TCP隧道** **5.TCP隧道**
VPS,IP:22.22.22.22 VPS,IP:22.22.22.22
`./proxy --tcp -P "127.0.0.1:22" -x -p 22022 -c proxy.crt -k proxy.key` `./proxy --tcp -P "127.0.0.1:22" -x -p 22022 -c proxy.crt -k proxy.key`
本地 本地
@ -29,7 +33,7 @@ VPS,IP:22.22.22.22
### Why need these? ### Why need these?
当由于安全因素或者限制,我们不能顺畅的访问我们在其它地方的服务,我们可以通过多个相连的proxy节点建立起一个安全的隧道,顺畅的访问我们的服务. 当由于安全因素或者限制,我们不能顺畅的访问我们在其它地方的服务,我们可以通过多个相连的proxy节点建立起一个安全的隧道,顺畅的访问我们的服务.
###Fast Start ### Fast Start
提示:所有操作需要root权限. 提示:所有操作需要root权限.
**0.如果你的VPS是linux64位的系统,那么只需要执行下面一句,就可以完成自动安装和配置.** **0.如果你的VPS是linux64位的系统,那么只需要执行下面一句,就可以完成自动安装和配置.**
```shell ```shell
@ -60,33 +64,33 @@ chmod +x install.sh
./install.sh ./install.sh
``` ```
### More... ### More...
1、作为普通一级代理。 **1、作为普通一级代理。**
默认监听0.0.0.0:33080端口可以使用-p修改端口-i修改绑定ip。 默认监听0.0.0.0:33080端口可以使用-p修改端口-i修改绑定ip。
默认情况 默认情况
./proxy `./proxy`
指定ip和端口 指定ip和端口
./proxy -i 192.168.1.100 -p 60080 `./proxy -i 192.168.1.100 -p 60080`
2、作为普通二级代理。 **2、作为普通二级代理。**
可以通过-P指定上级代理格式是IP:端口 可以通过-P指定上级代理格式是IP:端口
./proxy -P "192.168.1.100:60080" -p 33080 `./proxy -P "192.168.1.100:60080" -p 33080`
3、作为加密一级代理。 **3、作为加密一级代理。**
加密模式的一级代理需要和加密的二级代理配合。 加密模式的一级代理需要和加密的二级代理配合。
加密模式需要证书和key文件在linux上并安装了openssl命令可以直接通过下面的命令生成证书和key文件。 加密模式需要证书和key文件在linux上并安装了openssl命令可以直接通过下面的命令生成证书和key文件。
./proxy keygen `./proxy keygen`
会在当前目录下面生成一个证书文件proxy.crt和key文件proxy.key。 会在当前目录下面生成一个证书文件proxy.crt和key文件proxy.key。
比如在你的vps上运行加密一级代理使用参数-x即可默认会使用程序相同目录下面的证书文件proxy.crt和key文件proxy.key。 比如在你的vps上运行加密一级代理使用参数-x即可默认会使用程序相同目录下面的证书文件proxy.crt和key文件proxy.key。
./proxy -x `./proxy -x`
或者使用-c和-k指定证书和key文件,ip和端口。 或者使用-c和-k指定证书和key文件,ip和端口。
./proxy -x -c "proxy.crt" -k "proxy.key" -p 58080 `./proxy -x -c "proxy.crt" -k "proxy.key" -p 58080`
4、作为加密二级代理。 **4、作为加密二级代理。**
加密模式的二级代理需要和加密的一级代理配合。加密模式的二级代理和加密模式的一级代理要使用相同的证书和key文件。 加密模式的二级代理需要和加密的一级代理配合。加密模式的二级代理和加密模式的一级代理要使用相同的证书和key文件。
默认会使用程序相同目录下面的证书文件proxy.crt和key文件proxy.key。 默认会使用程序相同目录下面的证书文件proxy.crt和key文件proxy.key。
比如在你的windows电脑上允许二级加密代理,需要-P指定上级代理同时设置-X代表是加密的上级代理。 比如在你的windows电脑上允许二级加密代理,需要-P指定上级代理同时设置-X代表是加密的上级代理。
假设一级代理vps外网IP是115.34.9.63。   假设一级代理vps外网IP是115.34.9.63。  
./proxy.exe -X -P "115.34.9.63:58080" -c "proxy.crt" -k "proxy.key" -p 18080 `./proxy.exe -X -P "115.34.9.63:58080" -c "proxy.crt" -k "proxy.key" -p 18080`
然后设置你的windos系统中需要通过代理上网的程序的代理为http模式地址为127.0.0.1端口为18080 然后设置你的windos系统中需要通过代理上网的程序的代理为http模式地址为127.0.0.1端口为18080
然后程序即可通过加密通道通过vps上网。 然后程序即可通过加密通道通过vps上网。
### License ### License