CentOS7.4 Git服務(wù)器搭建與配置詳解
環(huán)境準(zhǔn)備與基礎(chǔ)安裝
通過yum install git
命令安裝Git核心組件,執(zhí)行git --version
驗(yàn)證安裝結(jié)果。創(chuàng)建專用系統(tǒng)賬戶git
并設(shè)置安全目錄:
sudo adduser git
sudo mkdir /home/git/repositories
sudo chown git:git /home/git/repositories
SSH密鑰認(rèn)證配置
禁用git用戶shell訪問提升安全性,修改/etc/passwd
文件限制賬戶權(quán)限:
git:x:1001:1001::/home/git:/usr/bin/git-shell
在客戶端生成SSH密鑰對,將公鑰上傳至服務(wù)器的/home/git/.ssh/authorized_keys
文件。
倉庫創(chuàng)建與管理
使用初始化命令創(chuàng)建裸倉庫并設(shè)置權(quán)限:
sudo -u git git init --bare /home/git/repositories/project.git
sudo chmod -R 755 /home/git/repositories
訪問控制實(shí)現(xiàn)
通過gitosis-admin
倉庫管理用戶權(quán)限,配置gitosis.conf
實(shí)現(xiàn)細(xì)粒度訪問控制:
[group devteam]
writable = project.git
members = user1@server user2@client
防火墻配置優(yōu)化
開放SSH默認(rèn)端口確保通信正常,執(zhí)行防火墻規(guī)則更新:
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
客戶端連接驗(yàn)證
執(zhí)行克隆命令測試服務(wù)器連通性:
git clone git@yourserver:/home/git/repositories/project.git
安全加固建議
定期更新系統(tǒng)補(bǔ)丁,限制SSH訪問IP范圍,啟用SSH雙重認(rèn)證機(jī)制,監(jiān)控auth.log
文件審查登錄行為。