image
每次寫完博客奥裸,提交抡四、部署到GitHub上的時候族奢,會要求輸入賬戶名和密碼非区,我們可以通過設置SSH密鑰以實現(xiàn)免密部署,來提高生產(chǎn)效率饭于。
原理
由于每次部署時GitHub都要確定用戶是否為安全用戶侨歉,所以要求輸入賬戶名和密碼。而SSH就保證了這樣的安全攻锰。
SSH是一種網(wǎng)絡協(xié)議,用于計算機之間的加密登錄妓雾。一般生成的是id_rsa
和id_rsa.pub
娶吞,一個私鑰和一個公鑰。
原理就是將公鑰儲存到遠端主機械姻,私鑰儲存在本地妒蛇,登錄時遠程主機會向用戶發(fā)送一段隨機字符串,用戶用自己的私鑰加密后楷拳,再發(fā)回來绣夺。遠程主機用事先儲存的公鑰進行解密,如果成功欢揖,就證明用戶是可信的陶耍,直接允許登錄shell,不再要求密碼她混。
檢查現(xiàn)有的SSH密鑰
打開Git Bash烈钞。輸入:
ls -al ~/.ssh
查看是否存在SSH密鑰泊碑,若沒有,則生成一個新的SSH密鑰毯欣。
生成SSH密鑰
ssh-keygen -t rsa -C "GitHub郵箱地址"
為了方便馒过,回車三連。
根據(jù)文件的生成路徑酗钞,找到.ssh文件夾腹忽,打開目錄下的id_rsa.pub
,復制里面的所有內(nèi)容砚作。
將SSH密鑰添加到GitHub賬戶
右上角點擊個人資料照片留凭,點擊Setting
image
在用戶設置邊欄找到SSH and GPG keys
,點擊New SSH key
偎巢。
image
Title
字段可自行命名一個描述性標簽,并在Key
中粘貼剛剛所復制內(nèi)容蔼夜,點擊點擊Add SSH key
。
image
測試SSH密鑰的連接
回到Git bash压昼,輸入:
ssh -T git@github.com
首次輸入可能會看到警告求冷,鍵入yes
即可。
成功會返回驗證消息:
Hi username! You've successfully authenticated, but GitHub does not provide shell access.
修改站點配置文件_config.yml
deploy:
type: git
repo: git@github.com:xxxx/xxxx.github.io.git
#格式必須是上述格式
branch: master
這樣SSH密鑰便設置成功啦窍霞!