連線至 Linux VM

這份文件說明如何使用 SSH,連線至具備外部 IP 位址的 Linux 虛擬機器 (VM) 執行個體。如要連線至沒有外部 IP 位址的 VM,請參閱「選擇僅限內部 VM 的連線選項」。如要使用 SSH 憑證連線至 Linux VM,請參閱「要求 OS 登入 VM 使用 SSH 憑證」。

如要瞭解 SSH 連線在 Compute Engine 中的運作方式,包括安全殼層金鑰設定和儲存,請參閱「與 Linux VM 的 SSH 連線」。

事前準備

  • 在 VM 的虛擬私有雲 (VPC) 網路中設定防火牆規則 (例如 default-allow-ssh 規則),允許通訊埠 22 上的輸入 TCP 流量。
  • 使用 OS 登入 (建議做法) 或以中繼資料為基礎的安全殼層金鑰,在 VM 上設定安全殼層存取權,並為所選方法授予必要的 Identity and Access Management (IAM) 角色。如果您使用 Google Cloud 控制台或 Google Cloud CLI 連線,Compute Engine 會為您管理安全殼層金鑰。
  • 如果尚未設定驗證,請先完成設定。驗證程序會確認您的身分,以便授予 Google Cloud 服務和 API 的存取權。如要從本機開發環境執行程式碼或範例,您可以選取下列其中一個選項,向 Compute Engine 進行驗證:

    請根據您打算如何使用本頁範例,選取對應的分頁標籤:

    控制台

    使用 Google Cloud 控制台存取 Google Cloud 服務和 API 時,不需要設定驗證機制。

    gcloud

    1. 安裝 Google Cloud CLI。 安裝完成後, 請執行下列指令,初始化 Google Cloud CLI:

      gcloud init

      如果採用外部識別資訊提供者 (IdP),必須先 使用聯合身分登入 gcloud CLI。

  • 設定預設區域和可用區。

支援的作業系統

Compute Engine 支援所有公開 Linux 映像檔的連線方法。如果是 Fedora CoreOS 映像檔,您必須先設定 SSH 存取權,才能使用這些方法。

連線至 VM

如要連線至 VM,請完成下列其中一個分頁中的步驟。

控制台

如要從Google Cloud 控制台使用瀏覽器中的 SSH 連線至 VM,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面。

    前往 VM 執行個體

  2. 在虛擬機器執行個體清單中,找到要連線的執行個體,然後點選該列的「SSH」SSH。

    執行個體名稱旁邊的 SSH 按鈕。

gcloud

使用 SSH 並執行 gcloud compute ssh 指令,連線至 VM:

  1. 在 Google Cloud 控制台啟用 Cloud Shell。

    啟用 Cloud Shell

    Google Cloud 控制台底部會開啟 Cloud Shell 工作階段,並顯示指令列提示。Cloud Shell 是已安裝 Google Cloud CLI 的殼層環境,並已設定適用於您目前專案的值。工作階段可能要幾秒鐘的時間才能初始化。

  2. 執行下列指令:

    gcloud compute ssh INSTANCE_NAME \
        --project=PROJECT_ID \
        --zone=ZONE

    更改下列內容:

    • INSTANCE_NAME:VM 的名稱。
    • PROJECT_ID:VM 所在專案的 ID。
    • ZONE:VM 所在的可用區名稱。

    如果您已設定 Google Cloud CLI 的預設屬性,則可省略這個指令中的 --project 和 --zone 旗標。例如:

    gcloud compute ssh INSTANCE_NAME

OpenSSH 用戶端

如要透過 OpenSSH 用戶端使用 SSH 連線至 VM,請按照下列步驟操作:

  1. 如果您尚未新增安全殼層金鑰,請將安全殼層金鑰新增至 VM。
  2. 前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面,找出要連線的 VM 外部 IP 位址。

    前往 VM 執行個體

  3. 在工作站上開啟終端機。
  4. 執行下列指令,連線至 VM:

    ssh -i PATH_TO_PRIVATE_KEY USERNAME@EXTERNAL_IP

    更改下列內容:

    • PATH_TO_PRIVATE_KEY:私密安全殼層金鑰檔案的路徑,該檔案對應至您新增至 VM 的公開金鑰,例如 ~/.ssh/my-ssh-key,或 ~/.ssh/google_compute_engine (如果金鑰是由 Google Cloud CLI 產生)。
    • USERNAME: 您的使用者名稱。如果您在中繼資料中管理安全殼層金鑰, 使用者名稱就是您建立安全殼層金鑰時指定的使用者名稱。 如果是 OS 登入帳戶,使用者名稱會定義在 Google 個人資料中,例如 cloudysanfrancisco_example_com 或 cloudysanfrancisco。
    • EXTERNAL_IP:VM 的外部 IP 位址。

PuTTY 應用程式

如要使用 Windows PuTTY 應用程式透過 SSH 連線至 VM,請按照下列步驟操作:

  1. 如果您尚未新增安全殼層金鑰,請將安全殼層金鑰新增至 VM。
  2. 如果工作站尚未安裝 PuTTY 應用程式,請 下載 PuTTY 套件檔案。
  3. 前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面,找出要連線的 VM 外部 IP 位址。

    前往 VM 執行個體

  4. 開啟 PuTTY 應用程式,連線設定視窗隨即開啟。
  5. 在「Host Name (or IP address)」欄位中,輸入與 SSH 金鑰相關聯的使用者名稱,以及要連線的 VM 外部 IP 位址。請使用下列格式:

    USERNAME@EXTERNAL_IP

    更改下列內容:

    • USERNAME: 您的使用者名稱。如果您在中繼資料中管理安全殼層金鑰, 使用者名稱就是您建立安全殼層金鑰時指定的使用者名稱。 如果是 OS 登入帳戶,使用者名稱會定義在 Google 個人資料中,例如 cloudysanfrancisco_example_com 或 cloudysanfrancisco。
    • EXTERNAL_IP:VM 的外部 IP 位址。
  6. 在「Category」(類別) 選單中,依序前往「Connection」(連線)>「SSH」>「Auth」(驗證)> 「Credentials」(憑證) (如果 PuTTY 版本早於 0.78,則依序前往「Connection」(連線)> 「SSH」>「Auth」(驗證))。
  7. 在「Private key file for authentication」欄位中,按一下「Browse」,然後選取與您新增至 VM 的公開金鑰相對應的私人安全殼層金鑰檔案 (.ppk)。
  8. 點選「開啟」,連線至 VM。

疑難排解

如要瞭解如何診斷及解決 SSH 連線失敗的問題,請參閱「排解 SSH 問題」。

後續步驟