如果您使用 Google Compute Engine 來運行您的應用程序,您可能希望允許特定用戶通過 SSH 訪問您的實例。為此,您必須向您的 Google 計算實例添加授權密鑰。
本文將指導您完成將授權密鑰添加到您的 Google 計算實例所需的步驟。
Google Compute Engine 是一個強大的雲計算平台,允許您在虛擬機 (VM) 上運行您的應用程序。
VM 實例是預配置的模板,可讓您快速創建和運行實例。
您可以使用 Google Cloud 控制台或命令行界面配置和管理您的實例。

設置您的授權密鑰:
現在您已經生成了 SSH 密鑰對,您必須將公鑰添加到 Google Compute Engine 實例。
這樣做可以讓你 連接到實例 使用您的私鑰。
有幾種方法可以完成此操作,但我們將使用 Google Cloud Platform Console。如果您還沒有這樣做,請前往 谷歌云控制台 並創建一個項目。
創建項目後,從左側菜單中選擇 Compute Engine,然後單擊元數據。在頁面頂部,從下拉菜單中選擇 SSH Keys,然後單擊 Add Item。
在彈出框中,輸入您的密鑰名稱並將您的公鑰粘貼到值字段中。在您的電子郵件地址中包含 ssh-rsa 前綴和結尾註釋。完成後,單擊添加。
您現在應該會在 SSH 密鑰下看到新的 SSH 密鑰。您可以通過重複這些步驟來添加密鑰,或者通過單擊每個條目旁邊的相應按鈕來編輯/刪除現有密鑰。
使用元數據 API 管理 SSH 密鑰
您可以使用元數據 API 來管理 Google Compute Engine 的 SSH 密鑰。元數據 API 使您能夠添加、刪除和列出項目實例的 SSH 密鑰。
您還可以使用元數據 API 來指定應將哪些 SSH 密鑰用於特定實例。
添加授權密鑰:
要添加授權密鑰,您需要在請求中指定以下值:
- 要添加 SSH 密鑰的實例的名稱。
- 您要添加的公鑰。這應該是標準的 ssh-rsa 格式。
- 公鑰的指紋。這可以使用 ssh-keygen 命令生成。
刪除授權密鑰:
要刪除授權密鑰,您需要在請求中指定以下值:
- 要從中刪除 SSH 密鑰的實例的名稱。
- 您要刪除的公鑰。這應該是標準的 ssh-rsa 格式。
- 公鑰的指紋。這可以使用 ssh-keygen 命令行工俱生成。
創建密鑰對
Google Compute Engine 使用公鑰密碼術來加密和解密登錄信息。
您的私鑰存儲在本地計算機上,應妥善保管。您的公鑰會上傳到 Google Compute Engine 並用於驗證您的登錄。
您將需要使用諸如 ssh-keygen 之類的工具來生成密鑰對。這將創建一個私鑰和公鑰對以上傳到 Google Compute Engine。
創建密鑰對時,必須使用強密碼。強密碼很難猜測或暴力破解。
組合大小寫字母、數字和符號是創建強密碼短語的絕佳方式。
生成密鑰對後,您必須將公共關鍵部分上傳到 Google Compute Engine。
您可以登錄 Google Cloud Platform Console 並訪問 VM Instances 頁面。
從那裡,選擇您要為其添加授權密鑰的實例,然後單擊“編輯”按鈕。在授權密鑰部分,粘貼您的公鑰並單擊保存。
設置 Keystone 和 SSH 密鑰環
在將授權密鑰添加到您的 Google Compute Engine 實例之前,您必須設置 keystone 和 SSH 密鑰環。就是這樣:
- 創建一個名為“基石” 在您的主目錄中。 $ touch ~/梯形校正
- 將以下行添加到文件中,將“和”替換為適合您帳戶的值:[auth]
用戶名 =
項目名稱= - 保存並關閉文件。
- 使用 ssh-keygen 創建新的 SSH 密鑰對: $ ssh-keygen -t rsa -f ~/.ssh/ -C @
- 出現提示時輸入密碼。這將用於加密您的私鑰;確保選擇一個您不會忘記的強密碼! $ 輸入密碼:*
確認密碼:* - 接下來,我們會將新生成的公鑰添加到 Google Compute Engine 實例。登錄 GCE 控制台,選擇包含您的實例的項目,然後單擊“計算“ 標籤。然後,單擊“網絡”,然後單擊“SSH 密鑰”點擊“添加 SSH 密鑰“ 按鈕。
- 在裡面 ”姓名”字段,為密鑰輸入一個好記的名稱。在裡面 ”公鑰”字段,輸入您的公鑰內容(位於 ~/.ssh/id_rsa.pub)並單擊“添加.”
- 最後,使用 ssh-add 保存您的 SSH 密鑰環: $ ssh-add ~/.ssh/
驗證公鑰
假設您已經生成了公鑰/私鑰對,下一步就是驗證公鑰。有兩種主要方法可以做到這一點:
- 手動檢查 SSH 指紋: 當你第一次連接到服務器時,你會看到一個 SSH 指紋。將此指紋與服務器網站或其文檔中列出的指紋進行比較。如果它們匹配,您可以確信您正在連接到正確的服務器。
- 使用 known_hosts 文件: known_hosts 文件包含您之前連接到的所有服務器的列表。當您連接到新服務器時,它的指紋將與您的 known_hosts 文件中的指紋進行比較。如果匹配,您可以在沒有任何警告的情況下連接。如果沒有匹配項,您將收到警告,並可以選擇繼續或取消連接。
如何將授權密鑰添加到 Google 計算實例
要將授權密鑰添加到您的 Google 計算實例,您需要執行以下步驟:
- 登錄到您的 Google Cloud 控制台並瀏覽 VM 實例頁面。
- 選擇要添加授權密鑰的實例,然後單擊“編輯”按鈕。
- 滾動到“SSH 密鑰”部分,然後單擊“添加項目”按鈕。
- 在文本框中,粘貼要添加的公鑰。
- 單擊“保存”按鈕以保存更改。
就是這樣!現在您已將授權密鑰添加到您的 Google 計算實例,您可以使用它通過 SSH 登錄。
值得注意的是,SSH 密鑰由公鑰和私鑰組成。公鑰被添加到您的谷歌計算實例,而私鑰保存在您的本地機器上。
當您通過 SSH 登錄時,您的本地計算機使用私鑰通過實例上的公鑰進行身份驗證。
要創建 SSH 密鑰,您可以在本地計算機上使用 ssh-keygen 命令。這將生成一個公鑰/私鑰對,您可以使用該密鑰對您的 Google 計算實例進行身份驗證。
除了向您的實例添加授權密鑰外,您還可以從 Google Cloud 控制台查看和管理您的實例元數據。
實例元數據是實例上運行的應用程序可用的有關實例的信息集合。
要查看您的實例元數據,您可以在 Cloud 控制台中使用以下命令:
curl "http://metadata.google.internal/computeMetadata/v1/instance/?recursive=true" -H "Metadata-Flavor: Google"
這將顯示與您的實例關聯的所有元數據的列表。
如果你想在項目範圍內創建 SSH 密鑰,請將其添加到項目的“元數據”部分。這將允許您在項目中的所有實例中使用相同的 SSH 密鑰。
結論:
總之,向您的 Google 計算實例添加授權密鑰非常簡單。
按照本文中概述的步驟,您可以快速將 SSH 密鑰添加到您的實例並允許特定用戶訪問它。
請記住確保您的私鑰安全可靠,並根據需要配置您的實例元數據。考慮到這些最佳實踐,您可以自信地享受 Google Compute Engine 的優勢。