git pull 配置免密_ssh/git pull 无密码登录 自动拉取
作者:matrix
被圍觀: 1,705 次
發(fā)布時(shí)間:2019-05-28
4 條評論 ?
💡NOTICE:這是一個(gè)創(chuàng)建于 574 天前的主題,其中的信息可能已經(jīng)有所發(fā)展或是發(fā)生改變。
測試需要S,C兩臺服務(wù)器,我需要C服務(wù)器ssh登錄到S服務(wù)器進(jìn)行操作。
目的:服務(wù)器C端使用命令git pull無密碼登錄自動(dòng)從服務(wù)器S拉取最新代碼。
客戶端生成RSA密鑰
服務(wù)器C屬于客戶端角色,需要生成本地服務(wù)器的rsa密鑰對,然后價(jià)格公鑰發(fā)送到服務(wù)器S。
登錄服務(wù)器C
$ cd ~
$ ssh-keygen -t rsa
#后面就默認(rèn)回車
默認(rèn)會在 ~/.ssh中生成id_rsa.pub,id_rsa這兩個(gè)密鑰對。
發(fā)送公鑰
我之前是手動(dòng)嘗試把公鑰文本打來粘貼到服務(wù)器S,然而ssh登錄的話還是要密碼驗(yàn)證。測試發(fā)現(xiàn)最好是使用ssh-copy-id命令進(jìn)行操作。
還是在服務(wù)器C進(jìn)行操作
$ ssh-copy-id -i ~/.ssh/id_rsa.pub login_user@HOST -p 22
說明:
ssh-copy-id命令可以快速的將公鑰復(fù)制到遠(yuǎn)程主機(jī)
-i 指定公鑰路徑
login_user 為登錄的用戶名
HOST 為登錄的遠(yuǎn)程服務(wù)器S的地址,域名/IP均可
-p 指定服務(wù)器S的ssh端口號
命令輸入后應(yīng)該會讓你輸入login_user用戶的密碼,若出現(xiàn)and check to make sure that only the key(s) you wanted were added.則表示公鑰應(yīng)該添加成功。
以免出現(xiàn)問題,現(xiàn)在可以去服務(wù)器S端看看,指定用戶名login_user的文件/home/login_user/.ssh/authorized_keys會有客戶端的rsa公鑰。
登錄測試
在服務(wù)器C操作
測試登錄:
ssh login_user@HOST -p 22
若登錄成功 BINGO!
其他問題
如出現(xiàn)還是需要密碼的情況:
1.需要確定/etc/ssh/sshd_config配置文件中是否允許RSAAuthentication
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
2.用戶目錄權(quán)限問題
.ssh父目錄的權(quán)限是755(我的是/root),.ssh目錄權(quán)限是700,authorized_keys文件 600
3.確保倉庫地址是ssh地址
如果還是https的話就用git remote set-url origin命令修改下:
$ git remote set-url origin git@HOST:user/project.git
參考:
https://blog.csdn.net/alifrank/article/details/48241699
https://blog.csdn.net/chengyuqiang/article/details/78432675
https://blog.csdn.net/b_x_p/article/details/78534423
https://www.cnblogs.com/0xcafebabe/p/5234678.html
總結(jié)
以上是生活随笔為你收集整理的git pull 配置免密_ssh/git pull 无密码登录 自动拉取的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: js解析url query_js如何解析
- 下一篇: 黑星什么意思_星月菩提黑星海南料什么意思