goproxy实现内网穿透
前提条件,有台公网ip的服务器,内网服务电脑可以访问外网。
goproxy文档
一、服务器安装ProxyAdmin
1、下载后上传到服务器,解压
找到 releases 目前最新是5.0的版本,点击进去
找到和服务器匹配的包文件,点击下载
然后上传到服务器上进行解压
tar -zxvf proxy_admin_free-master.zip
2、运行命令安装运行
安装
./proxy-admin install
卸载服务
proxy-admin uninstall
启动服务
proxy-admin start
停止服务
proxy-admin stop
重启服务
proxy-admin restart
备份数据
proxy-admin backup
恢复备份的数据
proxy-admin restore
3、浏览器访问管理网站
访问前记得配置防火墙
地址:服务器ip+32080
用户名:root
密码:123
二、服务器安装goproxy
1、下载对应cpu的安装包
我使用的ubuntu系统,通过 以下命令查看
lscpu
找到对应的安装包,下载
上传到服务器,并解压
三、内网电脑安装客户端
和步骤二一样,找到对应cpu的安装包,下载下来解压到文件夹就行
四、配置启动
比如,我想访问内网电脑的80端口
服务器IP是:33.33.33.33
服务器代理ip是:28080
最终访问地址是33.33.33.33:28080
1、下载证书
登录ProxyAdmin网页
找到证书管理,打开签发模式开关,下载crt和key两个文件到内网客户端安装目录。
将证书上传到第二步的安装目录
2、启动服务器
goproxy安装目录执行以下代码
./proxy bridge -p ":33080" -C proxy.crt -K proxy.key
# 通过以下命令在后台运行
./proxy bridge -p ":33080" -C proxy.crt -K proxy.key --log proxybrdge.log --daemon
同样命令再运行以下命令
./proxy server -r ":28080@:80" -P "127.0.0.1:33080" -C proxy.crt -K proxy.key
# 后台运行
./proxy server -r ":28080@:80" -P "127.0.0.1:33080" -C proxy.crt -K proxy.key --daemon
3、内网客户端运行命令
proxy client -P "33.33.33.33:33080" -C proxy.crt -K proxy.key
到此,应该就可以通过服务器ip加端口访问到内网的服务了。
其他操作
穿透多个端口,在server端配置多个-r参数
./proxy server -r ":80@:80" -r ":5005@:5005" -r ":3389@:3389" -P "127.0.0.1:33080" -C proxy.crt -K proxy.key --forever --log proxyserver.log --daemon
开启p2p,在server、client 、bridge三个启动的时候都加上 --p2p 参数
生成证书
proxy keygen -C proxy
生成指定域名证书
proxy keygen -C proxy -n test.com