git使用ssh-key免密证书登录


1.生成putty密钥两种方式

方式1
在安装tortoisegit的时候,默认还会安装有Puttygen.exe这个程序,这个程序是可以生成putty密钥的。
点击Generate按钮后会按一个进度条,然后鼠标不断在该程序内动,目的是生成一些随机数。

点击save private key保存putty的私钥,putty的密钥的后缀名是ppk。

方式2
使用linux生成key
ssh-keygen -t rsa
回车之后让你选择生成位置 默认位置root/.ssh/下 我这里填写 /home/gituser/.ssh/id_rsa
输入密码 回车即可
确认密码 回车即可
进入到生成的目录 cd /home/gituser/.ssh/
cp id_rsa.pub authorized_keys

2.在服务器上添加openssh公钥
cd /home/gituser/
mkdir .ssh #如果这个目录不存在
touch .ssh/authorized_keys #如果这个文件不存在
chmod 600 .ssh/authorized_keys #设置一下文件的权限
echo "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAi1vfwiNbamTPUOSpEWvQDYrefFcuPkUuZe5Y6r4l/xEAv7e9f5QDr6QEo215r2qBBnuixAgzpjZPSvr7S51qinuq6EyXm4kFGIW6B/L4zVjx5DKxofTno39xe58QQnAixoHNN9ccNhetcxEjp7gORo1k7AMuMuQY7V/6aekiOPfh6QsWuUMf6HZhZMqpu3q3xAqHlmOU5emAif4bQKZFghEYOftHZH+E+Yo+ed65KtOJ+V5PjPxD6RMGfx3A7MhsV5PXDijD7yu0b33r+mEDLoqRO1RDQUoviryBbuE4Gcu63a3J8+3GifXbrXOHzlMipAYtHxHjg5XuLGENlEmodw== rsa-key" \
>> .ssh/authorized_keys #吧生成的公钥写入文件
文件中一行一个key 否则不生效。

3.修改权限
chmod 700 .ssh # chmod 755 .ssh 也是可以的
chmod 600 .ssh/authorized_keys
chmod 400 .ssh/private.key #把密钥的权限也设置为最小

4.在tortoisegit上使用密钥

putty密钥与openssh密钥转化
如果你有putty的私钥了,但是想在ssh客户端下使用openssh的私钥,再去生成一个openssh的密钥对比较麻烦(能偷懒就偷懒嘛)。

点击Conversions菜单项中的Import key
选择一个putty的私钥或者openssh的私钥
点击save private key保存为putty的私钥
或者点击菜单Conversions->Export OpenSSH Key保存为openssh的私钥

出于安全考虑,创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。
gituser:x:1003:1003::/home/gituser:/bin/bash
gituser:x:1003:1003::/home/gituser:/usr/local/git/bin/git-shell
1003 1003不需要按照教程中所修改 保持原有即可

声明:祁志飞||小祁的博客|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - git使用ssh-key免密证书登录


QQ:137867590