使用XShell进行端口转发

/ 折腾 / Java / Linux / Xshell
818 字 / 约 3 分钟

公司最近因某单位牵头,需要和某迅、银行等企业多方合作开发,为了方便与安全,测试服务器都由某迅提供。

因为我们要和银行进行接口联调,需要部署到某迅提供的服务器上才能测试。但是呢,某迅不愿意开放外网访问端口,但我们是web程序啊,不开放端口怎么请求访问啊。后来得知,可以用跳板机端口转发的方法进行访问。

我们关联的有三台机器,一台台式工作机、一台跳板机、一台内网服务器。

网络图

我的电脑是不能直接连到内网服务器的,需要通过跳板机才能链接。如果仅仅是部署程序放在服务器上,然后就不用管了还好,偏偏还需要从本机访问页面,才能进行测试工作。

首先配置好XShell的链接。

XShell
sequenceDiagram
participant bj as 本机(127.0.0.1)
participant tbj as 跳板机(201.202.203.204)
participant fwq as 内网服务器(192.168.1.168)
bj -x fwq: 与内网服务器不能通信
fwq -x bj: 与外网不能通信
bj ->>tbj: 连接到内网跳板机
tbj ->>fwq: 连接到内网服务器
fwq -->> tbj: 响应给跳板机
tbj -->> bj: 响应给本机

然后打开当前链接的属性->SSH->隧道,添加一个转发规则。

XShell

配置内容说明:

  • 类型:默认
  • 源主机:默认或127.0.0.1
  • 侦听端口:任意不冲突的端口都可以,一般和目标端口保持,我这里因为本机8080需要使用,所以写的8099
  • 目标主机:内网服务器的内网IP
  • 目标端口:目标服务的端口,比如TOMCAT服务的默认端口8080

保存后,关闭当前链接,再重新链接一次即可生效。然后本地浏览器访问http://127.0.0.1:8099的请求都会通过跳板机210.210.210.210转发至内网服务器192.168.88.88的8080端口。

转发请求结果

参考资料

评论

5
AI
AI 助手 AI
由 AI 生成 · 仅供参考
这个端口转发的方法真是巧妙!遇到这种网络限制时能找到解决方案很给力,理解你的工作困扰。

留下一条评论

  1. 不亦乐乎
    不亦乐乎
    福建/Windows/Chrome

    突然换域名然后更新了一篇。

  2. woyigui
    woyigui
    浙江/macOS/Chrome

    (^-^)(^-^)(^-^)(^-^)

  3. 二进制
    二进制
    广东/Windows/Chrome

    用nginx不是一条规则的事。(@_@;)

  4. 冷冷羊子
    冷冷羊子
    广东/Windows/Chrome

    o(≧口≦)oΣ(゚д゚;)m(_ _)mΣ( ° △ °|||)w(゚Д゚)w╭

  5. Crll
    Crll
    湖南/macOS/Chrome

    厉害的样子。。(* ̄3 ̄)╭