【问题标题】:ssh authentication fails after ssh-agent terminatesssh-agent 终止后 ssh 身份验证失败
【发布时间】:2016-04-03 22:47:45
【问题描述】:

背景故事:目前正在运行 Arch Linux 并尝试使用 SSH 密钥对 Github 进行身份验证。我安装了 openssh 7.1p1-1 以及 git 2.6.4-1。

问题:ssh-agent 终止(系统重新启动或 shell 关闭)后,我在尝试使用以下方式连接到 git 时收到“Permission Denied (publickey)”消息:

    ssh -vT git@github.com

关于为什么我的身份不存在的任何想法?我是否必须在 ~/.ssh/config 或 /etc/ssh/ssh_config 文件中添加任何特殊内容?

感谢您提供的任何帮助。

【问题讨论】:

    标签: ssh archlinux


    【解决方案1】:

    ssh-agent 消失后,ssh 不再知道id_github 的存在,因此它永远不会尝试使用该密钥进行身份验证。如果您想强制ssh 始终使用该密钥作为github.com,您可以将其添加到~/.ssh/config

    Host github.com
        IdentityFile ~/.ssh/id_github
        User git # Handy addition so you can skip the username part in Github URLs
    

    【讨论】:

    • 这里回答了我关于为什么 SSH 密钥不持久的问题。但似乎在尝试从 github 克隆时使用此解决方案无济于事。因此,经过更多研究,我启用了一个密钥环并将我的 id_github ssh 密钥添加到它。感谢您的帮助!
    猜你喜欢
    • 2014-05-20
    • 2017-01-03
    • 2015-02-01
    • 2018-07-12
    • 1970-01-01
    • 1970-01-01
    • 2018-09-22
    • 2016-02-23
    • 1970-01-01
    相关资源
    最近更新 更多