Ngrok 内网穿透神器(转载)
mac上配置web服务:
http://note.rpsh.net/posts/2013/11/27/osx-10-9-apache-server-php-mysql/
由于开发Web项目,经常需要将本地部署的网站让外网能直接访问到,最便捷的做法当然是在ADSL路由器上直接做端口映射,很不幸大部分运营商都屏 蔽了80等常用端口,曾经的做法是在公网一台VPS上架设OpenVPN,将笔记本和VPS连到一个虚拟局域网,再用iptables做端口转发来达到目 的,虽然可行,但速度比较慢,由于线路不稳定造成掉线几率较高。偶然发现还有个叫ngrok的神器专门做了这件事,不但提供了一个在外网能够安全的访问内 网Web主机,还能捕获所有请求的http内容,方便调试,甚至还支持tcp层端口映射,不局限于某一特定的服务。支持Mac OS X,Linux,Windows平台。
ngrok下载运行
体积很小,官网下载后直接解压得到一个二进制文件,在shell中执行./ngrok 80即可,默认会分配随机的二级域名来访问,转发到本机的80端口。可以通过-help参数来查看详细的说明,运行后如下提示:
ngrok (Ctrl+C to quit) Tunnel Status online Version 1.7/1.6 Forwarding http://****.ngrok.com -> 127.0.0.1:80(****为随机分配) Forwarding https://****.ngrok.com -> 127.0.0.1:80(****为随机分配) Web Interface 127.0.0.1:4040 # Conn 0 Avg Conn Time 0.00ms
提示online后,表示已经成功进行转发了.这时候运行http://****.ngrok.com或者https://****.ngrok.com都可以访问到127.0.0.1:80上。通过ngrok提供的web管理界面127.0.0.1:4040可以清楚看到当前有哪些连接,以及请求的 url,可以进行replay。
ngrok常用示例
- 采用自定义二级域名sqzr.ngrok.com转发到本机的80端口(首先需要在官方注册账号,注册完成后,会分配一个authtoken)。ngrok -authtoken kZeyT4j-Lc7H9cRbPZXq -subdomain sqzr 80
- tcp端口转发,这意味着可以在外网ssh到本机了,当然外网端口是随机分配的。ngrok -proto=tcp 22
- 转发到局域网其他的机器。ngrok 192.168.0.1:80
- 绑定顶级域名(付费才可用),在dashboard中添加域名,将域名cname解析到ngrok.com即可。ngrok -authtoken kZeyT4j-Lc7H9cRbPZXq -hostname test.sqzr.com 80
ngrok配置文件
ngrok可以将参数写到文件中,默认是放在~/.ngrok。(windows为:C:\Users*.ngrok)
tunnels: client: auth: "user:password" proto: https: 8080 ssh: proto: tcp: 22 test.dorole.com proto: http: 9090
这里定义了三个隧道,client表示转发http到本机8080,同时要求验证,ssh表示支持远程访问,第三个是绑定了域名转发到 9090。这时候只需要一个./ngrok start client ssh test.dorole.com即可快速启动这三个隧道服务。
每一个隧道的配置节点都有五个参数,proto,subdomain,auth,hostname和remote_port,每个隧道必须有 proto参数来指定本地地址和端口。auth参数用于在http(s)中身份认证,而remote_port用于在tcp隧道中指定远程服务器端口。如 果没有配置subdomain参数,ngrok会默认一个二级域名与隧道节点一样的名字。
配置文件中的其他参数
authtoken: abc123 inspect_addr: "0.0.0.0:8888" tunnels: ...
authtoken用于设置登录ngrok的授权码,可以在ngrok首页的dashboard中查看到。inspect_addr用于设置监 听ip,比如设置为0.0.0.0:8080意味着监听本机所有ip的8080端口上。ngrok也支持自己架设ngrokd服务器,在配置中通过 server_addr: “dorole.com:8081″来指定自己搭建的服务器地址。设置trust_host_root_certs: true来支持TLS加密协议的证书信任。ngrok支持http proxy,可以将ngrok配置成一个http代理,这在本机网络受限制的地方用比较合适。
转载自:https://sqzr.cc/blog/2014/06/28/ngrok_nei_wang_chuan_tou_shen_qi/
Ngrok 内网穿透神器(转载)的更多相关文章
- ngrok内网穿透神器
ngrok类似国内的花生壳,可以将本地的内网映射到公网上,这样就可以做web开发,微信开发了.下面就介绍下ngrok是怎么配置的吧. 方式一: 一.打开ngrok的官网https://ngrok.co ...
- Ngrok 内网穿透利器
Ngrok是什么 Ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道.Ngrok 可捕获和分析所有通道上的流量,便于后期分析和重放 为什么要使用Ngrok ...
- 内网穿透神器(ngrok)服务端部署【分享一台自己的ngrok服务器】【多平台】
Ngrok为何物 “ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道.ngrok 可捕获和分析所有通道上的流量,便于后期分析和重放.”这是百度百科上给Ng ...
- ngrok内网穿透(微信调试:只试用于微信测试账号)
一.简介 ngrok:https://ngrok.com 功能:就是把外网地址映射到本地的内网地址 缺点: 1.免费版生成的域名是随机的(由于我是用于调试,就没什么关系,如果是正式生产环境可能需要一个 ...
- 内网穿透神器ngrok——将本地项目驾到外网
相信做Web开发的同学们,经常会遇到需要将本地部署的Web应用能够让公网环境直接访问到的情况,例如微信应用调试.支付宝接口调试等.这个时候,一个叫ngrok的神器可能会帮到你,它提供了一个能够在公网安 ...
- 内网穿透神器ngrok
相信做Web开发的同学们,经常会遇到需要将本地部署的Web应用能够让公网环境直接访问到的情况,例如微信应用调试.支付宝接口调试等.这个时候,一个叫ngrok的神器可能会帮到你,它提供了一个能够在公网安 ...
- 内网穿透神器ngrok(转)
相信做Web开发的同学们,经常会遇到需要将本地部署的Web应用能够让公网环境直接访问到的情况,例如微信应用调试.支付宝接口调试等.这个时候,一个叫ngrok的神器可能会帮到你,它提供了一个能够在公网安 ...
- ngrok内网穿透利器在windws下的使用
1.到官网下载windows版本:https://ngrok.com/download 2.解压,双击“ngrok.exe” 3.输入“ngrok http 80”,会随机给你分配域名.见下图. ng ...
- [svc]frp内网穿透
什么是穿透 可以任意暴漏内网任何服务,加入你在你的办公网络有台pc,可以上网就可以了, 你可以在你电脑上安装各类服务器, 暴漏如80 22等端口, 注意 这可以暴漏到公网哦, 在出口不做任何nat情况 ...
随机推荐
- sql查看当前周数
select datepart(wk,cast(getdate() as datetime))
- c# dataset 索引0没有值
datatable绑定到dataGrieView,在刷新datatable的数据时,常会bug:索引0没有值或索引(int)x没有值 昨天弄了一个下午,发现bug原因: dataGridView中有数 ...
- 实现Win7远程桌面关机和重启
通过远程桌面控制Win7系统时,菜单中没有关机和重启按钮, 1.方法1 关机 shutdown -s -t 0重启 shutdown -r -t 0 可以先打开运行框(Win+R键),输入上述命令即可 ...
- zabbix一些高级功能介绍
根据上篇配置的环境,接下来说明在zabbix agent上执行远程命令是如何完成的. 远程命令受到一些限制: (1)在agent执行远程命令必须给zabbix用户定义sudu规则: (2)不支持act ...
- ViewGroup 和 View 事件传递及处理小谈
前言 在自定义组件的时候少不了会去处理一些事件相关的东西,关于事件这块网上有很多文章,有说的对的也有说的不对的,我在理解的时候也有过一段时间的迷惑,现在把自己理解的东西写下来,给有相同疑问的朋友提供些 ...
- python解析xml模块封装代码
在python中解析xml文件的模块用法,以及对模块封装的方法.原文转自:http://www.jbxue.com/article/16586.html 有如下的xml文件:<?xml vers ...
- htaccess rewrites重写规则实例
1..htaccess rewrite实例开始部分 Options +FollowSymLinksRewriteEngine OnRewriteBase / 2.把不带www的域名地址重定向到带www ...
- Struts2中的namespace使用
namespace一般在项目比较复杂的情况下使用较好. 在struts2的项目中,namespace主要在以下环境中常使用: 1. 在配置文件中(struts.xml)以及被它包含的XX.xml文件中 ...
- 关联参数(&的用法)
<?php header("Content-Type:text/html;charset=gb2312"); function test1(&$a){ $a.=&qu ...
- 2016/09/21 java split用法
public String[] split(String regex) 默认limit为0 public String[] split(String regex, int limit) 当limit& ...