用户无法连接到git(在Ubuntu上使用gitolite)

我能够运行以下命令:

git clone admin@ip address:gitolite-admin.git 

当我尝试使用以下步骤添加新用户时,新用户无法连接:

迄今采取的步骤

 1. Copied the public key into the keydir (also tried copying it in a separate directory within the keydir) 2. I added a repo in the config file for the new userID 3. git add -A 4. git commit -m 'adding new user keys and repo' 5. git push origin master 

所有这些命令运行时不会引发任何错误。
当用户尝试login时,他无法连接以下命令:

 git clone username@IPAddress:newRepoName.git 

连接超时抱怨无法连接端口22.任何build议,以帮助解决这个问题(用户的公钥是从他的电脑产生的 – 同一个用于login作为用户 – 不同的计算机用于pipe理员访问)。 提前致谢

编辑 :我删除了(非pipe理员)用户的公钥,跑了提交并推送到服务器之后,我为用户添加了一个新的公钥,跑了添加,提交和推送到服务器。 pipe理员的回复提到用户已被添加。 但是,当用户尝试使用下面的命令连接到服务器时,连接尝试是不成功的(我可以从我的计算机克隆项目 – 额外的用户不能,任何其他用户也不能,所以我猜我犯了configuration错误额外的用户 – 任何想法将是非常受欢迎的,并感谢耐心)

git clone [email protected]:testProject克隆到'testProject'…权限被拒绝(publickey)。 致命的:远端意外挂断

这个地址不会工作: git clone username@IPAddress:newRepoName.git

当使用gitolite时,您始终使用相同的帐户:

 git clone git@IPAddress:newRepoName.git 

(如果git是安装gitolite的帐户)

请参阅“ 添加和删​​除用户 ”以了解如何声明新用户:

即在gitolite.conf文件中添加用户标识命名的公钥。

然后,用户必须在~/.ssh/id_rsa(.pub)有他/她的密钥,并使用git@IPAddress:newRepoName.gitgit ,not username )进行任何git命令

问题是客户端设置连接到托pipegit的amazon aws实例。 我已经接受了VonC的回应,因为他对我的所有问题都非常敏感。谢谢

  1. 我有用户连接通过SSH(使用SSH证书文件) – 用户接受了连接到他们的计算机的密钥。
  2. 用户以下列格式将configuration文件添加到他们的〜。/ ssh文件中:

    主机test.git.com

    HostName amazonHostName

    用户adavid

    PreferredAuthentications publickey

    IdentityFile〜。/ ssh / adavid

用户也运行ssh-add命令。 但是,他们无法使用短名称连接到git存储库,必须使用连接的长名称。

再次 – Merci beaucoup VonC!

对于其他具有相同问题的人,请检查服务器上的ssh是否使用AllowGroups。 可能是服务器上的git-user不在正确的组中。

诊断:尝试ssh到服务器上的git-user,看看在/var/log/auth.log中出现了什么如果它显示“User git from not allowed,because of user's groups are listed in AllowGroups”,你需要检查哪些组在AllowGroups,然后将git用户添加到其中的一个。