使用 1Password SSH 代理对远程主机或 GitHub 进行身份验证时找不到 SSH 私钥

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

我转而将所有 SSH 私钥和公钥对保存在 1Password 中,依靠 1Password SSH 代理在身份验证时向 SSH 远程服务器和/或 GitHub 提供密钥,配置如下:

在 Mac 上:

Host github.com
  User git
  HostName github.com
  IdentityAgent ~/Library/Group\ Containers/2BUA8C4S2C.com.1password/t/agent.sock
Host *
  IdentityAgent ~/Library/Group\ Containers/2BUA8C4S2C.com.1password/t/agent.sock

在 Linux 上

Host github.com
  User git
  HostName github.com
  IdentityAgent ~/.1password/agent.sock
Host *
  IdentityAgent ~/.1password/agent.sock

我遇到了这个问题,突然间来自/到现有/未更改的系统的身份验证不再起作用了。 ssh -vvv

透露,尽管已在
ssh-add -l
中列出,但未找到/未选取适合远程系统的私钥。

git ssh ssh-keys 1password
1个回答
0
投票
深入挖掘后我发现,一些 SSH 服务器限制了它们接受检查的私钥数量……例如到 6。由于我最近添加了另一个密钥对,尽管尚未使用并且对于非 SSH 用例,我认为这可能是问题的原因。

由于我(还)没有找到如何使用 1Password 确定某些远程系统的密钥对,因此我恢复通过将文件

~/.config/1Password/ssh/agent.toml

 调整为以下内容来限制暴露的密钥:

[[ssh-keys]] vault = "Private" item = "awsec2" [[ssh-keys]] vault = "Private" item = "azvm" [[ssh-keys]] vault = "Private" item = "github" [[ssh-keys]] vault = "Private" item = "homelinux"
    
© www.soinside.com 2019 - 2024. All rights reserved.