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

如何配置PuTTY Agent限制VSCode远程SSH转发对特定IP的密钥认证?

解决方案

直接修改远程工作区的SSH配置文件,针对被测设备的IP/主机名单独设置认证规则,无需改动任何脚本:

  1. 登录到VSCode的远程工作区,打开终端,编辑~/.ssh/config文件:
    nano ~/.ssh/config
    
  2. 在文件末尾添加针对被测设备的配置块:
    • 单个设备IP的情况:
      Host 192.168.1.100  # 替换为你的被测设备实际IP
        PubkeyAuthentication no
        PasswordAuthentication yes
      
    • 同网段批量设备的情况,用通配符匹配:
      Host 192.168.1.*  # 匹配该网段下所有被测设备
        PubkeyAuthentication no
        PasswordAuthentication yes
      
    • 脚本中使用主机名的情况,替换为对应主机名:
      Host test-device-01  # 替换为被测设备的主机名
        PubkeyAuthentication no
        PasswordAuthentication yes
      
  3. 保存文件后,修改文件权限(SSH要求配置文件必须为600权限,否则会被忽略):
    chmod 600 ~/.ssh/config
    

设置完成后,所有脚本里连接被测设备的ssh命令会自动应用这些规则,不再尝试转发的PuTTY Agent密钥,直接使用密码认证;而连接GitHub的请求不受影响,依然通过SSH Agent转发使用本地密钥正常工作。

此前修改本地配置无效的原因:本地SSH配置仅控制本地到远程工作区的连接,远程工作区到被测设备的连接规则,由远程工作区的SSH配置文件决定,因此必须修改远程端的配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 16:52:08