ubuntu 16.04 搭建 git
阿新 • • 發佈:2018-11-28
參考文章
http://www.runoob.com/git/git-server.html
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afed3df579123eca000
環境
伺服器環境:
ubuntu 16.04
本地環境:
windows7
git 2.18.0
本地端
下載git
https://git-scm.com/downloads
這個安裝就沒什麼好說的了,一路點選下一步就好
建立金鑰對
ssh-keygen
方便起見,配置時一直回車,按預設選項配置。
上傳公鑰到伺服器
ssh-copy-id 使用者名稱@ip地址
伺服器端
先查詢一下剛才傳送過來的客戶端公鑰
updatedb
locate authorized_keys
傳到 /home/ubuntu/.ssh/authorized_keys 了
安裝git
apt install git
建立一個git使用者組和使用者
groupadd git
useradd git -g git
建立證書登入
建立git目錄
mkdir /home/git
建立.ssh目錄
mkdir /home/git/.ssh
建立authorized_keys檔案
touch /home/git/.ssh/authorized_keys
將剛才本地上傳的公鑰匯入authorized_keys檔案
cat /home/ubuntu/.ssh/authorized_keys >> /home/git/.ssh/authorized_keys
檢視一下匯入的公鑰
沒問題
禁用shell登入
出於安全考慮,建立的git使用者不允許登入shell,這可以通過編輯/etc/passwd檔案完成。
vim /etc/passwd
git:x:1001:1001:,,,:/home/git:/bin/bash
改為:
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell
這樣,git使用者可以正常通過ssh使用git,但無法登入shell,因為我們為git使用者指定的git-shell每次一登入就自動退出。
初始化Git倉庫
新建一個目錄作為Git倉庫
mkdir /home/mygit
修改許可權
chown git:git mygit
進入目錄
cd /home/mygit
初始化一個空的git倉庫
git init --bare first.git
所屬使用者改為git
chown -R git:git first.git
克隆倉庫
git clone git@192.168.0.113:/home/mygit/first.git
完成