ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

windows摆脱ssh私钥密码

2022-03-28 18:04:15  阅读:170  来源: 互联网

标签:私钥 windows openSSH agent 密码 add ssh


看SO上说,私钥设置密码的原因是如果私钥被别人access了,至少还有最后一道防线。
其实这个说法挺牵强的,因为私钥在设计上本来就应该是见光死的,被人看到了就是万策尽。给私钥加上一个密码反而还需要人去记忆这个密码,也就是偏离了使用keypair进行认证的本质。
用户会想尽办法摆脱再输入一次密码的痛苦,想方设法地使用各种工具保存密码,最终还是失去了给私钥上密码的意义。

总之,在Win下倒腾了大半个下午,终于把整体的流程搞清楚了,在此记录一下:

私钥含有密码(不然就是加密的)->使用此私钥需要先使用密码进行解密->git,openSSH可以帮助我们记录密码,省去这个步骤(下述展示使用openSSH的做法)

首先,启用openSSH服务端:开始 > 服务 > 找到“openSSH Authentication Agent” > “启动类型”选择自动(延迟启动)

否则将找不到ssh agent:

> ssh-add
Error connecting to agent: No such file or directory

此时就可以在命令行使用ssh-agentssh-add之类与Linux等价的命令了。

> ssh-add <file-to-private-key>

输入一次密码之后,openSSH会记住这个私钥的密码,就不必再输入了。笔者使用的VScode应当是调用openSSH连接远程服务器,所以执行此命令之后,VScode不再提示输入私钥的密码。

查看ssh-agent都记住了哪些私钥的密码:

> ssh-add -l
3072 (redacted) (RSA)

如需删除私钥的密码,则需使用其对应的公钥,这个公钥可以通过ssh-keygen进行导出:

> ssh-keygen -y -f /path/to/private/key

> ssh-add -d /path/to/public/key

此时还需要再输入一次私钥的密码= =

标签:私钥,windows,openSSH,agent,密码,add,ssh
来源: https://www.cnblogs.com/orange-snow/p/16068304.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有