使用 hdspace CLI 工具建立 SSH 隧道连接华为云开发环境
本教程适用于华为开发者空间的“云开发环境”(云主机),它默认不提供直接 SSH 连接,需要通过
hdspaceCLI 工具建立隧道,将远程 22 端口映射到本地,从而实现远程开发。
📦 前提条件
- 已注册并登录 华为开发者空间
- 已创建一个“云开发环境”(云主机)并处于 运行中 状态
- 本地操作系统:Windows / Linux / macOS
🚀 步骤一:下载 hdspace CLI 工具
- 登录华为开发者空间控制台,进入“云开发环境”管理页面。
- 找到你的云主机,点击操作栏的“远程连接”。
- 在弹出的对话框中选择适合你操作系统的版本(如
Windows X64),点击下载。
下载后得到一个可执行文件(如
hdspace.exe),建议将其重命名为hdspace.exe(去掉可能存在的(1)等后缀),并放到一个你方便的目录。或者设置本地环境Path。
🔑 步骤二:配置访问密钥(AK/SK)
hdspace 需要你的华为云访问密钥来进行身份认证。
- 登录华为云控制台,进入“我的凭证” → “访问密钥”。
- 点击“新增访问密钥”,完成身份验证后下载
credentials.csv文件。 - 打开
credentials.csv,获取 Access Key Id 和 Secret Access Key。 - 在终端中执行配置命令:
bash hdspace config
按提示依次输入 AK 和 SK(输入 SK 时不会显示字符,输入完按回车即可)。
⚠️ 注意:Secret Access Key 仅下载时可见,请妥善保存。
🆔 步骤三:获取云主机实例 ID
执行以下命令列出你所有的云开发环境:
hdspace devenv list
输出示例:
| NO | ID | NAME | ... | STATE |
| 1 | 20289a5fe1c7423497e2549a2c6bXXXX | DevEnvVM | ... | Running |
其中 ID 列的值就是你要的实例 ID(如 20289a5fe1c7423497e2549a2c6XXXX)。
🔗 步骤四:建立隧道(端口映射)
使用 start-tunnel 命令将远程 22 端口(SSH)映射到本地端口。
基本格式:
hdspace devenv start-tunnel --instance-id=<实例ID> --ports=<本地端口>:22
示例(映射到本地 10022 端口):
hdspace devenv start-tunnel --instance-id=20289a5fe1c7423497e2549a2c6XXXX --ports=10022:22
参数说明(来自
--help):
--instance-id:实例 ID(可选,也可用--name或--num替代)--ports:必填,端口映射规则,格式为本地端口:远程端口,多个映射用逗号分隔(如10022:22,8080:8080)--local-addr:本地监听地址,默认为127.0.0.1--shell:若加上此参数,会直接启动一个交互式 shell 会话(无需额外 SSH 客户端)
执行命令后,终端会持续运行并显示日志信息。请保持此终端窗口打开,关闭后隧道将中断。
💻 步骤五:使用 SSH 客户端连接
现在隧道已建立,你可以在本地通过 SSH 连接到云主机了。
连接信息:
- 主机地址:
127.0.0.1 - 端口:你映射的本地端口(如
10022) - 用户名:通常为
developer或root(请根据你的环境确定)
命令行示例(新开一个终端窗口):
ssh developer@127.0.0.1 -p 10022
若首次连接,会提示确认主机指纹,输入 yes 即可,然后输入密码(创建环境时设置的密码)。
🧪 替代方案:直接使用 --shell 参数
如果你只想快速进入终端,而不想单独用 SSH 客户端,可以加上 --shell 参数:
hdspace devenv start-tunnel --instance-id=<实例ID> --ports=10022:22 --shell
这样会在启动隧道后自动进入云主机的 shell 会话。
❓ 常见问题与解决方法
1. 报错 failed to get AK/SK: credentials not found
- 未配置访问密钥,请执行
hdspace config并输入正确的 AK/SK。
2. 报错 flag provided but not defined: -local-port 或 -port
- 请使用
--ports参数,格式为--ports=本地端口:远程端口(例如--ports=10022:22)。
3. 隧道建立后 SSH 连接超时或被拒绝
- 确保
start-tunnel的终端窗口保持运行。 - 检查云主机是否处于 Running 状态。
- 确认本地端口未被占用(可通过
netstat -ano | findstr 10022检查)。
4. 忘记实例 ID 怎么办?
- 重新执行
hdspace devenv list即可获取。
5. 文件名包含空格或括号导致命令麻烦
- 重命名文件为
hdspace.exe,并将其所在目录添加到系统PATH环境变量中,以便在任意位置直接调用。
📚 参考链接
📝 总结
通过 hdspace CLI 工具建立 SSH 隧道,是连接华为云开发环境最便捷的免费方案。整个过程只需四步:下载工具 → 配置密钥 → 获取 ID → 建立隧道,之后即可像操作本地机器一样进行远程开发。
如果在使用中遇到其他问题,欢迎查阅官方文档或通过华为云社区寻求帮助。
本文档基于
hdspace CLI Version 2.3.3编写,如有更新请参考官方最新说明。
- 点赞
- 收藏
- 关注作者
评论(0)