原文地址:Linux上使用ssl进行端口转发  作者:呼延十

背景介绍

作为一个后端程序员,经常要和别人联调接口,每当这时,总是被公司的各种,dev,qa,pre,prod环境搞得头疼,,,我真的只是想简单的联调一下看看能不能调的通啊…或者当你为移动端开发接口的时候,你想完整的体验从点击APP到自己的电脑打出log这个流程(因为中间好几个环境,你需要知道是哪里出了问题),却发现自己的办公网络没有独立ip….那么你可以来学习一下Linux的端口转发了.

将本地的请求转发到远程主机端口

这个方案主要用来解决访问生产环境的问题.(当然这样不好,但是有些生产环境不重要,可以这样操作)

举个简单的例子,你在本地执行:

ssh -L 4333:localhost:8000 root@xxxxx -N -f

可以将本地的4333端口转发到远程的8000端口,这意味着你在本地调用localhost:4333即可以获取到xxxxx服务器上8000端口的结果.

现在举个复杂一点的例子:

比如你现在在本地测试代码,我们成为:localhost.

你要连接一个生产的数据库,本地连接不上. 生产的数据库称为:prod.

但是你现在有一台dev机,称为dev.

在dev机器上可以访问到一个跳板机,我们称之为jump.

那么怎么样才可以在本地运行并且连接到prod的数据库呢?

需要在dev机上端口转发.

在dev机上执行:

ssh -L 3333:prod:3306 root@jump -N -f

这个命令的结果是:

所有请求dev机3333端口的请求,都会被转发为jump机器上对prod:3306的请求.

现在在本地直接执行mysql -uroot -p -hdev -P3333就可以连接prod的数据库了,当然,用户和密码都需要是真实的线上数据库的用户和密码.

将远程主机端口的请求转发到本地

这个案例就是用来解决内网穿透的问题了,当然你也可以选择搭建ngrok服务器,只是更麻烦一些.

假如你和移动端同学py一下,让他们给你打个包用来测试,绑定一个测试服务器,那么最好的当然是绑定我们的本地机器,这样随时随地可以测试.但是我们日常使用wifi,ip地址经常会变,这可怎么办呢?

随便找一台具有固定ip的服务器,最好是公司的测试服务器不用的端口即可.

然后在本地执行:

ssh -R 8092:localhost:6666 root@xxxxx -N -f

即可以将对xxxxx服务器8092端口的访问转发到本地的6666端口上,现在你可以让请求API的人直接请求xxxxxx:8092,而你在本地的6666端口上启动服务即可,不仅可以随时修改随时起效,还可以打断点调试.


[转载]Linux上使用ssl进行端口转发的更多相关文章

  1. linux中nginx中配置端口转发

    域名指向主机IP地址,通过域名:8080才能访问网站,去掉后面的8080:或者其他的端口号,直接使用域名访问网站 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处 ...

  2. linux下安装haproxy作为端口转发服务器,以及安装keepalived作为haproxy高可用方案

    一.安装haproxy作为端口转发服务器(主服务器:172.28.5.4,备服务器:172.28.5.8,浮点IP为:172.28.5.6) 1.安装依赖包 yum -y install wget g ...

  3. Linux SSH隧道技术(端口转发,socket代理)

    动态转发(SOCKS5代理): 命令格式:ssh -D <local port> <SSH Server> ssh -fnND 0.0.0.0:20058 172.16.50. ...

  4. Linux 服务器--Iptables 端口转发

    日常Iptables 端口转发 需求:公司是局域网络,通过一个外网ip,进行互联网的访问.公司的云平台服务器在公网中,虚拟化平台中有一台内部服务器,用于公司某部门的使用,上面运行www 服务,ssh端 ...

  5. [转载]linux上安装oracle

    原文地址:linux上安装oracle作者:天涯恨客 1.创建oinstall组 [root@xieqing ~]# groupadd oinstall 创建dba组 [root@xieqing ~] ...

  6. [转载]linux上用PHP读取WORD文档

    在linux上用PHP读取WORD文档,其实是使用了 antiword程序把word文档转化为txt文档. 再使用php执行系统命令调用而已. 具体操作如下: 1.安装antiword 官方站:htt ...

  7. Linux主机添加路由和端口转发

    环境(关闭防火墙和seLinux): 6A: CentOS6 7A 和 7B:CentOS 7 6A: 192.168.20.131/24 7B: 192.168.20.129/24 和 192.16 ...

  8. linux下最简单的端口转发工具

    linux下简单好用的工具rinetd,实现端口映射/转发/重定向 官网地址http://www.boutell.com/rinetd 软件下载wget http://www.boutell.com/ ...

  9. 在CentOS 7 上为docker配置端口转发以兼容firewall

    在CentOS 7上当我们以类似下列命令将主机端口与容器端口映射时可能遇到无法访问容器服务的问题 docker run --name web_a -p 192.168.1.250:803:80 -d ...

随机推荐

  1. Python日志库logging总结

    转自  https://cloud.tencent.com/developer/article/1354396 在部署项目时,不可能直接将所有的信息都输出到控制台中,我们可以将这些信息记录到日志文件中 ...

  2. python 中的getattr(),setattr(),hasattr()的方法

    hasattr(object,name) 判断一个对象中是否有name属性或者name方法返回BOOL值,如果有这个属性的话,就返回TRUE,反之,返回FALSE 需要注意的是name要用括号括起来 ...

  3. 【leetcode】1046. Last Stone Weight

    题目如下: We have a collection of rocks, each rock has a positive integer weight. Each turn, we choose t ...

  4. OSS重磅推出OSS Select——使用SQL选取文件的内容

    对象存储OSS(Object Storage Service)具有海量.可靠.安全.高性能.低成本的特点.OSS提供标准.低频.归档类型,覆盖多种数据从热到冷的存储需求,单个文件的大小从1字节到48. ...

  5. 科讯使用的:ckeditor编辑器.复制word图片.一直沾不上去.谁有好的解决办法呢

    在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper. 通过知乎提供的思路找到粘贴的原理,通过TheViper找 ...

  6. 20180708-Java修饰符

    public class className{ //...} private boolean myFlag;static final double weeks = 9.5;protected stat ...

  7. ResquestInfoServlet类通过访问HttpServletRequest对象的各种方法来读取HTTP请求中的特定信息,并且把它们写入到HTML中

    ResquestInfoServlet类通过访问HttpServletRequest对象的各种方法来读取HTTP请求中的特定信息,并且把它们写入到HTML中 ResquestInfoServlet.j ...

  8. php.ini 配置项详解

    本文主要对php.ini文件进行详细的解释 engine = On ——> 在apache下启用php语言引擎 short_open_tag = Off ——> 是否开启段标签  若php ...

  9. scrapy--meta参数传递问题

    scrapy使用大坑---meta参数传递出现之重复问题 问题描述: 爬虫目标: 实现哔哩哔哩网站的视频信息爬取,只要的信息结构爬去顺序为**关键词的搜索结果,拿到第一页上某个视频的标题,url,和时 ...

  10. git subtree模块化代码管理

    Git Subtree 的原理 首先,你有两个伟大的项目——我们叫他P1项目.P2项目,还有一个牛逼的要被多个项目共用的项目——我们叫他S项目.我们通过简要讲解使用Subtree来同步代码的过程来解释 ...