【问题标题】:Git keeps prompting me for passphrase for my SSH Key - Ubuntu VMGit 不断提示我输入 SSH 密钥的密码 - Ubuntu VM
【发布时间】:2017-07-26 16:22:14
【问题描述】:

我在 bitbucket 中有一个用于我的测试站点的 repo

SSH

git@bitbucket.org:rkim/rkim-app.git

我当前的 git 配置文件

cat .git/config

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[remote "origin"]
    url = git@bitbucket.org:rkim/rkim-app.git
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
    remote = origin
    merge = refs/heads/master
[credential]
    helper = store

git config --list

user.name=Ryan Kim
user.email=rkim@outlook.com
credential.helper=cache --timeout=3600
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
remote.origin.url=git@bitbucket.org:rkim/rkim-app.git
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.master.remote=origin
branch.master.merge=refs/heads/master
credential.helper=store

我已经尝试了here 中的所有建议,但仍然提示输入我的密码。

git 拉

输入密钥“/root/.ssh/id_rsa”的密码:

如果还有什么我可以提供的,请告诉我。

有人可以结束这个吗?

还有什么,我应该研究一下?

我需要重新启动我的 SSH 服务或我的虚拟机吗?

【问题讨论】:

    标签: linux git ubuntu ssh bitbucket


    【解决方案1】:

    Git 不断提示我输入密码

    Enter passphrase for key '/root/.ssh/id_rsa': 
    

    不,不是密码,而是密码。您是如何创建该密钥的?你想达到什么目的?

    我一直在尝试不输入密码。 – ihue 30 秒前

    那么你有两种可能。从 ssh 密钥中删除密码,您将无需再次输入密码:

    ssh-keygen -p -P old_passphrase -N "" -f ~/.ssh/id_rsa
    

    或者在某处临时缓存密码。为此,有ssh-agent,可以使用

    eval `ssh-agent`
    

    然后你可以添加密钥:

    ssh-add ~/.ssh/id_rsa
    

    系统会提示您输入一次密码,然后在会话期间不再提示。

    【讨论】:

    • 我一直在尝试不输入密码。
    • @ihue 为什么没有写在问题中?它看起来不像你的第一个问题。查看更新。
    • 这对我不起作用。我收到“保存密钥“id_rsa”失败:权限被拒绝。”即使我对文件有完全的控制权。
    • ssh-keygen -p -P old_passphrase -N "" -f ~/.ssh/id_rsa 仅在我将id_rsa 复制到临时文件、清除此临时文件的密码、然后删除原始文件并将临时文件重命名为id_rsa 后才为我工作。现在为我工作。