2012-12-29 53 views
1

我想在我的服务器(Centos 6.3)上安装Gitlab,并且面临着与Gitolite设置有关的一些问题。Gitolite设置:无法使用ssh密钥登录

我创建了两个用户(如指导:)中所述)。 gitlab和git。为gitlab创建ssh密钥并将公钥(gitlab.pub)复制到git的主页。并用gitolite setup -pk gitlab.pub进行设置。

现在,当我试图从gitlab帐户打开ssh会话时,它要求输入密码。命令如下

ssh [email protected] 
[email protected]'s password: #asks for password here 

没有错误或警告。测试回购的复制失败,同样的问题。任何人都可以帮助我找到问题。

指南我用是
1. Gitlab Installation(Ubuntu的)
2. https://gist.github.com/4362544(CentOS的具体)

+0

正如在指南中提供的,用户git的帐户没有设置密码。即。该帐户被禁用。我设置了密码并开始工作。 All credit to @favoretti –

回答

2

你能张贴链接到引导?也许我可以看到你错过了哪一步。

但是一般来说,您需要创建自己的密钥对,用于您尝试ssh的用户,然后将其公钥用于gitolite配置。

从您的指导,这些都是具有权威性的关键做的步骤:

# adduser --system --shell /bin/sh --comment 'git version control' --user-group --create-home --home-dir /home/git git 
# adduser --shell /bin/bash --create-home --home-dir /home/gitlab gitlab 
# su - gitlab 
$ ssh-keygen -t rsa 
$ exit 
# cp ~gitlab/.ssh/id_rsa.pub ~git/gitlab.pub 
# chmod 0444 ~git/gitlab.pub 
# su - git 
$ git clone git://github.com/gitlabhq/gitolite ~/gitolite 
$ echo -e "PATH=\$PATH:/home/git/bin\nexport PATH" >> ~/.profile 
$ source ~/.profile 
$ gitolite/src/gl-system-install 
$ sed -i 's/0077/0007/g' share/gitolite/conf/example.gitolite.rc 
$ gl-setup -q /home/git/gitlab.pub 
$ exit 

所以,检查是否有~gitlab/.ssh/id_rsa.pub,检查是否有~git/gitlab.pub

然后,仅键连接将从gitlab用户只工作,所以一定要确保你想ssh [email protected],它被记录在作为用户gitlab

如果这就是你在做什么,你可以看/var/log/messages/var/log/syslog由于拒绝密钥的原因。此外,验证在/etc/ssh/sshd_config中启用了基于密钥的身份验证,如果未启用 - 启用它并重新启动sshd

+0

新增问题 –

+0

没有得到你的第二个陈述。我用用户'gitlab'创建了ssh密钥,并在用户'git'(gitolite setup)中使用了它们。现在我正在尝试从git @ localhost(即用户'git')用户'gitlab'的连接 –

+0

请参阅编辑答案 – favoretti