Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
向Gitlab添加了SSH密钥,但它仍然要求提供我的凭据_Git_Ssh_Gitlab_Permission Denied - Fatal编程技术网

向Gitlab添加了SSH密钥,但它仍然要求提供我的凭据

向Gitlab添加了SSH密钥,但它仍然要求提供我的凭据,git,ssh,gitlab,permission-denied,Git,Ssh,Gitlab,Permission Denied,当我输入我的凭证时,GitLab的HTTP拉入和推送功能正在工作 但当使用添加的SSH密钥时,它总是询问我的密码,我不知道。GitLab为什么要这样做?是服务器故障吗 当调用ssh-vT时git@git.com有一个错误: 权限被拒绝(公钥) 我已经尝试了一切,甚至重新安装Git,但没有任何效果。甚至他们自己的解决方案也不起作用,如这里所述:我在新安装gitlab时遇到了类似的问题。经过一些调查,我看到了下面的消息,如中所示 systemctl状态sshd: 已从10.x.x.x端口50858

当我输入我的凭证时,GitLab的HTTP拉入和推送功能正在工作

但当使用添加的SSH密钥时,它总是询问我的密码,我不知道。GitLab为什么要这样做?是服务器故障吗

当调用
ssh-vT时git@git.com
有一个错误:

权限被拒绝(公钥)


我已经尝试了一切,甚至重新安装Git,但没有任何效果。甚至他们自己的解决方案也不起作用,如这里所述:

我在新安装gitlab时遇到了类似的问题。经过一些调查,我看到了下面的消息,如中所示 systemctl状态sshd:

已从10.x.x.x端口50858 ssh2接受git的公钥:RSA 67:01:

不允许来自10.x.x.x的用户git,因为AllowGroups中未列出任何用户组

将git用户添加到sshusers组可以解决我的问题。

希望这有帮助

我意识到这是一个很难回答的问题,但不管怎样,我都会发布这个问题

就我而言,这是一个SELinux问题。禁用它或确保授权密钥具有SELinux类型的
ssh\u home\t

semanagefcontext-a-tsh\u home\u t”/home/git/.ssh/authorized\u keys“


其中
/home/git
是git用户主目录的路径。我的问题是
/var/opt/gitlab/

检查后,我也遇到了同样的问题

/var/log/auth.log
我得到:

*User git not allowed because account is locked
*input_userauth_request: invalid user git [preauth]
*Connection closed by IP.IP.IP.IP [preauth]
所以解决办法是

sudo passwd-d git


多亏了

尝试使用git@gitlab.com:.... 而不是协议


我认为这就是您的密钥没有被用于身份验证的原因。

SSH密钥有密码,它可能会要求密码吗?我想
git.com
是您的GitLab服务器的假名称?您使用什么操作系统作为访问GitLab服务器的客户端?您使用的是什么版本的og Git?Permission是否正常(如中所述)。等等,您使用的是github还是gitlab?它们是完全不同的、不相关的(尽管在视觉上和功能上相似)。我使用我的域名而不是git.com我使用linux(由于我公司的政治原因,我不能指定操作系统)。作为客户端,它是Ubuntu 14.04。Git版本是1.9.1。是的,权限是可以的。我在用gitlab!!然后尝试我在中提出的调试选项:
ssh-tvvgit@git.com服务器上的
/usr/sbin/sshd-d
。对于不知道如何更改其repo协议的任何人,使用的命令是
git remote set url
。(公然的自我推销)我在这里为一个类似的问题写了一个答案: