搭建自己的git服務器、配置公鑰私鑰(解決每次 clone push需要密碼問題)

前提條件:需要自己的服務器(廢話嘮叨一下- -!)

服務器的系統:CentOS 7,不會ssh遠程登錄服務器的出門左拐百度一下咯

服務器端

第一步:安裝git

 yum install -y git 

安裝完成後

第二步:添加git使用的用戶和密碼

useradd git   #git 爲你的用戶名  不喜歡可以自己定義一個,但是定義後,下面的git都必須改爲你對應的用戶名!

passwd git    #爲新用戶設置密碼這步一定不能跳過,跳過後面clone的時候會提示輸入密碼的!!密碼要8位數字以上!

提示:passwd: all authentication tokens updated successfully.證明密碼設置成功

第三步:創建git倉庫

選擇一個目錄作爲你的倉庫 例如/srv

cd /srv  #進入創庫目錄

git init --bare aa.git  #初始化項目測試目錄

但是該目錄擁有者不是git用戶,我們必須把它改爲git用戶:

 chown -R git:git aa.git #更改擁有者的用戶,更改後:

服務器端工作暫時完成了,下面到客戶端:

客戶端

第一步:安裝git軟件 https://git-scm.com/downloads,一路next就可以安裝完成了

安裝完成後,打開git

第二步,設置你本地的用戶名和email地址:

git config --global user.name "myname"
git config --global user.email "[email protected]"

第三步,生成公私鑰:

ssh-keygen -t rsa -C "[email protected]"   然後一直按enter;知道出現成功的圖案:

id_rsa.pub你面的內容就是我們本電腦的公鑰

複製該密鑰到服務器端的/home/git/.ssh/authorized_keys文件中

注意:!!!!在/home/git/目錄下ls -al 查看是否有.ssh目錄!!

如果沒有,自己新建一個.ssh目錄和authorized_keys文件:

mkdir  .ssh   #創建目錄

chown -R git:git .ssh  #修改擁有者

cd .ssh

 touch authorized_keys  #創建keys文件

 chmod 700 authorized_keys #修改文件權限

chown -R git:git authorized_keys#修改文件擁有者

第四步:把客戶端電腦生成的密鑰複製到authorized_keys文件中:

vim authorized_keys

然後按a,插入密鑰,然後按ESC鍵,再輸入  :wq    保存退出(也可以用winscp或者其他編輯器把密鑰添加進去)

注意!!每個密鑰佔一行,如果想添加多個客戶端電腦需要換行再添加下一個用戶!

設置基本完成了,下面進行驗證:

git clone git@服務器地址:/srv/aa.git   

出現下面提示證明成功了,注意:可能第一次clone 需要密碼,成功之後就不需要每次輸入密碼,如果每次clone 或者push都需要密碼肯定上面某個步驟錯了,或者git用戶權限不夠,密鑰填寫格式錯誤,密鑰文件和.ssh放置的目錄不正確,要仔細檢查一下。

本人專業水平有限,有什麼錯漏的地方請大神們指正,非常感謝。

 

 

 

 

 

發佈了38 篇原創文章 · 獲贊 10 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章