CentOS7(64位)搭建私有ngrok内网穿透转发服务

CentOS7(64位)搭建私有ngrok内网穿透转发服务

准备工作:
1.需要一台外网服务器(ps:我的是阿里云的)
2.需要一个已经备案的域名
3.二级或者顶级域名都可以

安装程序依赖

yum install gcc mercurial bzr subversion golang golang-pkg-windows-amd64 golang-pkg-windows-386 git -y

用git下载ngrok包

git clone https://github.com/inconshreveable/ngrok.git
(这里目录的话自己选择就可以)

生成自签名证书

cd ngrok

mkdir ssl

cd ssl

export DOMAIN=“这里是你的域名”

openssl genrsa -out root.key 2048

openssl req -x509 -new -nodes -key root.key -subj “/CN=$DOMAIN” -days
5000 -out root.pem

openssl genrsa -out service.key 2048

openssl req -new -key service.key -subj “/CN=$DOMAIN” -out service.csr

openssl x509 -req -in service.csr -CA root.pem -CAkey root.key -CAcreateserial -out service.crt -days 36500

注意:
1.如果没有做域名解析的小伙伴们,需要做一下域名解析,解析到你的外网服务器ip地址
2.如果是云服务器的有安全组的需要配置端口放行,一般ngrok默认的是http 80
https 443 这个也可以自己定义如果配置了安全组还有问题,请检查防火墙放行端口

覆盖并替换我们生成的证书文件

cp root.pem …/assets/client/tls/ngrokroot.crt

cp service.crt …/assets/server/tls/snakeoil.crt

cp service.key …/assets/server/tls/snakeoil.key

生成服务端与客户端(根据系统需要选择)

cd ngrok

##服务端生成命令
#Linux
GOOS=linux GOARCH=386 make release-server (32位)
GOOS=linux GOARCH=amd64 make release-server(64位)
#Mac
GOOS=darwin GOARCH=386 make release-server
GOOS=darwin GOARCH=amd64 make release-server
#Windows
GOOS=windows GOARCH=386 make release-server
GOOS=windows GOARCH=amd64 make release-server

##客户端
#Linux
GOOS=linux GOARCH=386 make release-client (32位)
GOOS=linux GOARCH=amd64 make release-client(64位)

#Mac
GOOS=darwin GOARCH=386 make release-client
GOOS=darwin GOARCH=amd64 make release-client

#Windows
GOOS=windows GOARCH=386 make release-client
GOOS=windows GOARCH=amd64 make release-client

如果执行成功会在ngrok的bin目录下生成对应系统的目录
由于我的客服端是windows10 64位的 我生成后就是ngrok的bin目录下面的windows_amd64下面有个ngrok.exe 把这个下载到本地的电脑上

服务端开启服务

./bin/ngrokd -domain=“你的域名” -httpAddr=“:80” -httpsAddr=“:443”
如果你配置的都是默认端口 就不用输入后面的了 但是自定义的端口 需要修改成自己的

客户端使用

在电脑新建一个文件夹,将下载下来的ngrok.exe文件放在下面
新建一个ngrok.cfg 文件写入
server_addr: “你的域名:4443”
trust_host_root_certs: false
在新建一个批处理的start.bat 启动文件写入
@echo on
cd %cd%
ngrok -config=ngrok.cfg -log=ngrok.log -subdomain=www 89

-config 是ngrok客户端启动的配置文件
-log 是日志文件
subdomain为自定义的域名前缀
后面这个89 就是你本地应用的端口例如127.0.0.1:89 可以自己修改想要的

连接成功的效果连接成功的效果

end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一往无前fgs

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值