搭建git服务器遇到问题+扩展

配置了ssh key之后,clone还是需要输入密码

问题我简单的描述一下:配置了ssh key之后,clone的时候一直要求我输入密码,在网上查阅了好多问题,但是最后还是未能发现真正解决问题的。

这里记录一下:

.ssh文件的权限必须是700,有人说我多设置为777咋样,直接点:不行
.ssh/authorized_keys文件权限必须是600,和上面的相同,不行设置其他的

将公钥复制到ssh服务器

将前一步骤生成的公钥~/id_rsa.pub文件,复制到ssh服务器对应用户下的~/.ssh/authorized_keys文件,可以有多种方式,这里只介绍常用的三种。
[适用于osx系统]使用ssh-copy-id-for-OSX工具将公钥复制至ssh服务器

brew install ssh-copy-idssh-copy-id username@hostname #将username和hostname替换为你的ssh服务器用户名和IP

当ssh服务器username用户目录下尚未有.ssh目录时使用此方式

cat ~/.ssh/id_rsa.pub | ssh username@hostname "mkdir ~/.ssh; cat >> ~/.ssh/authorized_keys"

通用方式

scp ~/.ssh/id_rsa.pub username@hostname:~/ #将公钥文件复制至ssh服务器
ssh username@hostname #使用用户名和密码方式登录至ssh服务器
mkdir .ssh #若.ssh目录已存在,可省略此步
cat id_rsa.pub >> .ssh/authorized_keys #将公钥文件id_rsa.pub文件内容追加到authorized_keys文件

配置完毕,git clone后发现gitconfig过不去

git的裸仓库也必须设置git config --global user.name "sxw"
git config --global user.email "[email protected]"

linux权限扩展

另起一文

你可能感兴趣的:(搭建git服务器遇到问题+扩展)