你能发个指南的链接吗?也许我可以看到你错过了哪一步。
但一般来说,您需要为您尝试 ssh 到 git 的用户创建自己的密钥对,然后将其公钥放入 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 git@localhost
以 user 身份登录gitlab
。
如果这就是您正在做的事情,您可以查看/var/log/messages
或/var/log/syslog
出于关键拒绝的原因。此外,验证是否在 中启用了基于密钥的身份验证/etc/ssh/sshd_config
,如果没有启用它并重新启动sshd
。