来自: Babun导致本地SSH-KEY不可用 | 码农家园
(加多了一行命令)
Babun是一款集颜值功能于一身的window平台下的命令行工具。它集成了zsh、Cygwin等强大的工具,支持各种配置,并且有丰富的插件支持;并且有丰富的命令和命令提示功能,以及超级棒的历史命令提示。
ps: 前文有我记录的关于Babun的一些特点,以及使用,请看windows平台下超强的cmd工具Babun使用笔记一文
问题描述
如果你本地先安装了git命令行工具并生成了ssh-key,再安装Babun之后,可能会导致原有的ssh-key不可用,原因:
安装Babun会添加全局变量Home,指向Babun安装目录下的.Babun/cymwin/home,因此在使用命令生成key时不会在C:\Users\userName\.ssh目录。
ssh -T git@github.com
Permission denied (publickey).
解决办法
删掉以前目录(C:\Users\userName\.ssh)下的ssh-key。
生成重新生成ssh key,此时生成的key在.Babun\cymwin\home\userName\.ssh下。
把生成的key映射到C:\Users\userName\.ssh目录。
获取权限
把key关联到相应github账户(此处以github为例)。
测试ssh key是否可用
ssh -T git@github.com
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@? ? ? ? WARNING: UNPROTECTED PRIVATE KEY FILE!? ? ? ? ? @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0670for'/home/Administrator/.ssh/id_rsa'are too open.
It is recommended that your private key files are NOT accessible by others.
This private key will be ignored.
Load key"/home/Administrator/.ssh/id_rsa": bad permissions
Permission denied (publickey).
当生成key之后,测试是否联通,你会发现还是报错了,提示权限不够,错误信息为Permissions 0670
在终端切换到C:\Users\userName\.ssh目录,执行下面命令
cp -rf /home/userName/.ssh /c/Users/userName/.ssh
rm /home/userName/.ssh
ln -s /c/Users/userName/.ssh /home/userName/.ssh
此操作会把.Babun\cymwin\home\userName\.ssh目录下的ssh key映射C:\Users\userName\.ssh
在终端切换到根目录(~),执行以下命令(一般只执行其中一个)
chmod 400 ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
chmod 700 ~/.ssh/id_rsa
ssh -T git@github.com