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

centos7安装最新版git及免密码登录配置

2016-06-28 14:07 627 查看
一、安装最新版git
(1)安装依赖包
# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
# yum install  gcc perl-ExtUtils-MakeMaker
(2)卸载旧的git版本
# yum remove git
(3)查看最新git版本号
登录https://www.kernel.org/pub/software/scm/git/
当前最新版为2.9.0
(4)下载&解压
# cd /usr/src
# wget https://www.kernel.org/pub/software/scm/git/git-2.9.0.tar.gz # tar -zxvf git-2.9.0.tar.gz
(5)编译安装
# cd git-2.9.0
# make prefix=/usr/local/git all
# make prefix=/usr/local/git install
# echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc
# source /etc/bashrc
(6)检查git版本
# git --versiongit
version 2.9.0
二、配置SSH免密码登录
(1)创建一个git用户,用来运行git服务
# adduser git
(2)初始化git仓库,这里我们选择创建在/data/git/目录下
# cd /
# mkdir /data
# cd data
# mkdir /git
# cd git
# git init --bare XXXXX.git
(3)owner改为git
# chown git:git XXXXX.git
(4)将RSA认证打开
a:
# vim /etc/ssh/sshd_config
b:对应内容修改如下
1.RSAAuthentication yes
2.PubkeyAuthentication yes
3.AuthorizedKeysFile .ssh/authorized_keys
(5)客户端创建秘钥及公钥,这里使用的是TortoiseGit自带的PuTTYgen
a:点击Generate,并不停晃动鼠标,直到Key生成完毕



b:点击Save private key,保存秘钥到本地,记住该位置
c:不要关闭窗口。稍后需要将Key红框窗口内的内容,粘贴至git服务器的authorized_keys中。
注意,公钥的内容是此处窗口的内容,不是Save public key后生成文件中的内容
(6)git服务器上创建及配置authorized_keys

a:authorized_keys的位置,网上很多介绍的文章,没有说清楚,导致配置失败(登陆后还是需要输入密码)。authorized_keys的位置是在:如果你创建了用户username,那该文件应该创建在/home/username/.ssh/authorized_keys;如果你使用的是root用户,该文件应该创建在~/.ssh/authorized_keys(即root/.ssh/authorized_keys)。
本例创建了git用户
b:创建authorized_keys文件
# cd /home/git
# mkdir .ssh
# vim authorized_keys
按“i”键,将刚才PuTTYgen红色窗口中生成的全部内容,赞贴进来。
按“ESC”键,输入“:wq”保存退出。
(7)设置权限
# chmod 700 /home
# chmod 700 /home/git
# chmod 700 /home/git/.ssh
# chmod 600 /home/git/.ssh/authorized_keys
# chown git /home
# chown git /home/git
# chown git /home/git/.ssh
# chown git /home/git/.ssh/authorized_keys
(8)测试
a:在客户端使用TortoiseGit连接测试,如果不用输入密码,则配置成功



b:如果不成功,可以在git服务器上,使用/usr/sbin/sshd -d 监控客户端ssh连接情况,查找出错原因
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息