Git服务器SSH用户授权失败

Git服务器SSH用户授权失败

我已经在服务器上安装了 gitlabhq。

我在从客户端机器克隆 repo 时遇到问题。不起作用:

client> git clone [email protected]:myrepo.git /tmp/myrepo

client> ssh [email protected]
PTY allocation request failed on channel 0

在服务器根目录下我可以成功执行命令。

gitserv> sudo -u gitlab -H git clone [email protected]:myrepo.git /tmp/myrepo
Start clonnin repo

我认为这是 SSH 密钥问题,但不知道该怎么办。

顺便说一下一个奇怪的想法:

我无法从客户端机器登录 ssh 服务器

ssh [email protected]
Received disconnect from my.serv.ip.add: 2: Too many authentication failures for root

但从另一台服务器登录成功。

anotherserv> [email protected]
gitserv>

答案1

由于 GitLabHQ 基于 Gitolite,因此您必须确保以下功能正常运作:

ssh [email protected]

只要你没有看到 Gitolite 答案,任何克隆都无法工作。
你需要将公共 ssh 密钥添加到你的 GitLab 配置文件中,并检查是否~git/.ssh/authorized_key已更新:

 command="/home/git/bin/gitolite-shell user_email_uuid",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa AAAAB3NzaC1...Bc5CtLFcg+lTz+ZKKWpf+p5/9ZaR9T/KtpbibnvhQ== username

当您在中看到类似的行时~git/.ssh/authorized_key,则来自客户端的 ssh 请求应该可以工作。

相关内容