ngrok 的配置文件是完全可选的非常简单 YAML 格式文件,他可以允许你使用 ngrok 一些更高级的功能,例如:
- 同时运行多个隧道
- 连接到自定义的 ngrok 服务器
- 调整 ngrok 一些很神秘的功能
ngrok 的配置文件默认从 ~/.ngrok
加载。你可以通过 -config
参数重写配置文件的地址
同时运行多个隧道
为了运行多个隧道,你需要在配置文件当中使用 tunnels
参数配置每个隧道。隧道的参数以字典的形式配置在配置文件当中。举个例子,让我们来定义三个不同的隧道。第一个隧道是一个有认证的只转发 https 的隧道。第二个隧道转发我们自己机器的 22 端口以便让我可以通过隧道连接到自己的电脑。最后,我们使用自己的域名创造了一个隧道,我们将要在黑客马拉松中展示这个。
tunnels:
client:
auth: "user:password"
proto:
https: 8080
ssh:
proto:
tcp: 22
hacks.inconshreveable.com:
proto:
http: 9090
通过 ngrok start
命令,我们可以同时运行三个隧道,后面要接上我们要启动的隧道名。
ngrok start client ssh hacks.inconshreveable.com
终端现在看上去应该是这样的:
ngrok
Tunnel Status online
Version 1.3/1.3
Forwarding https://client.ngrok.com -> 127.0.0.1:8080
Forwarding http://hacks.inconshreveable.com -> 127.0.0.1:9090
Forwarding tcp://ngrok.com:44764 -> 127.0.0.1:22
...
隧道设置
每一个隧道都可以设置以下五个参数:proto
,subdomain
,auth
,hostname
以及 remote_port
。每一个隧道都必须定义 proto
,因为这定义了协议的类型以及转发的目标。当你在运行 http/https 隧道时, auth
参数是可选的,同样, remote_port
也是可选的,他声明了某个端口将要作为远程服务器转发的端口,请注意这只适用于 TCP 隧道。 ngrok 使用每个隧道的名字做到子域名或者域名,但你可以重写他:
tunnels:
client:
subdomain: "example"
auth: "user:password"
proto:
https: 8080
现在当你运行 ngrok start client
的时候,他将会有这样的效果:example.ngrok.com -> 127.0.0.1:8080
。相似的,这对自定义域名同样适用,他可以让你通过别名的方式是隧道名更短。
tunnels:
hacks:
hostname: "hacks.inconshreveable.com"
proto:
http: 9090
对于 TCP 隧道,你可以会通过 remote_port
参数来指定一个远程服务器的端口作为映射。如果没有声明,服务器将会给你随机分配一个端口。
tunnels:
ssh:
remote_port: 60123
proto:
tcp: 22
其他设置选项
通过在配置文件的顶级配置中声明其他可选的选项,ngrok 的配置文件还可以让你做一些更有趣的事情。举个例子,当你在与 ngrok.com 服务器交互的时候可能需要声明 auth_token
。当你需要改变 ngrok 自带的 web 调试工具所绑定的端口是,你可能需要声明 inspect_addr
。
auth_token: abc123
inspect_addr: "0.0.0.0:8888"
tunnels:
...
连接到自定义的 ngrok 服务器
ngrok 支持连接到其他的 ngrokd 服务器上,即便他们并不托管在 ngrok.com 上。首先,显然你必须正确的配置好你的 ngrokd 服务器。如何配置你自己的 ngrokd 服务器请看这里:运行你自己的 ngrokd 服务器。当你运行了你自己的 ngrokd 服务器,你需要设置两个参数来让 ngrok 安全的连接到你的服务器。首先,你需要设置 server_addr
来支出你服务器的地址。然后你需要设置 trust_host_root_certs
来确保你的 TLS 连接安全。
server_addr: "example.com:4443"
trust_host_root_certs: true
tunnels:
...
在 http 代理下运行
最后,你可以设置 ngrok 在 http 代理下运行,这有时候是很有必要的如果你在一个高度限制的企业网络中时。 ngrok 遵守标准的 Unix 环境变量 http_proxy
, 但你也可以通过在配置文件中声明 http_proxy
参数来指定。
http_proxy: "http://user:password@10.0.0.1:3128"
tunnels:
...
相关推荐
1. **解压并运行:**首先,你需要解压"ngrok2.3.35.rar",得到"ngrok.exe"文件。双击运行该文件,ngrok便会在命令行界面启动。 2. **配置和授权:**ngrok的高级功能需要注册账号并登录。首次运行ngrok时,它可能会...
ngrok是一款强大的内网穿透工具,它允许用户将本地的开发环境或服务器暴露到公共互联网上,无需复杂的网络配置。这个“ngrok免安装.zip”压缩包提供了无需安装即可使用的ngrok版本,大大简化了用户的操作流程,尤其...
ngrok.exe本地服务映射工具.解压即用,含使用说明文档.rar
1. **获取源码**:首先,你需要从ngrok的官方仓库或者第三方源获取源代码。在这个案例中,压缩包中包含了ngrok的源码。 2. **编译环境**:ngrok是用Go语言编写的,因此确保你已经安装了Go的开发环境。你需要设置...
1. 解压缩文件:`tar -zxvf Ngrok.py-0.185.tar.gz` 2. 进入解压后的目录:`cd Ngrok.py-0.185` 3. 安装库:`python setup.py install` 安装完成后,就可以在Python项目中导入Ngrok.py库,利用其提供的功能。例如,...
ngrok是一款虚拟内网穿透小工具,专用于,对内外网穿透无法联调,支付接口调用,联调等问题的处理,期待大家下载安装使用
《PyPI官网下载 | Ngrok.py-0.215.tar.gz》 PyPI(Python Package Index)是Python开发者发布和获取Python软件包的主要平台。本文将深入探讨PyPI、Ngrok.py库以及如何从PyPI下载和使用该库。 首先,让我们了解PyPI...
ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道。ngrok 可捕获和分析所有通道上的流量,便于后期分析和重放。 反向代理在计算机网络中是代理服务器的一种。服务器根据...
1. **Windows**:在 Windows 上,用户需要下载对应版本的 ngrok 客户端,解压后运行 ngrok.exe 文件,根据命令行提示进行配置,例如启动一个 HTTP 隧道。 2. **Linux**:对于 Linux 用户,同样需要下载客户端,解压...
标题中的"ngrok.rar 免费内网穿透技术"指的是ngrok提供的免费版服务,用户可以利用它实现内网服务的公网暴露,无需昂贵的服务器或复杂的网络设置。描述中提到,ngrok的积分要求较低,下载时仅需33积分,这使得它对...
ngrok就是一款广受欢迎的内网穿透工具,而“ngrok.rar”则包含两个不同版本的ngrok可执行文件:ngrok.exe和ngrok_2.exe。 ngrok.exe是官方版本的ngrok,由Alan Shreve开发,其工作原理是建立一个安全的隧道,将外部...
ngrok.exe使用说明:1.将startup.bat用词本等软件编辑打开2. -subdomain ts 8080 ---ts 为二级域名,修改成你自己想要的,有些可能已被使用则换一个。8080 为本地项目端口 例如项目:localhost:8080/ 则写8080...
1. 在Jenkins中创建新Job,选择“构建一个自由风格的软件项目”。 2. 配置源代码管理,如Git或SVN,确保能正确拉取项目代码。 3. 添加构建步骤,选择“Execute SonarQube Scanner”,填入从SonarQube获取的项目密钥...
这个工具在IT行业中尤其受到开发者和测试人员的欢迎,因为它简化了远程访问本地服务的过程,无需配置复杂的网络设置或者购买公开IP。下面将详细介绍ngrok的工作原理、功能以及如何使用。 ### 工作原理 ngrok 创建了...
综上所述,ngrok.rar文件是ngrok的软件包,包含了运行ngrok所需的一切,通过简单的配置和命令,你可以轻松地将本地服务暴露给外网,这对于开发、测试和协作非常有帮助。使用过程中,请确保遵循官方文档和最佳实践,...
ngrok工具,临时用来开个测试网站远程什么的,备用
标题中的“ngrok和远程桌面配置”涉及到两个主要的IT知识点:ngrok和远程桌面连接。ngrok是一款强大的工具,它允许用户从公共互联网安全地访问本地开发环境,而无需公开暴露个人网络。远程桌面连接则是一种技术,...
1. **安装与启动**:解压sunny-ngrok.zip后,找到并运行可执行文件,按照提示进行设置。 2. **命令行参数**:ngrok通常接受一系列命令行参数来配置隧道,如指定暴露的端口、自定义域名等。 3. **在线控制台**:ngrok...
1. **ngrok源码**:ngrok的源代码是用Go语言编写的,Go是Google开发的一种静态类型、编译型、并发型且具有垃圾回收功能的编程语言。通过源码,开发者可以深入了解ngrok的工作原理,甚至可以根据需求对其进行定制和...
3,执行 ngrok -config=ngrok.cfg -subdomain xxx 80 //(xxx 是你自定义的域名前缀) 4,如果开启成功 你就可以使用 xxx.ngrok.xiaomiqiu.cn 来访问你本机的 127.0.0.1:80 的服务啦 5,如果你自己有顶级域名,想通过自己...