使用 Google Colab 通过 HTTPS 连接到远程 Jupyter 运行时

Sit*_*gui 5 jupyter-notebook google-colaboratory

我正在尝试使用 Google 的 Colab 功能连接到配置了 HTTPS 的远程运行时。但是,我只在 UI 上看到一个通知端口的选项,而不是协议。

我检查了网络面板,网站启动了http://localhost:8888/http_over_websocket?min_version=0.0.1a3HTTP 风格的 WebSocket 连接。

我的设置的完整详细信息:

  • 我有一个公共 Jupyter 服务器,https://123.123.123.123:8888带有自签名证书和密码身份验证
  • 我在远程上遵循了jupyter_http_over_ws 的设置
  • 我启动了远程进程jupyter notebook --no-browser --keyfile key.pem --certfile crt.pem --ip 0.0.0.0 --notebook-dir notebook --NotebookApp.allow_origin='https://colab.research.google.com'
  • 我创建了一个本地端口转发ssh -L 8888:localhost:8888 dev@123.123.123.123
  • 我已打开network.websocket.allowInsecureFromHTTPSFirefox
  • 我已经访问https://localhost:8888并登录

当然,当 UI 调用时http://localhost:8888/http_over_websocket?min_version=0.0.1a3它会失败。如果我手动访问https://localhost:8888/http_over_websocket?min_version=0.0.1a3(注意额外的s)它就会通过。

我看到三个选项可以解决这个问题:

  1. 告诉 UI 使用安全 WS 连接
  2. 在我的本地计算机上运行代理将 HTTPS 转换为纯 HTTP
  3. 关闭遥控器上的 HTTPS

我认为最后两个可行,但我不喜欢那样。如何做到#1?

多谢!

Ami*_*i F 1

您的选项 1 目前在 Colab 中不可行。

为什么要在已加密转发流量的 SSH 隧道上使用 HTTPS?