VSCode 远程 SSH 拒绝在本地计算机上使用 ssh-agent 并不断要求输入密码

问题描述 投票:0回答:1

似乎大多数遇到此问题的人都是在远程服务器上遇到该问题(即在远程服务器上运行 Git)。我在本地遇到这个问题(不涉及 AgentForwarding)。

当我尝试使用 SSH-Remote 连接到我的服务器时,系统会立即在顶部提示我“输入您的密码”文本框(在连接到服务器后立即出现一秒钟)。如果我打开本地终端:

  • 通过运行

    ssh user@remote
    、输入密码、连接然后退出来加载密钥/密码。

  • 我可以确认

    ssh-agent
    正在通过
    ps -e | grep ssh
    运行。

  • 我可以在本地使用

    ssh-agent
    ——如果我再次 ssh
    user@remote
    ,系统不会提示我输入密码,这是预期的行为。

完成所有这些确认后,如果我打开 VSCode 并运行 SSH-Remote 连接到服务器,系统会立即再次提示我输入密码(再次两次 - 一次在连接之前,一次在连接之后)。

我没有安装扩展,这不适用于 Git,我也没有尝试在远程使用我的 ssh 代理。我只是不想每次打开连接、打开新文件夹等时都被要求多次输入密码...

如有任何建议,我们将不胜感激。谢谢!

其他背景:

我使用

zsh
作为我的默认 shell(它也设置为 VSCode 中的默认 shell)和
ssh-agent
zsh
插件来启动
ssh-agent
并自动添加键。

这就是我的内容

~/.ssh/config
:

AddKeysToAgent yes

Host server
  HostName 192.168.1.155
  User user
  IdentityFile ~/.ssh/id_ed25519
  IdentitiesOnly yes

Host github.com
  HostName github.com
  IdentityFile ~/.ssh/id_ed25519_git
  IdentitiesOnly yes
visual-studio-code ssh remote-access ssh-keys
1个回答
0
投票

如果您遇到 VSCode Remote-SSH 拒绝在本地计算机上使用 ssh-agent 并不断要求输入密码的问题,您可以尝试以下步骤:更新 VSCode 和扩展:确保您使用的是最新版本Visual Studio Code 和远程 SSH 扩展。更新通常包括错误修复和改进。确保 ssh-agent 正在运行:确认您的 ssh-agent 正在本地计算机上运行。您可以在终端中使用以下命令启动它:eval "$(ssh-agent -s)"将您的 SSH 密钥添加到 ssh-agent:确保您的 SSH 密钥已添加到 ssh-agent。您可以使用以下命令添加它:ssh-add ~/.ssh/your-ssh-key 将 your-ssh-key 替换为您的私钥文件的实际名称。检查 SSH 代理配置:确保您的 ssh-agent 已配置正确。您可以通过运行以下命令来检查配置:ssh-add -l 它应该显示代理当前代表的身份的指纹。在 VSCode 中验证 SSH 配置:检查您的 VSCode 的远程 SSH 设置。打开您的用户或工作区设置 (settings.json) 并确保以下设置正确:"remote.SSH.useLocalServer": false, "remote.SSH.showLoginTerminal": true,重新启动 VSCode:进行更改后,重新启动 Visual Studio Code 以确保设置生效。重新连接到 SSH 主机:使用 Remote-SSH 扩展断开并重新连接到 SSH 主机。这可以通过单击左侧边栏上的绿色远程资源管理器图标,然后选择 SSH 目标并单击“重新连接到主机”来完成。如果尝试这些步骤后问题仍然存在,请提供更多详细信息或错误消息,我会我将尽我所能进一步帮助您。

© www.soinside.com 2019 - 2024. All rights reserved.