You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何从Windows 10搭建SSH隧道访问AWS上的Jupyter服务

Windows 10访问AWS堡垒机后Jupyter Notebook的解决方案

我来帮你搞定Windows 10下的这个问题~Mac上的SSH隧道逻辑是通的,但Windows的工具和路径格式有小差异,咱们一步步来:

方法一:用Windows自带的OpenSSH客户端

现在Windows 10默认已经预装了OpenSSH客户端,先确认下:打开PowerShell或命令提示符,输入ssh -V,如果能显示版本信息就没问题;要是没有,去「设置」→「应用」→「可选功能」里搜索“OpenSSH客户端”添加即可。

接下来把Mac上的命令适配成Windows格式:

ssh -i "C:\路径\到\你的\密钥文件.id_rsa" -L 8223:<some name>:8223 -f -o <some other url>

注意几个关键点:

  • Windows路径要用反斜杠(\),如果路径里有空格,一定要给整个路径加双引号
  • 确保你的密钥文件权限设置正确:右键密钥文件→「属性」→「安全」,只保留当前用户的读取权限,删掉其他所有用户的权限(不然OpenSSH会报错)

方法二:用PuTTY(适合习惯图形界面的用户)

如果更偏好图形工具,PuTTY是Windows上常用的SSH客户端,步骤如下:

  1. 打开PuTTY,在「Session」面板输入堡垒机的IP/域名,端口保持22
  2. 转到「Connection」→「SSH」→「Auth」,点击「Browse」选择你的私钥文件(注意:PuTTY只认.ppk格式,如果你的密钥是.pem,需要用PuTTYgen转换成.ppk)
  3. 转到「Connection」→「SSH」→「Tunnels」:
    • 在「Source port」输入8223
    • 在「Destination」输入<some name>:8223
    • 点击「Add」,此时会在下方列表看到L8223 <some name>:8223
  4. 回到「Session」面板,给这个配置起个名字保存,然后点击「Open」连接堡垒机

排查访问问题的小技巧

如果配置完还是打不开localhost:8223,可以检查这几点:

  • 堡垒机的安全组是否允许你的Windows 10公网IP访问22端口?
  • Jupyter所在实例的安全组是否允许堡垒机的私网IP访问8223端口?
  • 本地8223端口有没有被占用?打开PowerShell输入netstat -ano | findstr :8223,如果有结果,要么杀掉占用的进程,要么换个端口(比如8224,同时修改隧道命令里的端口)
  • 确认Jupyter的配置:检查jupyter_notebook_config.py里是否设置了c.NotebookApp.ip = '*',并且是否设置了访问密码/令牌(浏览器打开时需要输入)

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

火山引擎 最新活动