昨天用crt生成密匙對之後把公匙上傳到了伺服器,驗證可以登入之後,刪了密匙。對你沒看錯,刪了密匙只留下了公匙,再次登入的時候提示密匙不存在,這時候我竟然沒有認真看報錯資訊,大概看了一眼就以為公匙載入有問題,試著把公匙放到了另外的資料夾,還試了重啟crt,試了重啟電腦。。。。。。,最後才意識到可能是因為我刪了另外乙個檔案,重新生成密匙對,上傳公匙,終於好了。(因為我前面把密碼登入ssh關了,還要先從vps控制台登入。)
之所以犯了這樣的錯,明顯就是不懂公匙登入ssh的過程嘛。
ssh登入有兩種,密碼和密匙,在遠端伺服器驗證本地主機的身份之前先會協商建立安全通道,所以登入的密匙只用於驗證身份,和兩台機器的連線無關。
密匙登入的過程
選擇密匙登入方式,首先要上傳公匙到伺服器的相應使用者的~/.ssh/authorized_keys檔案裡面,並且賦予它執行許可權。本地主機連線遠端主機時,密匙會生成數字簽名,這個數字簽名只有用和密匙對應的公匙才能識別,因為遠端主機裡面已經有公匙了,所以它可以驗證本地主機的身份。數字簽名不能重用,每次生成的數字簽名是不同的,所以也不用擔心被別人竊取。但是千萬要小心儲存好密匙檔案。
git 生成公匙私匙
直接 ssh keygen t rsa c qq.com 也行 git config global user.name 使用者名稱 使用者名稱隨便起!你能記住就行!沒報錯就接著來!git config global user.email 郵箱 沒報錯就是好訊息!然後執行生成公鑰和私鑰的命令 ssh ...
ssh公鑰登入
使用密碼登入,每次都必須輸入密碼,非常麻煩。好在ssh還提供了公鑰登入,可以省去輸入密碼的步驟。1 原理 所謂 公鑰登入 原理很簡單,就是使用者將自己的公鑰儲存在遠端主機上。登入的時候,遠端主機會向使用者傳送一段隨機字串,使用者用自己的私鑰加密後,再發回來。遠端主機用事先儲存的公鑰進行解密,如果成功...
ssh公鑰登入
當你想免密碼登入某台server,將要你那台操作的本機的pub公鑰複製出去到server上 2 將ssh客戶的公鑰新增到ssh伺服器中使用者的認證檔案中 複製公鑰檔案 將客戶端中的使用者公鑰檔案複製到ssh伺服器中 公鑰檔案的複製可使用軟盤 u盤或網路 將公鑰內容追加到authorized keys...