相关文章推荐
开心的斑马  ·  App ...·  1 年前    · 
近视的乌冬面  ·  Python ...·  1 年前    · 

使用 git clone 命令时出现Permission denied (public key) 。

二. 解决问题:

1、首先尝试重新添加以前生成的key,添加多次,仍然不起作用。

2、使用命令 ssh -v git@yourserver 测试,最后几行结果如下:

debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Trying private key: /home/gr/.ssh/id_rsa
debug1: Trying private key: /home/gr/.ssh/id_dsa
debug1: Trying private key: /home/gr/.ssh/id_ecdsa
debug1: No more authentication methods to try.
Permission denied (publickey).

3、分析:尝试了3个private key,但都没有成功,最后是导致Permission denied.

4、查看我的密钥, ls ~/.ssh/ :

id_rsa id_rsa.pub  known_hosts

执行ssh-add ~/.ssh/rsa

报错( Could not open a connection to your authentication agent

先执行  eval `ssh-agent`  (是~键上的那个`) 再执行 ssh-add ~/.ssh/rsa成功

ssh-add -l 就有新加的rsa了

2048 63:c5:d8:6c:a0:0c:a8:9c:26:d8:f8:95:de:29:04:eb /home/gr/.ssh/bajie (RSA)

6、再使用ssh -v git@github.com测试连接,可以看到验证通过:

debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /home/gr/.ssh/bajie
debug1: Server accepts key: pkalg ssh-rsa blen 279
debug1: Authentication succeeded (publickey).
Authenticated to github.com ([192.30.252.129]:22).

注释:如果是gitlab,提示不一样,但是可以明显看出连接成功

7、最后git clone项目成功。

参考博客:

https://my.oschina.net/grnick/blog/201155

http://blog.csdn.net/roserose0002/article/details/40078577

http://blog.csdn.net/sunnypotter/article/details/18948053/

serverA机器已经生产rsa密钥 且已经将public key添加到serverB机器/root/. ssh /authorized_keys 但是 ssh root@135.251.208.141机器时仍然需要输入密码,即无密码认证失败 分析与处理: 用 ssh -v debug访问,日志如下,但是从日志看不到失败原因,只知道在用publickey认证时,对端没有reply; 今天 Git 忽然抽风了,显示 连接 失败 众所周知 Git 一般不抽风,抽了风就比较麻烦,大概率是网络问题但不太好定位,一番搜索之后在 Git hub官网找到了解决方案 原文在这,因为官方暂时还没有提供中文文档,这里先记录一下 原因我没有看懂,不过解决方案大致就是换了一个域名 连接 首先测试一下你的 Git 是否能正常访问 ssh . git hub.com 第一次 连接 可能会收到一段警告,指出在 known_hosts 中找不到该host,或者它是由另一个名称找到的,这里yes通过就好 之后如果显示下面信息,就说明你已经 连接 成功了 至此,这个机器以后再操作这个 git hub 账号的所有操作都不需要输入密码了。也能 clone 它的所有仓库,私密不私密的都可以。你想让哪个机器实现免密登录就在哪个机器上生成密钥,虚拟机也算一台新的机器,因为它最终生成的密钥跟宿主机是不一样的。但命令行操作时一定每次都需要账号密码。通过查看 ssh key 列表,能看到这些 key 被 使用 的情况,最后一次 使用 是什么时候等。验证完成,或者输入密码之后,就直接返回 SSH key 列表了,就算添加完成了。目录,里面的文件可能跟你的不同,不要紧,有这个文件就行。. 天已经因为tortoise git 的配置问题浪费了大半天了,困惑了好久。 把自己的经验分享一下,遇到类似问题的可以借鉴一下!如下确认本地的 ssh 秘钥与 git hub保持一致。然后打开Tortoise Git 设置,如下图进入相应页面,选择相对路径的 ssh .exe文件 问题就会迎刃而解然后,看看是否可以?如果不行,按照下列的方法重新安装一下tortoise git 故障现象: [root@web-m data]# git clone ssh :// git @ git lab.lixinkuan.com:22022/lxk/core. git Cloning into 'core'... git @ git lab.lixinkuan.com's password: Permission denied, please try again. git @ git lab.lixink... ssh : connect to host git hub.com port 22: Connection timed out。能访问 git hub且配置了 ssh 密钥,但是 使用 git ssh 访问不了 然后,执行命令确认问题是否解决。 解决方法是: 使用 CLI来做,先cd到 ssh 上一级目录,再执行下面命令复制密钥,输入到 git hub里面。原因是我用记事本打开了pub文件,复制粘贴, 事实证明这样可能会导致复制的内容有问题。按照教程,死活连不上 git hub。 git 连接 不到远程 ssh ,解决Unable to negotiate with **** port 22: no matching host key type found. Their offer: Unable to reach a settlement: [ ssh -dss] and [ ssh -rsa, rsa-sha2-512, rsa-sha2-256, ecdsa-sha2-nistp256, ssh -ed25519] C:\Users\Administrator. ssh 编辑config文件(没有的话,自行添加一个) 把 ssh 支持的算法加入进去. 如下所示 HostKeyAlgorithms + ssh -dss,rsa-sha2-512,rsa-sha2-256, ssh -rs