新的gitlab实例拒绝允许推送

新的gitlab实例拒绝允许推送,git,gitlab,Git,Gitlab,安装的gitlab、web界面和日志记录表明一切正常。但是,当我尝试向它推送新的回购协议时,它失败了(对于http): 类似地,通过ssh尝试 [gerry@boundary ct12Logger]$ git remote rm origin [gerry@boundary ct12Logger]$ git remote add origin git@aaaa.bbbb.cccc.gov:gerry/ct12-logging.git [gerry@boundary ct12Logger]$ gi

安装的gitlab、web界面和日志记录表明一切正常。但是,当我尝试向它推送新的回购协议时,它失败了(对于http):

类似地,通过ssh尝试

[gerry@boundary ct12Logger]$ git remote rm origin
[gerry@boundary ct12Logger]$ git remote add origin git@aaaa.bbbb.cccc.gov:gerry/ct12-logging.git
[gerry@boundary ct12Logger]$ git push -u origin master --verbose
Pushing to git@aaaa.bbbb.cccc.gov:gerry/ct12-logging.git
Access denied.
fatal: The remote end hung up unexpectedly
这些都安装在RHEL 6.4系统上。一个状态请求声称sidekiq和gitlab运行正常。我已经走到了死胡同,如果我能尝试一些想法,我将不胜感激

另一个数据点:虽然我已经适当地设置了用户名,但当我执行以下操作时

ssh -T  git@aaaa.bbbb.cccc.gov
我得到以下信息:

Welcome to GitLab, Anonymous!

这对我来说意味着git找不到合适的用户名

注意:您可能需要屏蔽您发布的错误消息中显示的真实域名

现在试试这些:

因为
ssh-Tgit@aaaa.bbbb.cccc.gov
正在将您标识为
匿名
,请重试

ssh -i /path/to/private/key -T  git@aaaa.bbbb.cccc.gov
如果这样做有效,那么将以下行添加到本地计算机上的
$HOME/.ssh/config

Host *
   StrictHostKeyChecking no

Host aaaa.bbbb.cccc.gov
   User git
   IdentityFile /path/to/private/key
   Port 22
现在再试一次

 ssh -T git@aaaa.bbbb.cccc.gov
您可以将
v
开关添加到
ssh
命令中,以获得详细输出,如下所示

 ssh -Tvv git@aaaa.bbbb.cccc.gov
(您可以使用更多的
v
s来获得更详细的输出)。这在故障排除
ssh
相关问题时非常有用

希望这能奏效。如果失败,则最有可能的情况是您在gitlab注册的公钥与您正在使用的私钥不匹配

更新:
刚发现这个链接。您可能会发现这很有用:

检查您自己的工作很有帮助。我使用的是Apache2,在RHEL中称为httpd。我在/etc/httpd/conf/httpd.conf中做了所有必要的调整,但在/etc/httpd/conf.d/gitlab.conf中遗漏了一些。我在该文件中使用了错误的代理端口,因为它是在httpd.conf之后读取的,所以它正在更改代理端口设置

它起作用了。测试。我得让另外两个同事测试一下,那就好了


感谢大家的指点。

问题似乎是git版本

我删除了1.7.10版本,安装了1.7.12

它起作用了。测试


这是一篇非常好的文章,通过在Centos上安装新的git版本来实现这一目标


它解决了我这方面的问题。

您是否已将权限授予正在推送的用户,以便在
gitlab
上进行裸回购?您是否已向
gitlab
注册此用户
ssh密钥
?嗯。。。我认为是这样。我曾尝试将非全局用户名更改为“gerry”,但gerry有访问权限,完整用户名也在其中。我怀疑我错过了一个小问题,但我现在缺乏解决这个问题的经验!谢谢刚刚试过“嘘git@aaaa'我得到:通道0上的PTY分配请求失败欢迎来到GitLab,匿名!与aaaa.bbbb.cccc.gov的连接已关闭。我目前的前提是用户名有问题?而且,ssh密钥都是在gitlab注册的。如果这是一个新的安装,我真诚地建议转到
ubuntu
。几个月后,我从RHEL搬到了Ubuntu。由于每个月都会发布一个新版本,因此不值得花费所有的精力来调试和修复
gitlab
人们都喜欢
ubuntu
(至少到目前为止是这样)。现在屏蔽域名有什么意义?一旦它被发布到堆栈溢出,除非一个温和的方法抹去了答案;一个溜了过去。谢谢你发现了。我将采取一些步骤。我一直在考虑各种建议,按照创建新密钥对的说明,我已经通过gui从gitlab实例中删除了违规者。。。并发现,也许钥匙不在它们应该去的地方。你知道我应该去哪里吗~git/.ssh/authorized_key?在
/home/git/gitlab shell/config.yml
中查找
auth_文件:
的值。它指向由
GitLab
Link存储授权密钥的文件,现在是404。
 ssh -Tvv git@aaaa.bbbb.cccc.gov