内网穿透神器:Ngrok在支付中的正确使用姿势 精选 原创 小柒2015 2018-06-07 09:02:53 ©著作权 文章标签 Ngrok 支付 内网穿透 文章分类 软件测试 ©著作权归作者所有:来自51CTO博客作者小柒2015的原创作品,请联系作者获取转载授权,否则将追究法律责任 前言 随着互联网的发展,无论是web服务还是移动APP越来越多的都集成了第三方支付(支付宝、微信、银联)。通常作为服务提供方,支付成功以后都会有一个后端回调URL来通知是否调用者是否支付成功,这个URL必须是公网环境,并且可以被访问到。然而在实际开发测试环境中,我们一般都是在内网开发,所以说对于支付测试是一件比较麻烦的事情。 内网穿透 这时候,我们就需要内网穿透服务来解决第三方服务无法回调的问题了,下面我们来稍微盘点那些流行的内网穿透技术。 Ngrok ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道。ngrok 可捕获和分析所有通道上的流量,便于后期分析和重放(百度百科)。 优点:使用方便,Docker容器化,配置简单,各平台支持,也可以自己搭建服务器 缺点:ngrok 是一个开源程序,官网服务在国外,国内访问国外速度慢。1.7+以后不再开源,收费才是持续发展的动力 国内也有相应的ngrok服务 natapp、frp、nat123端口映射、内网通、花生壳等等,这里就不一个个介绍了,有兴趣的可以自行谷歌,毕竟今天的主角是Ngrok。 下面一张图我们来了解一下Ngrok的穿透流程: 环境说明 云服务器Linux(centos7.4)、Nginx、Docker、hteen/ngrok Docker镜像,备案域名一枚 安装说明 这里省去了Docker安装说明,请自行安装Docker。 获取ngrok镜像: docker pull hteen/ngrok 启动 我们需要挂载宿机目录(E.g /data/ngrok)到容器的/myfiles目录 第一次运行,它将会在/data/ngrok目录下生成二进制文件和CA证书 sudo docker run --rm -it -e DOMAIN="ngrok.52itstyle.com" -v /data/ngrok:/myfiles hteen/ngrok /bin/sh /build.sh 安装成功会出现以下提示(省略中间过程): Generating RSA private key, 2048 bit long modulus .............................+++ .............................+++ e is 65537 (0x10001) Generating RSA private key, 2048 bit long modulus ...............................+++ ...............................+++ go get -tags 'release' -d -v ngrok/... go install -tags 'release' ngrok/main/ngrok build ok ! 客户端和服务端生成在/data/ngrok/bin目录下: bin/ngrokd 服务端 bin/ngrok linux客户端 bin/darwin_amd64/ngrok osx客户端 bin/windows_amd64/ngrok.exe windows客户端 启动Ngrok server 由于ngrok默认使用80和443端口,这里我们使用Nginx服务做转发,通过端口映射的方式访问Docker容器(参考docker-compose.yml配置)。 docker run -idt --name ngrok-server \ -v /data/ngrok:/myfiles \ -p 8082:80 \ -p 4432:443 \ -p 4443:4443 \ -e DOMAIN='ngrok.52itstyle.com' hteen/ngrok /bin/sh /server.sh 启动之后需要在nginx.conf 添加两条反向代理配置(HTTPS请求自行配置): server { listen 80; server_name ngrok.52itstyle.cn *.ngrok.52itstyle.com; location / { proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:8082; } } 配置DNS解析 服务启动后,要想正常运行,我们还需要添加两条A记录到云服务器(替换成自己的IP地址): 启动Ngrok client 首先从data/ngrok/bin目录下载各个环境下的客户端。 windows 环境 首先创建一个ngrok.cfg配置文件: server_addr: "ngrok.52itstyle.com:4443" trust_host_root_certs: false 使用cmd命令切换到对应的目录下,然后执行以下命令: ngrok.exe -config ngrok.cfg -subdomain doc 192.168.1.125:4999 如果出现以下界面,说明安装成功: Linux 环境 奇了个怪怪,linux下运行一直报以下错误,然并不清楚什么原因,有知道的小伙伴还望告知: -bash: ./ngrok: /lib/ld-musl-x86_64.so.1: bad ELF interpreter: 没有那个文件或目录 注意事项 防火墙需要开放4443端口,否则是无法连接成功的 微信二维码支付回调是需要域名认证的(后台只能录入一个URL),这个有点坑!!! 最后推荐一款支付宝,微信,银联详细代码案例:https://gitee.com/52itstyle/spring-boot-pay 参考 https://hub.docker.com/r/hteen/ngrok/ https://hteen.cn/docker/docker-ngrok.html https://github.com/hteen/docker-ngrok https://gitee.com/52itstyle/spring-boot-pay 赞 收藏 评论 分享 举报 上一篇:从构建分布式秒杀系统聊聊Lock锁使用中的坑 下一篇:从构建分布式秒杀系统聊聊限流特技 提问和评论都可以,用心的回复会被更多人看到 评论 发布评论 全部评论 () 最热 最新 相关文章 frp内网穿透详细教程 内网穿透(Port Forwarding)是将公网上的IP地址映射到内部网络中的一台计算机的某个端口上,以便外部网络可以访问该计算机中运行的应用程序。本次测试frp所使用的工具Frpc.zip 解压密码123qewfrp的原理如下:1.客户端向frp服务器发送请求。当客户端启动时,它会向frp服务器发送一条请求,请求服务器分配一个唯一的客户端ID。2.服务器返回分配的客户端ID。frp服务器将分配 客户端 服务器 目标机 网工,这才是跳纤的正确姿势! 晚上好,我的网工朋友。当你们看到下面这张图,内心是什么感想?这时你是不是巴不得把所有线全部拔了,来重新整一遍哈哈哈哈。那话说到这,到底该如何跳纤呢?有没有什么秘诀呢?遵循什么原则?流程之类的?当然是有的,而且答案就在这篇文章里,速看!今日文章阅读福利:《光纤通信系统第3版(432页)》私信发送暗号“光纤”,即可获取这本经典书籍,进一步吃透整个光纤通信系统。01 跳纤是什么?跳纤,顾名思义就是跳接光 配线架 运维 网络工程师 华为认证 UDP内网穿透和打洞原理与代码实现 1、众所周知,现在主流网络用的还是IPV4协议,理论上一共有2^32=43亿个地址,除去私有网段、网络ID、广播ID、保留网段、本地环回127.0.0.0网段、组播224.0.0.0网段、实际可用就是36.47亿个;全球的服务器、PC机、手机、物联网设备等需要通信的设备加起来远不止36.47亿,怎么才能尽可能让多的设备联网了?IPV6的地址有128位,理论上可以包含地球上每一粒沙子。但目前IPV4 服务器 IP 客户端 内网穿透神器:Ngrok在支付中的正确使用 前言随着互联网的发展,无论是web服务还是移动APP越来越多的都集成了第三方支付(支付宝、微信、银联)。通常作为服务提供方,支付成功以后都会有一个后端回调URL来通知是否调用者是否支付成功,这个URL必须是公网环境,并且可以被访问到。然而在实际开发测试环境中,我们一般都是在内网开发,所以说对于支付测试是一件比较麻烦的事情。内网穿透这时候,我们就需要内网穿透服务来解决第三方服务无法回调的... Ngrok wechat alipay Ngrok 内网穿透神器——上 你好呀!我是你们熟悉的涛哥。一个搬砖7年得Python的程序猿,我的视频号开始日更了,做了多年的幕后工作,现在尝试走向台前,真人出镜,希望大家多多支持。内容上都是硬核程序员、副业赚钱干货... 日常 Ngrok 内网穿透神器——下 你好呀!我是你们熟悉的涛哥。一个搬砖7年得Python的程序猿,我的视频号开始日更了,做了多年的幕后工作,现在尝试走向台前,真人出镜,希望大家多多支持。内容上都是硬核程序员、副业赚钱干货,肯定会对你有所帮助。为什么要关注我:作为一名程序员创业者,今年是我做自由职业得第一年。目前:1. 7年研发经验,带过团队,做过PM,懂产品会运营,知商务,会分享非常多副业赚钱方式方法,也教你避开各 Python ngrok 内网穿透/映射神器 原文:http://www.yaosansi.com/post/ngrok-secure-introspectable-tunnels-to-localhost1. ngrok介绍ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道。ngrok 可捕获和分析所有通道上的流量,便于后期分析和重放ngrok官方: https://ngrok.com/2. ng ngrok Ngrok-内网穿透 Ngrok-内网穿透内网穿透步骤1、安装go语言环境并配置环境2、下载ngrok源码(可上传源码或安装git下载源码 yum install git)3、生成证书(本地生成)4、用新证书替换旧证书5、编译源码6、生成对应客户端7、启动服务端8、客户端配置、启动9、启动本地项目、访问公网ip或域名10、其他部分内容原文地址:CSDN:STU2020:简单记一下ngrok内网穿透入门步骤(可以直... 安全机制 Ngrok:内网穿透 1. 解压安装在Linux/Mac OS平台,你需要使用一下命令进行解压. 在 Windows平台,只需要双击ngrok.zip提取文件.unzip /path/to/ngrok.zip连接你的账户运行下面的命令, authtoken将被添加到你默认的ngrok.yml配置文件. 这将保证你访问到更多功能,并且保持更长的会话的时间。 已经运行的隧道可以在看板上的终端页面列出来。ng Ngrok 内网穿透 内网穿透工具ngrok使用教程 1、ngrok介绍:ngrok是一款可以将内网IP和端口暴露到公网上的工具,解决了在没有固定公网IP的情况下依然可以从公网访问自己内网的项目,是一个内网穿透的解决方案。/2、获取Authtoken:(1)注册账号,并登录;(2)登录dashboard,点击左侧“Your Authtoken”,复制右侧的Authtoken: 3、内网Cen ngrok 内网穿透 Ngrok内网穿透利器 一、作用 利用ngrok,可以让外网访问内网服务二、常见使用场景 1. 外网回调(比如:支付回调) 2. 开发阶段联调 3. 微信开发三、使用 1. 下载(http:// ngrok 内网穿透 Ngrok实现内网穿透 Ngrok服务器我选了www.ngrok.cc,网上叫sunny-ngrok。注册账号https://www.ngrok.cc/login 完了就登录开始管理隧道,就是tunnel。开通隧道,有钱的选10元每月的,没钱的,选免费的填好二级域名的前缀、本地主机的内网IP和端口,确认开通到这一步,外网访问内网就完成了。 客户端 内网 二级域名 Ngrok内网穿透配置 文章目录工具下载账号注册配置启动访问测试工具下载访问ngrok官网,下载ngrok 软件,如下:下载windows版本,解压后可以看到 ngrok.exe程序账号注册在ngrok官网点击注册,注册账号(也可以直接使用github认证直接登录)注册并登录成功后可以在个人中心中找到authtoken如下:配置启动打开命令行工具(在ngrok.exe 官网 web服务 命令行工具 ngrok | 内网穿透工具 ngrok百度:ngrok是一个反向代理,通过在公共的端点和本地运行的web服务器之间建立一个安全的通道。ngrok可捕获和分析所有通道上的流量,以便后期分析和重放。其实说白了,ngrok就是一款内网穿透的工具。反向代理和内网穿透:反向代理定义:反向代理就是代理服务器收到客户端的请求,将请求转发给能真实处理业务请求的服务器,等服务器处理完毕之后拿到处理的结果,再返还给客户端。怎么区别是正向代理 java 反向代理 内网穿透 客户端 免费内网穿透 ngrok 需要2块验证下。 golang linux 定时任务 自动启动 内网穿透软件-ngrok 内网穿透软件-ngrok 内网 手机端 内网穿透 【内网穿透】ngrok实现内网穿透详细教程 内网穿透概念什么是内网穿透?内网穿透,也即 NAT 穿透,进行 NAT 穿透是为了使具有某一个特定源 IP 地址和源端口号的数据包不被 NAT 设备屏蔽而正确路由到内网主机。UDP 内网穿透的实质是利用路由器上的NAT 系统。NAT 是一种将私有(保留)地址转化为合法IP地址的转换技术,它被广泛应用于各种类型 Internet 接入方式和各种类型的网络中。NAT可以完成重用地址,并且对于内部的网络 NAT 内网穿透 ngrok 远程 夏明亮 Ngrok —— 内网转发神器 今天小编要给大家推荐一款开源神器—— ngrok。相信做过微信开发的童鞋都不同程度上遇到过这样的问题,那就是苦于微信的开发模式,必须提供一个可以外网访问的域名和服务器。因此我们只能在服务器中开发,或者在本地完成开发之后到服务器上测试。这就苦了我们这些没有域名或者服务器的宝宝们。那么如何解决这样一个问题呢?现在好了,小编今天要给大家推荐这款神器可以完美解决这个问题啦。那么 ngrok 到底可以给我们 java Ngrok内网穿透服务搭建 第一次发个博客好激动啊,总之(@¥%#¥%¥#@……#¥……%@#%¥&%……&¥%……!#¥#%%¥@……%¥&%……*@#%@!#¥@!¥#!¥#!……此处省略99999字)对你们深深的思念。好了,废话不多说了,下面开始接受Ngrok服务作用####注明这篇博文全部为手敲Ngrok服务简单介绍首先ngrok服务是一个内网穿透的服务他可以通过你已有的服务器(前提是有公网) Ngrok 内网 穿透 Ngrok内网穿透(Linux系统) 使用Ngrok做内网穿透什么是内网穿透:也就是让内网的设备能连接到公网;内网穿透的原理是利用一个公共服务器作为代理服务器,将内网中的请求转发到互联网上,并将互联网上的请求转发到内网中。下载客户端(官网)开通隧道(注册)管理隧道—开通隧道(选择免费的即可)记得备案,否则服务器会被封名称:随便 前置域名:随便 本地端口:可以为同一个局域网内任意一台机器进行映射,只需要填对ip和端口就行 http验证用 Ngrok内网穿透 内网穿透 内网 请求转发