您的位置:首页 > 运维架构 > Shell

Git客户端-使用Git Bash下载服务端仓库

2017-02-13 15:55 183 查看
一、客户端安装Git

在客户端安装Git,下载链接为https://git-for-windows.github.io/

二、管理员验证服务端仓库是否初始化成功

打开Git-Bash



去到指定下载目录:

**去到d盘:**cd d:



下载仓库:

git clone git@182.92.1.1:/data/git/code.git



输入yes



输入yes后,在【C:\Users\thinkpad.ssh】中会多出一个文件【known_hosts】



下一步要输入服务端的git用户的密码



密码输入正确后,就能把代码库下载下来

三、给开发人员使用时,需要使用秘钥登录

1、在服务端创建存放公钥的文件:创建authorized_keys文件

**进入git用户的目录:**cd /home/git/

**创建.ssh目录:**mkdir .ssh

**授权.ssh目录给git用户:**chown -R git:git .ssh

**进入.ssh目录:**cd /home/git/.ssh/

**创建authorized_keys文件:**touch authorized_keys

**授权authorized_keys给git用户:**chown -R git:git authorized_keys

2、服务端打开RSA认证

**进入ssh的目录:**cd /etc/ssh

**编辑sshd的配置文件:**vi sshd_config

找到三个配置,原始截图为:



修改后的截图为:



关键配置解释:

是否允许使用纯RSA公钥认证(仅用于SSH-1):RSAAuthentication yes

是否允许公钥认证(经用户SSH-2):PubkeyAuthentication yes

存放该用户可以用来登录的RSA公钥:AuthorizedKeysFile .ssh/authorized_keys

**重启 sshd 服务:**service sshd restart

**验证sshd服务是否启动:**service sshd status

3、禁用git用户的shell登录

出于安全考虑,创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。

**去到etc目录:**cd /etc

**查看文件:**vi passwd

找到类似下面的一行:

git:x:1001:1001:,,,:/home/git:/bin/bash

改为:

git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

4、生成公钥和私钥

在客户端安装Git,下载链接为:https://git-for-windows.github.io/

**生成公钥和私钥,在Git Bash中输入:**ssh-keygen -t rsa -C “test@163.com”



输入后,按多个回车后,会在在【C:\Users\thinkpad.ssh\】中生成一个公钥(以.pub结尾)和一个私钥

用文本文件打开【C:\Users\thinkpad.ssh\id_rsa.pub】公钥,将公钥的内容保存到服务端的/home/git/.ssh/authorized_keys文件中

添加后的截图为:



添加后再下载代码时就不需要git用户的密码了



关键点:系统会在【C:\Users\thinkpad.ssh】中寻找是否有【id_rsa】的私钥,然后与服务端的公钥进行比对,私钥和公钥匹配时就能免密码下载代码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  git 客户端