使用 SSH 從 Linux 或 macOS 連線至 Linux 執行個體 - Amazon Elastic Compute Cloud

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

使用 SSH 從 Linux 或 macOS 連線至 Linux 執行個體

您可以使用安全殼層 (SSH) 從執行 Linux 或 macOS 作業系統的本機電腦 Connect 線到 Linux 執行個體,也可以使用獨立於平台的連線工具,例如 EC2 執行個體連線或工作 AWS Systems Manager 階段管理員。如需有關平台獨立工具的詳細資訊,請參閱 連接至您的 Linux 執行個體

本頁旨在說明如何透過 SSH 用戶端連線至執行個體。若要從 Windows 連線至 Linux 執行個體,請參閱 從 Windows 進行連線

注意

如果您在嘗試連線至執行個體時收到錯誤訊息,請確認執行個體符合所有 SSH 連線先決條件。如果其符合所有先決條件,但您仍然無法連線至 Linux 執行個體,請參閱 連線到 Linux 執行個體的疑難排解

SSH 連線先決條件

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

檢查您的執行個體狀態

啟動執行個體之後,執行個體可能需要幾分鐘的時間準備就緒讓您連接。請確認您的執行個體已通過狀態檢查。您可以在 Instances (執行個體) 頁面的 Status check (狀態檢查) 欄檢視此資訊。

取得公有 DNS 名稱和使用者名稱,以連線到執行個體

若要尋找執行個體的公有 DNS 名稱或 IP 地址,以及連接執行個體時應使用的使用者名稱,請參閱 取得執行個體的相關資訊

找出私有金鑰並設定許可

若要找出連線到執行個體所需的私有金鑰,並設定金鑰許可,請參閱 找出私有金鑰並設定許可

視需要在本機電腦安裝 SSH 用戶端

您的本機電腦可能已預設安裝 SSH 用戶端。您可以透過在命令列輸入 ssh 來進行驗證。若您的電腦無法識別該命令,您可以安裝 SSH 用戶端。

  • Windows Server 2019 和 Windows 10 的最新版本 - 已隨附 OpenSSH 並做為可安裝的元件提供。如需詳細資訊,請參閱 Windows 中的 OpenSSH

  • 舊版 Windows - 下載並安裝 OpenSSH。如需詳細資訊,請參閱 Win32-OpenSSH

  • Linux 和 macOS X - 下載並安裝 OpenSSH。如需詳細資訊,請參閱 https://www.openssh.com

使用 SSH 用戶端連接至 Linux 執行個體

請使用下列程序使用 SSH 用戶端連線至您的 Linux 執行個體。如果您在嘗試連線至執行個體時遇到錯誤,請參閱 連線到 Linux 執行個體的疑難排解

使用 SSH 連線至您的執行個體
  1. 在終端機視窗中,使用 ssh 命令來連接到執行個體。您指定私密金鑰 (.pem) 的路徑和檔案名稱、執行個體的使用者名稱,以及執行個體的公有 DNS 名稱或 IPv6 位址。如需如何尋找私密金鑰、您的執行個體的使用者名稱,以及執行個體 DNS 名稱或 IPv6 位址的詳細資訊,請參閱 找出私有金鑰並設定許可取得執行個體的相關資訊。若要連線到您的執行個體,請執行下列其中一個命令。

    • (公有 DNS) 若要使用執行個體的公有 DNS 名稱進行連線,請輸入下列命令。

      ssh -i /path/key-pair-name.pem instance-user-name@instance-public-dns-name
    • (IPv6) 或者,如果您的執行個體具有 IPv6 位址,若要使用執行個體的 IPv6 位址進行連線,請輸入下列命令。

      ssh -i /path/key-pair-name.pem instance-user-name@instance-IPv6-address

    您會看到如下的回應:

    The authenticity of host 'ec2-198-51-100-1.compute-1.amazonaws.com (198-51-100-1)' can't be established.
    ECDSA key fingerprint is l4UB/neBad9tvkgJf1QZWxheQmR59WgrgzEimCG6kZY.
    Are you sure you want to continue connecting (yes/no)?
  2. (選用) 確認安全提醒中的指紋是否符合您在(選用) 取得執行個體指紋中取得的指紋。如果這些指紋不匹配,可能是有人試圖 man-in-the-middle 攻擊。如果它們符合,請繼續下一個步驟。

  3. 輸入 yes

    您會看到如下的回應:

    Warning: Permanently added 'ec2-198-51-100-1.compute-1.amazonaws.com' (ECDSA) to the list of known hosts.

