ngrok客户端使用&ngrok服务搭建——实现外面调试本地站点

前言

这里不是完整教程,仅记录ngrok搭建过程中一些坑和ngrok理解。

ngrok客户端

推荐一个免费的ngrok服务器,按里面说的使用一遍,应该明白ngrok的作用和ngrok客户端的概念了。

ngrok服务端

上面是用了别人搭好的ngrok服务器,这里用自己的服务器搭一个ngrok服务。
这里教程很详细。

最好严格按照教程顺序
  • 例如第一步是域名解析,我原本的理解是,域名解析只在请求域名时作用(即即使没有设置域名解析,只要下面的配置正确,ngrok服务端开启会正常,客户端连接服务端也显示正常,只是在浏览器地址栏输入域名时得不到结果而已),然而事实并非如此,第一次设置域名解析没设置好,下面配置都正确了,服务端开启成功,客户端一直Tunnel Status一直显示reconnecting,然后肯定不敢确定配置都正确,弄了很久,发现域名解析没弄好…
  • 生成证书,开启服务,生成客户端,顺序最好也按教程来吧…
端口区分:
  • 最关键的端口是隧道端口:服务端和客户端的隧道端口设置要一致。服务端在开启服务时设置ngrok目录/ngrokd -tunnelAddr ***,缺省默认是4443。客户端在配置文件配置server_addr:域名:4443
  • http端口,https端口,或其他端口,在服务端,客户端都有的,服务端都是通过开启时指定参数设置,客户端的可以在配置文件设置,也可以在开启时设置…好啰嗦,其实,开启成功,看客户端显示,就立马明白了
Tunnel Status                 online
Version                       1.7/1.7
Forwarding                    http://aa.ngrok.kbell.me:8088 -> 127.0.0.1:80
Forwarding                    https://aa.ngrok.kbell.me:8088 -> 127.0.0.1:80
Web Interface                 127.0.0.1:4040
# Conn                        0
Avg Conn Time                 0.00ms
将ngrok服务加入到system管理

vim /usr/lib/systemd/system/ngrokd.service,添加下面内容,保存并退出

[Unit]
Description=ngrok
After=network.target

[Service]
ExecStart=/usr/local/ngrok/bin/ngrokd -domain=域名 -httpAddr=:8088 -httpsAddr=:8089

[Install]
WantedBy=multi-user.target

然后就能通过systemctl start|stop|status ngrokd.service管理

注1:环境是centos7
2.-domain=域名 -httpAddr=:8088等,不要加双引号括着!

客户端使用批处理脚本

如果是客户端是windows环境的话,模仿这里,写个批处理脚本,使用时方便些。

相关链接

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要搭建 ngrok 服务器,首先需要在本地安装 ngrok,安装完成后在命令行中输入 `ngrok authtoken <YOUR_AUTH_TOKEN>` 来设置认证令牌。 接下来,使用 `ngrok http <port>` 来启动服务,其中 <port> 是您要映射到公网的本地口号。 例如,如果您的本地服务器运行在 80 口上,则可以使用 `ngrok http 80` 启动服务。 启动后,将会得到一个公网 URL,可以将这个 URL 分享给其他人访问您的本地服务器。 注意:如果要使用自定义域名,需要购买 ngrok 高级版本。 ### 回答2: 搭建ngrok服务器是一种将内网服务暴露到公网的方法。首先需要在服务器上安装ngrok软件,可以通过官方网站下载对应的二进制文件。得到二进制文件后,解压并将可执行文件复制到系统的可执行路径下。 在服务器上创建一个用于存放ngrok配置文件和证书的目录,例如/opt/ngrok。在该目录下创建一个自定义的域名配置文件,例如ngrok.yml,用于配置需要暴露的服务和域名信息。在该文件中,我们需要配置tunnels部分,指定需要暴露的服务口号。 接下来,生成SSL证书用于支持HTTPS协议。运行以下命令: ``` # 生成CA私钥并自签名CA证书 $ openssl genrsa -out rootCA.key 2048 $ openssl req -x509 -new -nodes -key rootCA.key -subj "/CN=ngrok" -days 3650 -out rootCA.pem # 生成服务器私钥和证书签名请求(CSR文件) $ openssl genrsa -out server.key 2048 $ openssl req -new -key server.key -subj "/CN=your-domain.com" -out server.csr # 使用CA私钥和签名请求生成服务器证书 $ openssl x509 -req -in server.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out server.crt -days 3650 ``` 将生成的证书文件(rootCA.pem和server.crt)放入ngrok服务器目录。 接下来需要配置ngrok客户,将ngrok服务器的域名、口和SSL证书配置到ngrok客户中。在本地机器上下载和配置ngrok客户,根据服务器上的域名和口号进行配置。将生成的根证书rootCA.pem放入客户的.ngrok文件夹里,并运行以下命令启动ngrok客户: ``` $ ngrok client -config=ngrok.cfg -subdomain=subdomain your-service-host:port ``` 通过以上步骤,即可成功搭建ngrok服务器,实现将内网服务暴露到公网。接下来可以通过ngrok客户访问公网上的服务使用域名和口号即可访问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值