嗨,我的 ssh 配置文件设置为自动将 ssh key 添加到 ssh 代理。但是,目前它不起作用。它以前工作过。我更新了 bitbucket 的 ssh key ,但它不再有效。当我重新启动时,我必须使用 ssh-add -K 选项手动添加 ssh key 。
有人可以帮我弄清楚为什么 ssh 配置不起作用吗? AddKeysToAgent yes 选项假设启用自动添加 ssh key 。
我正在运行 macOS Sierra 10.12.4
这是配置(出于敏感性目的,我更改了服务器名称)
GSSAPIAuthentication no
# --- SourceTree Generated ---
Host cik-bitbucket__com
HostName bitbucket.com
User cik
PreferredAuthentications publickey
IdentityFile /Users/cik/.ssh/cik-bitbucket__com
UseKeychain yes
AddKeysToAgent yes
# ----------------------------
Host *
UseKeychain yes
AddKeysToAgent yes
ServerAliveInterval 15
IdentityFile /Users/cik/.ssh/id_rsa
Host jenkins
HostName pasjenkins1.mycompany.com
UseKeychain yes
AddKeysToAgent yes
Host jenkinsqa
HostName pasjenkinsqa.mycompany.com
UseKeychain yes
AddKeysToAgent yes
Host artifactory
HostName prp01
UseKeychain yes
AddKeysToAgent yes
Host bitbucket
HostName bitbucket
UseKeychain yes
AddKeysToAgent yes
Host confluence
HostName confluence01
UseKeychain yes
AddKeysToAgent yes
Host jira
HostName jira01
UseKeychain yes
AddKeysToAgent yes
Host vagrant
HostName 127.0.0.1
Port 2222
User vagrant
IdentityFile /Users/cik/.vagrant.d/insecure_private_key
Host localhost
HostName 127.0.0.1
Port 2222
User vagrant
IdentityFile /Users/cik/.vagrant.d/insecure_private_key
更新:
订单很重要。
这有效
ssh-add -D
ssh-add -K /Users/cik/.ssh/cik-bitbucket__com
ssh-add
git push (Works)
不起作用
ssh-add -D
ssh-add
ssh-add -K /Users/cik/.ssh/cik-bitbucket__com
git push (Works)
最佳答案
您的代理中的 key 过多,在被服务器拒绝之前只能尝试有限的数量。幸运的是,你有很好的配置来区分每个主机的 key ,所以你应该能够通过设置来解决这个问题
IdentitiesOnly yes
ssh_config
中的配置选项.
关于macos - AddKeysToAgent 是 ssh 配置在 Mac 上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43382771/