猿问

如何在不创建新密钥的情况下删除SSH密钥的密码短语?

在笔记本电脑上创建新的SSH密钥时,我设置了密码。但是,正如我现在意识到的那样,当您试图在一小时内多次通过SSH 提交(Git和SVN)到远程位置时,这非常痛苦。

我能想到的一种方法是删除我的SSH密钥并创建新的。有没有办法删除密码短语,同时仍然保持相同的密钥?


收到一只叮咚
浏览 955回答 3
3回答

富国沪深

简短答案:$ ssh-keygen -p然后,这将提示您输入密钥文件位置,旧密码短语和新密码短语(可以将其保留为空白而没有密码短语)。如果您想在没有提示的情况下全部完成所有操作,请执行以下操作:$ ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile]重要提示:请注意,执行命令时,它们通常会~/.bash_history以纯文本格式(包括提供的所有参数)(即本例中的密码)记录在文件(或类似文件)中。因此,除非有特殊原因,否则建议您使用第一个选项。请注意,尽管您-f keyfile无需指定-Pnor 仍然可以使用-N,并且密钥文件默认为~/.ssh/id_rsa,所以在很多情况下甚至不需要。您可能要考虑使用ssh-agent,它可以将密码短语缓存一段时间。最新版本的gpg-agent还支持ssh-agent使用的协议。

子衿沉夜

$ ssh-keygen -p 为我工作打开git bash。粘贴:$ ssh-keygen -p按Enter键即可找到默认位置。输入旧密码输入新的密码-空白确认新密码-空白BOOM不再需要为git push输入密码的痛苦了。谢谢!
随时随地看视频慕课网APP
我要回答