向Gitlab添加了SSH密钥,但它仍然要求提供我的凭据
当我输入我的凭证时,GitLab的HTTP拉入和推送功能正在工作 但当使用添加的SSH密钥时,它总是询问我的密码,我不知道。GitLab为什么要这样做?是服务器故障吗 当调用向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
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
。(公然的自我推销)我在这里为一个类似的问题写了一个答案: