忘记了id_rsa的密码[重复]


14

我忘记了密码ssh。我打算删除目录(id_rsa, id_rsa.pub and known_hosts)中的文件并从头开始。ssh自从我整个心血来潮以来,我就一直没有使用过,并且之前我已经清除了键中的内容,但是我认为我做错了。

我的问题是ssh,当我连接到git其他东西时,如何正确地重新创建文件并设置为停止询问密码?



3
(已经标记为dup。因此无法正确回答)OS X很有可能已将密码短语存储在钥匙串中,因此您不必在每次连接服务器时都输入密码。打开“ 钥匙串访问”,搜索“ id_rsa”,您应该得到“ SSH:/ Users /您的名称/.ssh/id_rsa”(您的私钥)和“种类”列为“应用程序密码”的结果。您可以执行“编辑”>“将密码复制到剪贴板”以将其取回。系统将要求您输入“登录钥匙串密码”,这只是您用来登录Mac用户帐户的密码。更改密码:cd ~/.sshssh-keygen -f id_rsa -p
William Turrell

Answers:


35

您需要删除SSH公钥/私钥,重新创建它们,然后将新创建的公钥添加到您使用的服务器和在线服务中。

  • 删除您的SSH公钥/私钥:

    rm ~/.ssh/id_rsa*
    
  • 重新创建密钥对,选择一个新密码:

    ssh-keygen -t rsa -f ~/.ssh/id_rsa
    
  • 将新创建的私钥添加到OS X钥匙串中以存储密码并管理自动将其解锁:

    ssh-add -K ~/.ssh/id_rsa
    
  • 将公钥复制到OS X剪贴板,以添加到GitHub等Web服务。

    cat ~/.ssh/id_rsa.pub | pbcopy
    
  • 将您新创建的公钥添加到~/.ssh/authorized_keys远程服务器的文件中。确保确保对远程~/.ssh文件夹(700)和~/.ssh/authorized_keys600)都具有正确的权限。您可能想研究使用ssh-copy-id来简化此过程。


5
谢谢。我不需要重置它,我在OS X钥匙串中搜索id_rsa,然后单击显示密码图标。输入了我的root密码&瞧:)
gef

由于某些原因,当我使用注释中指出的方法时,OS X给我错误的密码。因此,如果发生这种情况,请一定尝试实际的答案,因为它确实为我解决了问题。
CodyEngel

有趣的是-我也遇到了“密码错误”的问题。它似乎在显示“其他”的东西。
Fattie

@gef-感谢您为我节省了不必要的悲伤和时间。我想知道这是否可以通过某种方式在非MacOSX机器上完成。
perennial_noob
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.