SSH Tunnel把个人PC变成“幕后boss”的示例分析
本篇文章为大家展示了SSH Tunnel把个人PC变成“幕后boss”的示例分析,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
指路牌
SSH Tunnel
端口转发
网上有帖子提到SSH Tunnel与端口转发是不同的,这里我没有深入研究两个名词的具体区别,从结果上来说,我是被SSH Tunnel这个名词引到这个知识点的,但实现的效果很像“端口转发”,姑且都写上吧。
适用场景
希望在自己电脑本地启动服务,让Internet发向服务器的请求转向自己的电脑,从而使调试更便利。
该debug模式只有特殊情境:如强制需要固定IP等才会用到,并不具有普遍性。
网上大多教程是将端口映射到局域网内某设备上,应该都出出自运维向从业者的,作为开发者本blog简化场景就是将服务器的端口映射到自己电脑上。
环境
Linux、windows、Mac均可
背景
最近由于工作原因,接手了一个与微信公众号相关的项目。项目部署起来后发现功能不能完全跑通,因此需要打断点检查问题到底出在了什么地方。由于开发涉及微信公众平台,其要求将ip加到白名单内,因此需要“固定IP”,又由于项目部分模块需要使用https,在搭建https比本地要便捷。以上两条原因让我选择使用端口映射。
实现
ssh -p22 -i NAME.pem -N -R 0.0.0.0:8080:127.0.0.1:8080 USER@IP
嗯,就是这么简单,一条指令就可以了………
NAME.pem: pem文件,记得将执行路径索引到pem文件下,或者写成pem的绝对路径。如果使用帐号密码登录的话,去掉-i NAME.pem, 命令输入后会要求输入密码,效果相同
USER: 登录服务器用户名,如:root
IP: 服务器的公网IP地址
备注
一般博客都会讲到 -L -D,但是由于在我的场景中,不会使用到这两种模式,这里不做介绍了。
要从微信服务器拿取token,实际上并不一定非要使用具有固定IP的服务器,实际上将个人电脑的临时IP加入到微信IP白名单同样可以拿取到token,但弊端是动态IP会变化,因此需要在IP变动时进行替换,比较麻烦。
在使用端口映射时我就冒出过另外一个问题,端口映射能够将服务器的某个端口接收到的服务都映射到本地电脑,但如何控制本地电脑所有发出的请求也走服务器昵?我们都知道本地发起网络请求时,发起请求的端口是不完全可控的。因此即使使用了端口映射,无非是实现了一个代理人将听到的话讲述给我,但我还是要和外来者直接对话的局面,如下图。如果我想当一个“幕后boss”,完全经由代理人来完成转化呢?
我们唯一需要做的就是让个人电脑发起的所有请求都经过具有固定ip的云服务器来完成,推荐工具比如“TinyProxy”。
当端口映射和TinyProxy均搭建起来后,ECS将变成我们PC在Internet的代言人。自己也就变成“幕后boss”了。
上述内容就是SSH Tunnel把个人PC变成“幕后boss”的示例分析,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网行业资讯频道。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341