使用 PuTTY 從 Windows 連線至您的 Linux 執行個體 - Amazon Elastic Compute Cloud

使用 PuTTY 從 Windows 連線至您的 Linux 執行個體

啟動執行個體之後,您可以連接到此執行個體,並以一般使用電腦的方式使用。

下列指示會說明如何使用 PuTTY (Windows 免費的 SSH 用戶端) 連線至您的執行個體。如果您在嘗試連線至執行個體時遇到錯誤,請參閱執行個體連線的故障診斷

先決條件

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

確認執行個體已準備就緒

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

驗證連接到執行個體的一般先決條件

若要尋找執行個體的公用 DNS 名稱或 IP 位址,以及連接執行個體時應使用的使用者名稱,請參閱 連接至執行個體的一般先決條件

在本機電腦安裝 PuTTY

PuTTY 下載頁面下載並安裝 PuTTY。如已安裝舊版的 PuTTY,建議您下載最新版本。務必安裝整個套件。

使用 PuTTYgen 轉換私有金鑰

找到您在啟動執行個體時所指定金鑰的私有金鑰 (.pem 檔案)。將 .pem 檔案轉換為 .ppk 檔案,以便搭配 PuTTY 使用。如需詳細資訊,請遵循下一節中的步驟。

使用 PuTTYgen 轉換私有金鑰

PuTTY 原本不支援 SSH 金鑰的私有金鑰格式 (.pem)。但 PuTTY 提供一套名為 PuTTYgen 的工具,可將金鑰轉換為 PuTTY 所需的格式。您必須先如下所示將您的私有金鑰 (.pem 檔案) 轉換為此格式 (.ppk 檔案),才能使用 PuTTY 連線至您的執行個體。

轉換您的私有金鑰

  1. Start (開始) 功能表中選擇 All Programs (所有程式)PuTTYPuTTYgen

  2. Type of key to generate (要產生的金鑰類型) 下,選擇 RSA (SSH-2 RSA)。如果您使用的是舊版 PuTTYgen,請選擇 SSH-2 RSA

    
							PuTTYgen 中的 RSA 金鑰
  3. 選擇 Load (載入)。根據預設,PuTTYgen 只會顯示副檔名為 .ppk 的檔案。若要尋找您的 .pem 檔案,請選擇顯示所有類型之檔案的選項。

    
							選取所有檔案類型
  4. 為您在啟動執行個體時所指定的金鑰對選取 .pem 檔案,然後選擇 Open (開啟)。PuTTYgen 會顯示已成功匯入 .pem 的通知。選擇 OK (確定)。

  5. 選擇 Save private key (儲存私有金鑰) 來以 PuTTY 可以使用的格式儲存金鑰。PuTTYgen 會顯示有關未以複雜密碼儲存金鑰的警告。選擇 Yes (是)

    注意

    私有金鑰上的複雜密碼是額外一層保護。即使有人探索到您的私有金鑰,在沒有複雜密碼的情況下就無法使用您的私有金鑰。使用複雜密碼的缺點是提高自動化的難度,因為需要人力介入登入執行個體,或將檔案複製到執行個體。

  6. 為您用於金鑰對的金鑰指定相同名稱 (例如,my-key-pair),然後選擇 Save (儲存)。PuTTY 會自動新增 .ppk 副檔名。

您的私有金鑰對現已有正確的格式可供 PuTTY 使用。您現在可以使用 PuTTY 的 SSH 用戶端連線至您的執行個體。

連線至您的 Linux 執行個體

請使用下列程序使用 PuTTY 連線至您的 Linux 執行個體。需要您為私有金鑰建立的 .ppk 檔案。如需詳細資訊,請參閱上一節中的使用 PuTTYgen 轉換私有金鑰。如果您在嘗試連線至執行個體時遇到錯誤,請參閱執行個體連線的故障診斷

