You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

多层SSH跳转访问远程机器Jupyter Notebook无法打开URL问题求助

问题解答

核心疑问澄清

该问题与机器3未安装浏览器没有任何关联。日志中出现的No web browser found警告仅表示Jupyter服务无法在机器3本地唤起浏览器打开页面,完全不影响远程设备通过网络访问该服务。

无法访问的原因及解决方法

  • 多层SSH链路未做端口转发
    你当前的访问链路是Windows -> 机器1 -> 机器2 -> 机器3,Jupyter服务运行在机器3的8889端口,默认该端口仅能在机器3本地访问,没有映射到你的Windows设备,所以直接访问机器3IP无法连通。你需要配置多层SSH端口转发,将机器3的8889端口映射到Windows本地的相同端口,操作步骤如下:
  1. 在Windows本地执行SSH命令连接机器1,添加端口转发规则:
    ssh -L 8889:localhost:8889 机器1用户名@机器1IP
  2. 登录机器1后,执行SSH命令跳转连接机器2,添加第二层端口转发规则:
    ssh -L 8889:localhost:8889 机器2用户名@机器2IP
  3. 登录机器2后,执行SSH命令跳转连接机器3,添加最后一层端口转发规则:
    ssh -L 8889:localhost:8889 机器3用户名@机器3IP
    所有转发规则配置完成后,直接在Windows浏览器打开日志中给出的本地访问地址http://localhost:8889/?token=19ced6aaec6f3ff0d9679ab766b893503381c3987e8ab64e即可正常访问Jupyter服务。
  • Jupyter默认仅允许本地访问
    如果配置端口转发后仍无法访问,可修改机器3的Jupyter启动配置,允许外部IP访问:
    编辑~/.bashrc文件,将原有配置修改为:
export PYSPARK_DRIVER_PYTHON=jupyter
export PYSPARK_DRIVER_PYTHON_OPTS='notebook --ip=0.0.0.0'

如果使用root账号启动,可以额外添加--allow-root参数。修改完成后执行source ~/.bashrc加载配置,再重新启动pyspark即可。

  • 端口被防火墙拦截
    分别检查机器3、机器2、机器1的防火墙配置,确保8889端口的入站、出站规则已放开。以ufw防火墙为例,放开端口命令为sudo ufw allow 8889。

内容的提问来源于stack exchange,提问作者Yafei Wei

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 22:06:02