一、安装最新版git
(1)安装依赖包
1
2
# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
# yum install gcc perl-ExtUtils-MakeMaker
(2)卸载旧的git版本
(3)查看最新git版本号
登录https://www.kernel.org/pub/software/scm/git/
当前最新版为2.9.0
(4)下载&解压
(5)编译安装
1
2
3
4
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版本
1
2
# git --versiongit
version 2.9.0
二、配置SSH免密码登录
(1)创建一个git用户,用来运行git服务
(2)初始化git仓库,这里我们选择创建在/data/git/目录下
1
2
3
4
5
6
# cd /
# mkdir /data
# cd data
# mkdir /git
# cd git
# git init --bare XXXXX.git
(3)owner改为git
1
# chown git:git XXXXX.git
(4)将RSA认证打开
a:
1
# vim /etc/ssh/sshd_config
b:对应内容修改如下
1
2
3
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文件
1
2
3
# cd /home/git
# mkdir .ssh
# vim authorized_keys
按“i”键,将刚才PuTTYgen红色窗口中生成的全部内容,赞贴进来。
按“ESC”键,输入“:wq”保存退出。
(7)设置权限
1
2
3
4
5
6
7
8
# 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连接情况,查找出错原因
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com