linux系統中搭建CS架構的Git伺服器
一、首先在自己的伺服器中安裝Git
具體在linux系統中安裝Git與後面怎麼配置這裡就不提了,看這邊部落格:https://blog.csdn.net/JJBOOM425/article/details/83411545
二、在伺服器端建立管理Git倉庫的使用者
在伺服器端的命令列中輸入如下語句,建立一個git使用者,並設定好該使用者的密碼,後面我們將git倉庫的許可權賦給git使用者
$ useradd git
$ passwd git
三、在伺服器端建立git倉庫
這裡我們先建立了一個 /home/data/git/gittest.git 目錄,再使用 git init 指令將這個目錄改變為git倉庫,再進入到 /home/data/git
這裡我也嘗試再客戶端進行git clone指令,會報錯,接下去我們來解決這個問題。
雖然不能克隆倉庫,但是會跳出
The authenticity of host '10.1.18.14 (10.1.18.14)' can't be established.
RSA key fingerprint is SHA256:F8hGYvUSA0C6wiOQ6fx+ddguTwxZWEuyDsPrWT7Yt60.
Are you sure you want to continue connecting (yes/no)?
這裡我們輸入yes,會將一些資訊寫入到客戶端的 ~/.ssh/known_hosts 目錄中,儲存的內容如下:
四、在伺服器端git開啟RSA認證
配置檔案放在了 /etc/ssh/sshd_config 中,如下圖,先看看該目錄下是否有該目錄:
對sshd_config檔案進行編輯,先看看如下的配置是否被註釋,如果是將前面的 “#”刪除,如下圖:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
將sshd_config
五、將客戶端公鑰匯入伺服器端 /home/git/.ssh/authorized_keys 檔案
使用 $ ssh [email protected] 'cat >> .ssh/authorized_keys' < ~/.ssh/id_rsa.pub將客戶端的公鑰匯入檔案(注:這步在客戶端中執行)
執行以後,可以在服務端的/home/git/.ssh/authorized_keys中檢視是否新增公鑰,如下圖:
六、在客戶端中克隆伺服器端的倉庫
在客戶端中使用指令 $ git clone [email protected]:/home/data/git/gittest.git 克隆倉庫到客戶端中:
如上,說我克隆了一個空的倉庫,說明我們克隆成功。因為那個建立後我沒有放任何東西,這樣子就成功搭建了Git伺服器。