使用 SCP 用戶端將檔案傳輸至 Linux 執行個體

在本機電腦和 Linux 執行個體之間傳輸檔案的一種方式是使用安全複製通訊協定 (SCP)。本節說明如何使用 SCP 傳輸檔案。此程序類似使用 SSH 連線到執行個體的程序。

必要條件

下列程序會逐步引導您使用 SCP 使用執行個體的公有 DNS 名稱傳輸檔案,或是使用 IPv6 地址 (如果執行個體具備的話) 傳輸檔案。

使用 SCP 在電腦和執行個體之間傳輸檔案
  1. 決定來源檔案在電腦上的位置,以及執行個體上的目的地路徑。在下列範例中,私有金鑰檔案的名稱為 key-pair-name.pem,要傳輸的檔案為 my-file.txt,執行個體的使用者名稱為 ec2-user,執行個體的公有 DNS 名稱為 instance-public-dns-name,而執行個體的 IPv6 地址為 instance-IPv6-address

    • (公用 DNS) 若要將檔案傳輸到執行個體上的目的地,請從您的電腦輸入下列命令。

      scp -i /path/key-pair-name.pem /path/my-file.txt ec2-user@instance-public-dns-name:path/
    • (IPv6) 若要將檔案傳輸到執行個體上的目的地 (如果執行個體具有 IPv6 地址),請從您的電腦輸入下列命令。IPv6 位址必須用方括號 ([ ]) 括住,必須逸出 (\)。

      scp -i /path/key-pair-name.pem /path/my-file.txt ec2-user@\[instance-IPv6-address\]:path/
  2. 如果您尚未使用 SSH 連接到執行個體,則會看到如下所示的回應:

    The authenticity of host 'ec2-198-51-100-1.compute-1.amazonaws.com (10.254.142.33)'
    can't be established.
    RSA key fingerprint is 1f:51:ae:28:bf:89:e9:d8:1f:25:5d:37:2d:7d:b8:ca:9f:f5:f1:6f.
    Are you sure you want to continue connecting (yes/no)?

    (選用) 您可以選用驗證安全性警示中的指紋是否符合執行個體指紋。如需詳細資訊,請參閱 (選用) 取得執行個體指紋

    輸入 yes

  3. 如果傳輸成功,則回應會和下列內容相似:

    Warning: Permanently added 'ec2-198-51-100-1.compute-1.amazonaws.com' (RSA) 
    to the list of known hosts.
    my-file.txt                                100%   480     24.4KB/s   00:00
  4. 若要反向 (從 Amazon EC2 執行個體到您的電腦) 傳輸檔案,請反轉主機參數的順序。例如:您可以從 EC2 執行個體傳輸 my-file.txt 到本機電腦上的目的地 my-file2.txt,如下列範例所示。

    • (公用 DNS) 若要將檔案傳輸到電腦上的目的地,請從您的電腦輸入下列命令。

      scp -i /path/key-pair-name.pem ec2-user@instance-public-dns-name:path/my-file.txt path/my-file2.txt
    • (IPv6) 如果執行個體具有 IPv6 地址,欲將檔案傳輸到電腦上的目的地,請從您的電腦輸入下列命令。IPv6 位址必須用方括號 ([ ]) 括住,必須逸出 (\)。

      scp -i /path/key-pair-name.pem ec2-user@\[instance-IPv6-address\]:path/my-file.txt path/my-file2.txt