在我的Debian服务器上安装Git之后。以下是我到目前为止所做的事情:
sudo apt-get install git
sudo adduser --system --shell /bin/bash --group --disabled-password --home /var/git/ git
sudo chown git:git /var/git
ssh-keygen -t rsa
chmod 755 ~/.ssh
chmod 600 ~/.ssh/id_rsa
chmod 644 ~/.ssh/id_rsa.pub
sudo mkdir /var/git/.ssh
sudo touch /var/git/.ssh/authorized_keys
echo "_CONTENT_OF_MY_PUBLIC_KEY_HERE_" >> /var/git/.ssh/authorized_keys
chmod 755 ~/.ssh
chmod 644 ~/.ssh/authorized_keys
ssh git@my-server.com
这很有效,但当我尝试连接时,用这个:
ssh git@my-server.com
那问我一个密码,我不知道该写什么(我已经尝试过我的公钥,什么也没有我的root密码,但这不起作用)。
如何更改密码,或在哪里可以找到密码?
答案 0 :(得分:0)
以root身份运行passwd git
以更改git
用户的密码。
然而,这是非常规的。通常使用ssh密钥登录是首选(不仅仅是出于安全考虑,一些git框架,如gitolite依赖于它,以便检测哪个用户正在访问存储库以进行授权)。
公钥不起作用的原因是,/var/git/.ssh/authorized_keys
不归git用户所有(运行chown git:git /var/git/.ssh/authorized_keys
来修复此问题)