5

SSH Passphrase 删除

 2 years ago
source link: https://blog.jiahonzheng.com/post/remove-ssh-passphrase/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

今天,帮组里的实习生“解决”了拉取代码需要输入 SSH Passphrase 的问题,特此记录一下。

实习生遇到的问题是这样的:无论是在 VSCode 还是在命令行,执行代码操作,都需要输入 Passphrase 。通常来说,输入 Passphrase 是有些麻烦,但这也不是个问题。可问题就在于,该同学不知道设置了啥密码。

突发奇想,让他输入了机器的开机密码,巧了,验证通过。估计是在一开始生成公私钥时,在提示是否要设置 Passphrase 时,以为是要输入开机密码,才有了这一出。

“问题”排查出来后,为了方便该同学更轻松地拉取代码,我将 Passphrase 删除了。

删除 SSH 公私钥中的 Passphrase 得区分两种情况:知道 Passphrase、不知道 Passphrase。

知道 Passphrase

当我们知道 Passphrase 时,可通过执行以下命令删除 Passphrase 。

ssh-keygen -f ~/.ssh/id_rsa -p

执行期间,需要我们输入 Old Passphrase 和 New Passphrase ,注意 New Passphrase 无需设置,直接 Enter 即可。命令执行完成,即可移除 Passphrase 。

不知道 Passphrase

如果是使用 OS X 系统,可以不用重新生成,具体方法参考 GitHub 文档

如果不是 OS X 系统,我们就只能重新生成 SSH 公私钥文件了,而且生成后还得在 GitHub、GitLab 等代码托管平台添加新的公钥,还是挺繁琐的。

# 备份原有的公私钥文件
mv ~/.ssh/id_rsa ~/.ssh/id_rsa.backup
mv ~/.ssh/id_rsa.pub ~/.ssh/id_rsa.pub.backup

# 重新生成公私钥文件
ssh-keygen -o

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK