从外网 SSH 进局域网,反向代理+正向代理解决方案

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从外网 SSH 进局域网,反向代理+正向代理解决方案相关的知识,希望对你有一定的参考价值。

参考技术A 简单说一下ssh使用,如果还有什么不懂得可以Q我:281286620

相信很多同学都会碰到这样一个问题。在实验室有一台机器用于日常工作,当我回家了或者回宿舍之后因为没法进入内网,所以访问不到了。如果这个时候我需要 SSH 进去做一下工作,那么怎么解决这个问题呢?本文将给出一种使用 SSH 的代理功能的解决方案。

机器状况

从 C 机器使用 SSH 访问 A

在 A 机器上做到 B 机器的反向代理;在 B 机器上做正向代理本地端口转发

每台机器上都需要 SSH 客户端

A、B 两台机器上需要 SSH 服务器端。通常是 openssh-server。

在 Ubuntu 上安装过程为

建立 A 机器到 B 机器的反向代理【A 机器上操作】

<port_b1>为 B 机器上端口,用来与 A 机器上的22端口绑定。

建立 B 机器上的正向代理,用作本地转发。做这一步是因为绑定后的 端口只支持本地访问【B 机器上操作】

 <port_b2>为本地转发端口,用以和外网通信,并将数据转发到<port_b1> ,实现可以从其他机器访问。

其中的*表示接受来自任意机器的访问。

现在在 C 机器上可以通过 B 机器 ssh 到 A 机器

至此方案完成。

SSH 参数解释

正向代理,反向代理

1。正向代理:代理的对象是客户端;

比如有的公司控制公司电脑只能访问局域网和几个外网网址,这时公司就需要一台代理服务器,员工电脑请求外网网址是通过代理服务器发送的(代理服务器会检查该网址是否是公司允许的,比如公司只能让员工访问百度),这时代理服务器代理的对象就是员工电脑(客户端)。

客户端>代理服务器>百度服务器

 

2。反向代理:代理的对象是服务器。

现在很多公司都用nginx做负载均衡,客户端请求该公司的网址,其实是被 nginx接受,然后分发到下面的tomcat服务器。(这里有多个tomcat做负载均衡,负载均衡需要考虑会话session的处理)这时nginx代理对象的就是tomcat服务器。

客服端>代理服务器>公司服务器

以上是关于从外网 SSH 进局域网,反向代理+正向代理解决方案的主要内容,如果未能解决你的问题,请参考以下文章

正向代理和反向代理

正向代理和反向代理

轻松理解:正向代理反向代理负载均衡

Nginx - 正向代理和反向代理

利用ssh反向代理以及autossh实现从外网连接内网服务器

正向代理,反向代理