Debug神器!一条SSH隧道穿透全部服务器所有端口

4,517 阅读1分钟

应用场景

通常为了安全,服务器需要通过跳板机访问,服务器对外网暴露的端口也严格限制。这种情况下若要在本地 访问服务器上的服务或系统就会比较蛋疼。 有一个简单的解决方案,就是在本地和跳板机之间建立SSH隧道。SSH隧道提供了一个网络代理服务, 通过该代理服务可以直接访问跳板机所在的局域网,即服务器上的任意端口,服务都可以直接访问。

本文介绍的方法比一般的端口映射更方便,不需要为每个端口配置一条SSH隧道,包括Windows、Mac、Linux上的操作方法。

SSH隧道建立

Windows版

这里使用Windows上常用的XShell做说明。

1.配置常规的SSH连接

配置用户名,密码,主机地址(通常是跳板机)等。

xshell-1

2.添加隧道

xshell-2

xshell-3

3.其他

xshell-4

xshell-5

Mac & Linux 版

非常简单,只需一条命令即可建立SSH隧道。

  ssh user@host -ND 1080

SSH隧道使用

与SwitchyOmega配合使用

用于浏览器访问服务器页面

switch-1

与Proxifier配合使用

可以让任意程序访问服务器上的服务及端口,例如

  • 使用Navicat访问服务上的数据库(没有对公网暴露)
  • 让本地运行的代码访问服务器上的API

配置方法

1 配置代理服务器

2 配置规则

3 使用说明

配置好规则后,本地应用就可以直接访问服务器的内网IP了。

比如连接数据库:


like