連接至您的 Linux 執行個體 - Amazon Elastic Compute Cloud

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

連接至您的 Linux 執行個體

有多種方法可連線至 Linux 執行個體。其中的某些方法會因連線的本機電腦作業系統而有所不同。像 EC2 Instance Connect 或 AWS Systems Manager 工作階段管理員這樣的其他方法則不會變化。您可在本節中了解如何連線至 Linux 執行個體,以及如何在本機電腦和執行個體之間傳輸檔案。如需有關如何連接至 Windows 執行個體的資訊,請參閱《Amazon EC2 Windows 執行個體使用者指南》中的連接至 Windows 執行個體

連線到您的 Linux 執行個體之前,請先完成下列先決條件。

然後,請選擇以下其中一個選項來連線至 Linux 執行個體。

注意

如需執行個體連線疑難排解秘訣,請參閱 連線到執行個體的故障診斷

如果要對 AWS Nitro System 上建置的執行個體,進行開機、網路組態和其他問題的疑難排解,您可以使用 適用於 Linux 執行個體的 EC2 序列控制台

取得執行個體的相關資訊

若準備連線至執行個體,請從 Amazon EC2 主控台或使用 AWS CLI取得下列資訊。


				Amazon EC2 主控台的「執行個體」窗格。
  • 取得執行個體的公有 DNS 名稱。

    您可以從 Amazon EC2 主控台取得執行個體的公有 DNS。檢查執行個體窗格的公有 IPv4 DNS 資料欄。如果此資料欄已隱藏,請選擇畫面右上角的設定圖示 ( 
                        The gear icon.
                    ),並選取公有 IPv4 DNS。您也可以在執行個體窗格的執行個體資訊區段中找到公有 DNS。當您在 Amazon EC2 主控台的執行個體窗格中選取執行個體時,該執行個體的相關資訊將顯示在頁面的下半部。在詳細資訊索引標籤下,查找公有 IPv4 DNS

    如果您願意,您可以使用描述實例 (AWS CLI) 或 Get-EC2Instance(AWS Tools for Windows PowerShell) 命令。

    如果未顯示公有 IPv4 DNS,則請確認執行個體狀態執行中,且您尚未在私有子網路中啟動執行個體。如果您使用啟動執行個體精靈啟動執行個體,則可能已編輯網路設定下的自動指派公有 IP 欄位,並將值變更為停用。如果停用自動指派公有 IP 選項,則執行個體在啟動時不會被指派公有 IP 地址。

  • (僅限 IPv6) 取得執行個體的 IPv6 地址。

    如果您已將 IPv6 地址指派給執行個體,則您可使用其 IPv6 地址連線至執行個體,而不必使用公有 IPv4 地址或公有 IPv4 DNS 主機名稱。您的本機電腦必須擁有 IPv6 地址,且必須設定以使用 IPv6。您可以從 Amazon EC2 主控台取得執行個體的 IPv6 地址。檢查執行個體窗格的 IPv6 IP 資料欄。或者,您可以在執行個體資訊區段中找到 IPv6 地址。當您在 Amazon EC2 主控台的執行個體窗格中選取執行個體時,該執行個體的相關資訊將顯示在頁面的下半部。在詳細資訊索引標籤下,查找 IPv6 地址

    如果您願意,您可以使用描述實例 (AWS CLI) 或 Get-EC2Instance(AWS Tools for Windows PowerShell) 命令。如需有關 IPv6 的詳細資訊,請參閱 IPv6 地址

  • 取得您的執行個體的使用者名稱。

    使用您的使用者帳戶的使用者名稱或用於啟動執行個體的 AMI 預設使用者名稱,可連線至執行個體。

    • 取得使用者帳戶的使用者名稱。

      如需如何建立使用者帳戶的詳細資訊,請參閱在 Linux 執行個體上管理使用者

    • 取得您用於啟動執行個體的 AMI 的預設使用者名稱:

      用於啟動執行個體的 AMI 預設使用者名稱

      AL2023

      Amazon Linux 2

      Amazon Linux

      ec2-user
      CentOS centosec2-user
      Debian admin
      Fedora fedoraec2-user
      RHEL ec2-userroot
      SUSE ec2-userroot
      Ubuntu ubuntu
      Oracle ec2-user
      Bitnami bitnami
      Rocky Linux rocky
      其他 檢查 AMI 提供者

找出私有金鑰並設定許可

您必須知道私有金鑰檔案的位置,才能連線至執行個體。若為 SSH 連線,則必須設定許可,以便只有您可以讀取檔案。

