使用 ssh-keygen 更改 ssh 密码会更改 ssh 密钥?
Posted
技术标签:
【中文标题】使用 ssh-keygen 更改 ssh 密码会更改 ssh 密钥?【英文标题】:Changing ssh passphrase with ssh-keygen makes a change of the ssh key? 【发布时间】:2018-09-08 01:18:20 【问题描述】:我错误地设置了我的 ssh 密钥的密码。
但是每次使用密钥时都要输入密码是很烦人的。
我想删除我的密钥的密码:
$ ssh-keygen -p -f <my/key/file>
我担心,但是,密钥会被改变。
这项工作似乎太危险了,无法测试,因为我以多种方式使用密钥。
man page 说,命令不会改变我认为的密钥,但不确定:
-p
请求更改私钥文件的密码,而不是创建新的私钥。该计划将 提示输入包含私钥的文件,输入旧密码,两次输入新密码。
【问题讨论】:
【参考方案1】:确实,密码只是对私钥文件的本地保护。从服务器的角度来看,密钥保持不变。
尝试对你来说没有危险。只需在转换前备份您的加密密钥即可。
虽然正确的解决方案是使用authentication agent(如OpenSSH ssh-agent
)。使用代理时,您只需在将密钥加载到代理时输入一次密码。
如果您想要/需要未加密的密钥来实现某些自动化,正确的解决方案是拥有两个密钥。一种加密用于交互使用,另一种未加密用于无人值守使用。因此,如果您的未加密密钥被泄露,您可以取消它而无需更换您的加密密钥。
【讨论】:
【参考方案2】:另一种解决方案是使用 ssh-agent 将您的密码重置为新密码,并将新密码保留为空字符串
-
通过终端转到您的
.ssh
文件夹
ssh-keygen -p
输入您的当前密码
跟随交互式屏幕,只需按两次 Enter 键
【讨论】:
这是 OP 想要尝试的。 OP 只是在询问是否可以这样做。以上是关于使用 ssh-keygen 更改 ssh 密码会更改 ssh 密钥?的主要内容,如果未能解决你的问题,请参考以下文章
实现SSH无密码登录:使用ssh-keygen和ssh-copy-id
自动在ssh上输入密码:: dont想做ssh-keygen :: spawn不能正常工作
使用 ssh-keygen 和 ssh-copy-id 实现SSH无密码登录功能