使用 PuTTY 連線到您的執行個體

  1. 啟動 PuTTY (從開始功能表中選擇所有程式、PuTTY、PuTTY)。

  2. Category (類別) 窗格中選擇 Session (工作階段),然後填妥下列欄位:

    1. Host Name (主機名稱) 方塊中,執行下列其中一項作業:

      • (公用 DNS) 若要使用執行個體的公有 DNS 名稱連線,請輸入 my-instance-user-name@my-instance-public-dns-name

      • (IPv6) 或者,如果您的執行個體具有 IPv6 位址,若要使用執行個體的 IPv6 位址進行連線,請輸入 my-instance-user-name@my-instance-IPv6-address

      如需如何尋找您的執行個體的使用者名稱,以及執行個體的公有 DNS 名稱或 IPv6 位址的詳細資訊,請參閱 取得執行個體的相關資訊

    2. 確保 Port (連接埠) 值是 22。

    3. Connection type (連線類型) 下,選取 SSH

    
							PuTTY 組態 - 工作階段
  3. (選用) 您可設定 PuTTY 按定期間隔自動傳送保持連線資料,以保持工作階段持續作用。這對避免您執行個體因工作階段閒置而中斷連線很有幫助。在 Category (類別) 窗格中選擇 Connection (連線),然後在 Seconds between keepalives (保持連線之間的秒數) 欄位中輸入所需間隔。例如,如果您的工作階段在閒置 10 分鐘後中斷連線,請輸入 180 以設定 PuTTY 每 3 分鐘傳送一次保持連線資料。

  4. Category (類別) 窗格中,展開 Connection (連線)、展開 SSH,然後選擇 Auth (身份驗證)。完成下列步驟:

    1. 選擇 Browse (瀏覽)

    2. 選取您為金鑰對產生的 .ppk 檔案,然後選擇 Open (開啟)

    3. (選用) 如果您打算稍後再次啟動此工作階段,您可儲存工作階段資訊以供日後使用。在 Category (類別) 下選擇 Session (工作階段),並在 Saved Sessions (儲存的工作階段) 中輸入工作階段的名稱,然後選擇 Save (儲存)

    4. 選擇 Open (開啟)

  5. 如果這是您第一次連線到此執行個體,PuTTY 會顯示安全提醒對話方塊,詢問您是否信任要連線的主機。

    1. (選用) 確認安全提醒對話方塊中的指紋是否符合您之前在(選用) 取得執行個體指紋中取得的指紋。如果這些指紋不符合,可能有人嘗試發動中間人攻擊。如果它們符合,請繼續下一個步驟。

    2. 選擇 Yes (是)。隨即開啟視窗,您會連線到您的執行個體。

      注意

      當您將私有金鑰轉換成 PuTTY 格式時,如已指定複雜密碼,您必須在登入執行個體時提供該複雜密碼。

如果您在嘗試連線至執行個體時遇到錯誤,請參閱執行個體連線的故障診斷

使用 PuTTY 安全複製用戶端將檔案傳輸到您的 Linux 執行個體

PuTTY 安全複製用戶端 (PSCP) 是命令列工具,您可用來在 Windows 電腦和 Linux 執行個體間傳輸檔案。如果您偏好圖形使用者界面 (GUI),您可使用名為 WinSCP 的開放原始碼 GUI 工具。如需詳細資訊,請參閱 使用 WinSCP 將檔案傳輸到您的 Linux 執行個體

若要使用 PSCP,需要您在使用 PuTTYgen 轉換私有金鑰中產生的私有金鑰。您還需要 Linux 執行個體的公有 DNS 名稱,或如果執行個體有 IPv6 位址,則還需要它。

下列範例會將檔案 Sample_file.txt 從 Windows 電腦的 C:\ 磁碟機傳輸到 Amazon Linux 執行個體的 my-instance-user-name 主目錄。若要傳輸檔案,請使用下列其中一個命令。

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

    pscp -i C:\path\my-key-pair.ppk C:\path\Sample_file.txt my-instance-user-name@my-instance-public-dns-name:/home/my-instance-user-name/Sample_file.txt
  • (IPv6) 或者,如果您的執行個體具有 IPv6 位址,若要使用您的執行個體的 IPv6 位址進行連線,請輸入下列命令。IPv6 位址必須用方括號 ([ ]) 括住。

    pscp -i C:\path\my-key-pair.ppk C:\path\Sample_file.txt my-instance-user-name@[my-instance-IPv6-address]:/home/my-instance-user-name/Sample_file.txt

