gitlab使用ssh一直提示Permission denied的问题

Posted lihei12345

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gitlab使用ssh一直提示Permission denied的问题相关的知识,希望对你有一定的参考价值。

使用http链接进行操作正常,但是由于http对于文件尺寸的限制,我们的项目历史文件较多,达到200多M,这就需要修改gitlab和nginx的一系列参数了,但是最后并没有搞定这个问题,还是觉得ssh的方式更加简单一些


使用ssh链接进行操作的时候,总是出现下面的问题

[user@host ~]$ git clone user@gitlab.xx.com:projectname/proj.git
Cloning into itemcenter-all...
user@gitlab.xx.com's password: 
Permission denied, please try again.
user@gitlab.xx.com's password: 
Permission denied, please try again.
user@gitlab.xx.com's password: 
Permission denied (publickey,password,keyboard-interactive).
fatal: The remote end hung up unexpectedly
这个是别人的问题,跟我们的是一样的问题,链接:http://tinyhema.iteye.com/blog/2019754,按照上面的提示,修改了gitlab的配置文件之后,发现问题依旧存在。

最后折腾的时候发现,一个链接https://gitcafe.com/GitCafe/Help/tickets/351,在~/.ssh中添加config文件,并在里面配置host和对应的IdentityFile,这个问题,貌似是由于使用http操作的时候,不需要指定认证文件。这个问题是我一时手贱,ssh-keygen时自己指定了文件的名称所致,没有默认使用id_rsa名称,这个时候需要在config文件中设置匹配才可以,否则貌似无法使用某个默认的私钥,需要在config中强制指定才行

这个时候会弹出弹窗输入密码,输入使用ssh-keygen生成密钥文件时候输入的密码即可

对于多个使用不同私钥的git仓库而言,在config文件中可以设置多个域名以及强制对应的私钥文件,注意这个文件的格式问题:

Host 192.168.83.20

IdentityFile ~/.ssh/test_rsa

Host git.oschina.net

IdentityFile ~/.ssh/oschina_rsa

后面把工程移入新的仓库的时候,使用命令:

git remote rm origin

git remote add origin git:username@domain.com

这样就可以直接使用新的仓库了,再把代码push上去就完成仓库的迁移了,git用着真舒服

以上是关于gitlab使用ssh一直提示Permission denied的问题的主要内容,如果未能解决你的问题,请参考以下文章

git提交代码报错Permission denied, please try again

gitlab解决git Clone 出现 Permission denied, please try again

gitlab-登录账户遇到ERROR: Permission to XXX.git denied to user报错怎么办

Gitkraken 与 SSH 到 Gitlab

2019-04-26 CentOS SSH 密码正确,但仍提示“Permission denied”

SSH 登录 Ubuntu 出现错误,拒绝密码:Permission denied,please try again.