什么是 SSH 密鑰對
- SSH 密鑰對是通過一種加密算法生成的一對密鑰:一個對外界公開,稱為“公鑰”;另一個自己保留,稱為“私鑰”。
- 如果已經將公鑰配置在 Linux 實例中,那么,在本地或者另外一個實例中,可以使用私鑰通過 SSH 命令或相關工具登錄實例,而不需要輸入密碼。
前置條件
- ECS 實例為 IO 優化實例
- ECS 實例的操作系統類型為 Linux
- ECS 實例有公網 IP
- 本文適用於本地環境為 Mac/Linux 環境
步驟:
-
步驟 1. 創建 密鑰對
我們可以在 【ECS控制台】 -> 【網絡和安全組-密鑰對】 -> 【創建密鑰對】,點擊 【確定】創建后系統會生成私鑰,我們保存該私鑰即可 如下圖:
-
步驟 2. 創建 ECS
-
步驟 3. 通過 SSH 密鑰對 登錄雲服務器
ssh -i ~/Desktop/testKeyPair.pem root@xx.xx.xx.xx
說明:
- -i 后面的參數為 步驟1 所下載的私鑰,我將其放在了桌面上。
- 阿里雲創建的ECS,Linux系統默認登錄名是root
- xx.xx.xx.xx為我們剛才創建的ECS的公網IP地址
運行該命令后可能會報
Permissions 0644 for 'testKeyPair.pem' are too open.
錯誤,提示我們文件權限過大,我們需要將私鑰文件權限改成600,即運行chmod 600 ~/Desktop/testKeyPair.pem
命令。之后重連即可正常登陸了。如下圖:
可能遇到的問題:
- ECS 的安全組 22 端口未開啟,我們可以在 ECS控制台 -> 實例 -> 管理 -> 本實例安全組 -> 配置規則 界面 查看/配置 安全組規則,配置下 22 端口即可。
ECS 控制台 密鑰對 其他功能
- 導入已有公鑰
- 對已有實例進行 綁定/解綁 密鑰對