新的gitlab实例拒绝允许推送
安装的gitlab、web界面和日志记录表明一切正常。但是,当我尝试向它推送新的回购协议时,它失败了(对于http): 类似地,通过ssh尝试新的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
[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