1

我正在运行 gitlab,它在中央存储库 Ubuntu 机器上使用 gitolite,并且有几个用户在通过 Gitlab 的 Web 界面添加他们的公共 SSH 密钥后连接到这台机器。他们自己机器上的不同用户可以成功地从中央存储库机器上推送和拉取。在机器本身上,我不能让我的用户推送或拉到中央存储库。它总是要求输入 git 的密码!我怎样才能解决这个问题?

在注册了 SSH 密钥的远程机器上,我得到:

myusername@ubuntu:~$ ssh -T git@111.222.333.444
hello my_username_gmail_com_1348772800, this is gitolite v2.2-11-g8c4d1aa-dt running on git 1.7.0.4
the gitolite config gives you the following access:
     R   W  repo1
     R   W  repo2
    @R_ @W_ testing
     R   W  repo3

它仅在服务器本身上失败,其中(即使我注册了 SSH 密钥)我总是被提示输入密码:

serverusername@server:~$ ssh -T git@111.222.333.444
git@111.222.333.444's password: 

这是 ssh -Tvvv 调试打印的输出:http: //pastebin.com/zrNzvzRE

4

2 回答 2

1

我感谢 VonC 尝试帮助我。然而,修复只是重新启动机器并添加几个新的重新生成的密钥。我很肯定我在前几次正确地复制了它们,但最终重新创建了几次密钥。因为它起作用了,所以我称之为完成。我知道这不是一个非常令人满意的答案...

于 2012-10-04T18:50:39.227 回答
0

检查ssh -Tvvv git@111.222.333.444返回的内容,并结合sshd -d(您的 ssh 守护程序的调试会话)

你应该看到它在你git.pub的. 这些公钥和私钥也可以以其默认名称 (和) 存储在您的服务器 ( ) 上。git~git/.ssh
id_rsaid_rsa.pub~git/.ssh

于 2012-10-01T19:55:22.943 回答