1. 程式人生 > >Git私服客戶端免密碼登入

Git私服客戶端免密碼登入

伺服器搭建完GIT後,客戶端使用SSH登入,這樣便不用每次都輸入使用者名稱密碼。 首先在客戶端使用GitBash 命令生產金鑰檔案; 客戶端是windows,在資料夾C:\Users\Administrator\.ssh(沒有則新建)中開啟git bash; 輸入:ssh-keygen -t rsa "這是我的金鑰的註釋,一般用郵件名字,[email protected]" 接下來,三個回車預設即可,第一個回車是提示,第二個第三個回車是讓設定密碼,既然我們決定使用免密碼登入,那麼此處就不輸入密碼,直接Enter跳過(此處的密碼不是登入ssh的密碼,是使用git的密碼)。 如果之前已經有2個檔案,那麼命令會提示你是否覆蓋,然後根據你自己的想法選則覆蓋或者不覆蓋,yes or no。 對了前提是已經配置完git的基本資訊,name,email之類的此處不再解釋。 完畢 資料夾下有2個檔案:id_rsa,id_rsa.pub。 id_rsa是客戶端的私鑰,放在客戶端; id_rsa.pub是客戶端對應的公鑰,需要上傳到git服務端。 接下來把id_rsa.pub上傳到git服務端。 在服務端的git使用者資料夾下,一般是/home/git,新建.ssh(如果不存在的話): cd /home/git mkdir .ssh

然後進入資料夾 新建檔案authorized_keystouch authorized_keys 然後講上傳來的公鑰的內容追加到authorized_keys中去 cat 你自己的路徑/id_rsa.pub >> authorized_keys 這樣就上傳完畢了。 此時還需要重要的一步:調整許可權。 我的是centos7.4:chmod 700 /home/git/.ssh/ chmod 600 /home/git/.ssh/authorized_keys 這兩個調整時為了讓git可以通過ssh登入。 此時應該可以登入了,若不行,可以開啟檔案編輯: /etc/ssh/sshd_config vi  /etc/ssh/sshd_config 
將RSA認證開啟:RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile  .ssh/authorized_keys 儲存後,執行 service sshd restart 此時應該可以了,但是筆者的還是不行,搜尋後發現一個問題 我使用root使用者就可以登入,ssh [email protected]為什麼使用ssh [email protected]就不可以,是不是git使用者出了問題? vi /etc/passwd 發現git的使用者不是正常的git:x:1000:1000::/home/git:/bin/bash 而是 git:x:1000:1000::/var/opt/gitlab:/bin/sh,原來時gitlab搞得鬼,我之前裝gitlab因為記憶體不夠,裝到一半便停了。 於是便刪除gitlab: gitlab-ctl stop rpm -e gitlab-ce ps aux | grep gitlab 此時檢視第一行的程序,並殺掉 (是/opt/gitlab/service) kill -9 xxxx 殺掉後,在ps aux | grep gitlab確認一遍,還有沒有gitlab的程序 find / -name gitlab | xargs rm -rf 刪除所有gitlab的檔案 然後我刪除了git這個使用者: userdel git 沒關係,你原有的資料夾下的東西不會丟失。 然後重新新增使用者設定密碼
然後檢視vi /etc/passwd,發現已經git使用者已經變成正常的git:x:1000:1000::/home/git:/bin/bash 對git資料夾設定使用者組chown git:git /home/git 此時就可以正常訪問了 ssh -t [email protected] 原文連結:https://ithinkcry.cn/blog/view/detail/2c9ad8cc66e285ac0166f2204b630003 參考的文章有:https://www.cnblogs.com/xj76149095/p/6381976.htmlhttps://segmentfault.com/q/1010000000590567https://wiki.centos.org/HowTos/Network/SecuringSSHhttps://www.linuxidc.com/Linux/2013-07/87267.htmhttps://www.cnblogs.com/luozx207/p/9628195.htmlhttps://www.cnblogs.com/fly_dragon/p/8718614.htmlhttps://yq.aliyun.com/articles/114619