【问题标题】:Start a WS connection on a server that's being accessed by SSH port forwarding在通过 SSH 端口转发访问的服务器上启动 WS 连接
【发布时间】:2019-01-06 19:48:25
【问题描述】:

我有一个 EC2 实例 (A) 和一个 RaspberryPi(B)。我想访问 B 中的 HTML 页面。 以下是我执行的步骤:

  1. 在 B 中创建了一个简单的index.html,它连接到也在 B 中的 5443 上运行的 WebSocket
  2. 在端口 1337 上使用 SimpleHTTPServer 提供服务
  3. 创建了端口转发。当我访问 A:9000 时,它应该重定向到 B:1337。使用:ssh -f -N -R 9000:127.0.0.1:1337 A

这样我就可以访问我的index.html 页面,但是在尝试使用

连接到 WebSocket 服务器时它失败了
WebSocket connection to 'ws://localhost:5553/' failed: Error in connection establishment: net::ERR_CONNECTION_REFUSED

当我使用 VNC 连接到 B,并在 localhost:1337 中访问浏览器时,我能够看到页面并且 WebSocket 连接成功。

当我尝试通过 EC2 实例访问它时,我不确定为什么它会失败。有没有人知道可能是什么问题?谢谢

**在我的 EC2 实例中所有端口都打开

【问题讨论】:

    标签: ssh raspberry-pi portforwarding ssh-tunnel


    【解决方案1】:

    即使我是端口转发,localhost:5553 也不是树莓派 IP,而是 EC2。我创建了一个从 A 中的 9001 到 B 中的 5443 的新端口转发,以隧道 Websocket 连接并且它工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-01
      • 2021-08-24
      • 2021-10-13
      • 1970-01-01
      • 1970-01-01
      • 2021-08-14
      • 2020-08-22
      • 1970-01-01
      相关资源
      最近更新 更多