使用 WinSCP 將檔案傳輸到您的 Linux 執行個體

WinSCP 是 Windows 的 GUI 型檔案管理員,能讓您使用 SFTP、SCP、FTP 和 FTPS 通訊協定將檔案上傳及傳輸到遠端電腦。WinSCP 可讓您將 Windows 電腦的檔案拖放到 Linux 執行個體,或在兩個系統間同步整個目錄結構。

若要使用 WinSCP,需要您在使用 PuTTYgen 轉換私有金鑰中產生的私有金鑰。您也需要您 Linux 執行個體的公有 DNS 名稱。

  1. 請從 http://winscp.net/eng/download.php 下載並安裝 WinSCP。大部分的使用者使用預設安裝選項即可。

  2. 啟動 WinSCP。

  3. WinSCP login (WinSCP 登入) 畫面中,針對 Host name (主機名稱),輸入下列其中一項:

    • (公有 DNS 或 IPv4 位址) 若要使用執行個體的公用 DNS 名稱或公有 IPv4 位址登入,請輸入執行個體的公用 DNS 名稱或公有 IPv4 位址。

    • (IPv6) 或者,如果您的執行個體具有 IPv6 位址,若要使用執行個體的 IPv6 位址登入,請輸入您的執行個體的 IPv6 位址。

  4. 針對 User name (使用者名稱) 輸入您 AMI 的預設使用者名稱。

    • 針對 Amazon Linux 2 或 Amazon Linux AMI,使用者名稱為 ec2-user

    • 針對 CentOS AMI,使用者名稱為 centos

    • 針對 Debian AMI,使用者名稱為 admin

    • 針對 Fedora AMI,使用者名稱為 ec2-userfedora

    • 針對 RHEL AMI,使用者名稱為 ec2-userroot

    • 針對 SUSE AMI,使用者名稱為 ec2-userroot

    • 針對 Ubuntu AMI,使用者名稱為 ubuntu

    • 萬一 ec2-userroot 無法使用,請洽詢 AMI 供應商。

  5. 指定您執行個體的私有金鑰。針對 Private key (私有金鑰),輸入您私有金鑰的路徑,或選擇 "..." 按鈕瀏覽檔案。若要開啟進階網站設定,若是較新版的 WinSCP,請選擇 Advanced (進階)。若要尋找 Private key file (私有金鑰檔案) 設定,在 SSH 下,選擇 Authentication (身份驗證)

    以下為 WinSCP 5.9.4 版的螢幕截取畫面:

    
							WinSCP Advanced (進階) 畫面

    WinSCP 需要 PuTTY 私有金鑰檔案 (.ppk)。您可使用 PuTTYgen 將 .pem 安全金鑰檔案轉換為 .ppk 格式。如需更多詳細資訊,請參閱 使用 PuTTYgen 轉換私有金鑰

  6. (選用) 在左面板中,選擇 Directories (目錄)。若是 Remote directory (遠端目錄),請輸入要新增檔案的目錄路徑。若要在較新版的 WinSCP 開啟進階網站設定,請選擇 Advanced (進階)。若要尋找 Remote directory (遠端目錄) 設定,在 Environment (環境) 下,選擇 Directories (目錄)

  7. 選擇 Login (登入)。選擇 Yes (是) 將主機指紋新增至主機快取。

    
							WinSCP 畫面
  8. 建立連線後,在連線視窗中,您的 Linux 執行個體在右,而您的本機電腦在左。您可以直接從您的本機電腦將檔案拖放至遠端檔案系統。如需 WinSCP 的詳細資訊,請參閱 http://winscp.net/eng/docs/start 中的專案文件。

    如果您收到 "Cannot execute SCP to start transfer" (無法執行 SCP 啟動傳輸) 錯誤,必須先在您的 Linux 執行個體上安裝 scp。此項目在某些作業系統中位於 openssh-clients 套件中。針對 Amazon ECS 最佳化的 AMI 等 Amazon Linux 變體,請使用下列命令來安裝 scp

    [ec2-user ~]$ sudo yum install -y openssh-clients