摘要: 背景: 客户的服务在线下 IDC, 访问服务器通过 VPN 连接到 IDC, 但 VPN 连接后只放行了特性端口比如 80, 服务器部署了 grafana 系统之后不想与现有的 80 共用一个端口. 比如 grafana 应用监听除 80 之外的 3000 端口, 在不通过客户邮件申请其他端口的情况下, 是否有其他办法呢? 本文基于 SH 隧道 + Chrome 插件 SwitchyOmega 访问 IDC 的 3000 端口画了架构图便于理解, 如下图所示正常访问路线 A, 但由于防火墙的限制无法访问除允许的端口, 所以我们想通过阿里云的服务器做 SSH 隧道(阿里云与 IDC 机器通过专线连接, 端口未做限制), 也就是图中的线路 B.
背景: 客户的服务在线下 IDC, 访问服务器通过 VPN 连接到 IDC,
但 VPN 连接后只放行了特性端口比如 80, 服务器部署了 grafana 系统之后不想与现有的 80 共用一个端口. 比如 grafana 应用监听除 80 之外的 3000 端口, 在不通过客户邮件申请其他端口的情况下, 是否有其他办法呢?
本文基于 SH 隧道 + Chrome 插件 SwitchyOmega 访问 IDC 的 3000 端口
画了架构图便于理解, 如下图所示
正常访问路线 A, 但由于防火墙的限制无法访问除允许的端口, 所以我们想通过阿里云的服务器做 SSH 隧道(阿里云与 IDC 机器通过专线连接, 端口未做限制), 也就是图中的线路 B.
准备工作 :
1) 准备一台与 IDC 互通的阿里云服务器.
2) SwitchyOmega 插件, 官方下载地址: https://www.switchyomega.com/download/
配置步奏:
1) 配置 SSH 隧道(本文基于 xshell 实现)
点击新建连接 -- 填写服务器信息如下图
隧道的配置端口可自定义. 记住配置 SwitchyOmega 的时候要对应上. 点击确定之后 SSH 隧道配置完毕
2) 安装 SwitchyOmega 插件
在 Chrome 地址栏输入 Chrome://extensions 打开扩展程序, 拖动 .crx 后缀的 SwitchyOmega 安装文件到扩展程序中进行安装. 安装完毕后在谷歌浏览器右上角有下图标志
点击鼠标左键 -- 选项 -- 创建情景默认如下图
注意代理端口与配置 SSH 隧道时保持一致.
点击 auto_swith 按照如下截图进行配置
配置的目的是当访问 192.168.1.14 * 的所有地址都被代理到本地的 1080 端口, 通过 SSH 隧道本地监听的 1080 端口将请求转发到服务器上
3) 在服务器上配置代理转发规则
SSH -qtfnN -D 127.0.0.1:1080 admin@39.xx.xx.xx
执行完毕后会看到如下起了一个进程监听在 1080 端口
到此配置完毕, 如下图.
即使本地无法 telnet 对应的端口, 但可以通过 web 访问 192.168.1.14 的 3000 端口的 grafana.
来源: https://yq.aliyun.com/articles/679665