如需有關使用 Amazon EC2 時金鑰對如何運作的資訊,請參閱 Amazon EC2 金鑰配對和 Amazon EC2 執行個體

  • 找出私有金鑰

    取得當您啟動執行個體時所指定的金鑰對的 .pem 檔案在您電腦中的位置的完整路徑。如需詳細資訊,請參閱識別啟動時指定的公有金鑰。如果找不到私有金鑰檔案,請參閱我的私有金鑰遺失。如何與我的 Linux 執行個體連線?

    如果使用 Putty 連線至執行個體,且需要將 .pem 檔案轉換為 .ppk,則請參閱本節 使用 PuTTY 從 Windows 連線至 Linux 執行個體 主題中的 使用 PuTTYgen 轉換私有金鑰

  • 設定私有金鑰的許可,確保只有您可以讀取

    • 從 macOS 或 Linux 進行連線

      如果您計劃在 macOS 或 Linux 電腦上使用 SSH 用戶端連線至 Linux 執行個體,請使用下列命令設定私有金鑰檔案的許可,以便只有您能夠讀取該檔案。

      chmod 400 key-pair-name.pem

      如果您未設定這些許可,則無法使用此金鑰對來連接至您的執行個體。如需詳細資訊,請參閱 錯誤:未受保護的私有金鑰檔案

    • 從 Windows 進行連線

      開啟檔案總管並在 .pem 檔案上按一下滑鼠右鍵。選取屬性 > 安全性索引標籤,然後選擇進階。選擇停用繼承。移除目前使用者以外的所有使用者存取權。

(選用) 取得執行個體指紋

為了保護自己免受 man-in-the-middle 攻擊,您可以驗證顯示的指紋來驗證即將連線的執行個體的真實性。如果您從第三方提供的公用 AMI 啟動執行個體,則驗證指紋非常有用。

任務概觀

首先,從執行個體取得執行個體指紋。然後,當您連線至執行個體並提示您驗證指紋時,請將您在此程序中取得的指紋與顯示的指紋進行比較。如果指紋不相符,可能是有人試圖 man-in-the-middle 攻擊。如果相符,您就能很有信心地連線至您的執行個體。

取得執行個體指紋的先決條件
  • 執行個體必不得處於 pending 狀態。只有在執行個體的第一次開機完成後,才能使用指紋。

  • 您必須是執行個體擁有者才能取得主控台輸出。

  • 有多種方法可以獲取實例指紋。如果您要使用 AWS CLI,則必須將其安裝在本機電腦上。若要取得有關安裝的資訊 AWS CLI,請參閱《AWS Command Line Interface 使用指南》 AWS Command Line Interface中的〈裝〉。

取得執行個體指紋

在步驟 1 中,您將獲得控制台輸出,其中包括實例指紋。在步驟 2 中,您會在主控台輸出中找到執行個體指紋。

  1. 使用下列其中一種方法取得主控台輸出。

    Console
    1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

    2. 從左側瀏覽器中,選擇「執行環境」。

    3. 選取執行個體,然後選擇 [動作]、[監控和疑難排解]、[取得系統記錄]。

    AWS CLI

    在您的本機電腦上 (不在您要連線的執行個體上),使用 get-console-output(AWS CLI) 指令。如果輸出很大,可以將輸出傳送至文字檔案,這可能更易於讀取。請注意,當您使用 AWS 區域 時,您必須明確指定 AWS CLI,或透過設定預設「區域」(Region) 來指定。如需有關如何設定或指定區域的資訊,請參閱《AWS Command Line Interface 使用者指南》中的組態基礎概念

    aws ec2 get-console-output --instance-id instance_id --query Output --output text > temp.txt
  2. 在控制台輸出中,找到位於下的實例(主機)指紋BEGIN SSH HOST KEY FINGERPRINTS。可能有幾個實例指紋。當您連線至執行個體時,它只會顯示其中一個指紋。

    具體的輸出可能因作業系統、AMI 版本以及是否使用 AWS 建立的金鑰對而有所不同。下列為範例輸出。

    ec2:############################################################# ec2: -----BEGIN SSH HOST KEY FINGERPRINTS----- ec2: 256 SHA256:l4UB/neBad9tvkgJf1QZWxheQmR59WgrgzEimCG6kZY no comment (ECDSA) ec2: 256 SHA256:kpEa+rw/Uq3zxaYZN8KT501iBtJOIdHG52dFi66EEfQ no comment (ED25519) ec2: 2048 SHA256:L8l6pepcA7iqW/jBecQjVZClUrKY+o2cHLI0iHerbVc no comment (RSA) ec2: -----END SSH HOST KEY FINGERPRINTS----- ec2: #############################################################
    注意

    當您連線至執行個體時,您會參考此指紋。