

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

# 使用 Secure Shell 連線至 Lightsail for Research 虛擬電腦
<a name="connect-using-ssh"></a>

您可以使用 Secure Shell 通訊協定 (SSH) 連線至 Amazon Lightsail for Research 中的虛擬電腦。您可以使用 SSH 遠端管理虛擬電腦，以便透過網際網路登入電腦並執行命令。

**注意**  
您也可以使用瀏覽器型 Amazon DCV 用戶端，建立與虛擬電腦的遠端顯示通訊協定連線。Amazon DCV 可在 Lightsail for Research 主控台中使用。如需詳細資訊，請參閱[存取 Lightsail for Research 虛擬電腦的作業系統](access-computer-operating-system.md)。

**Topics**
+ [完成先決條件](#connect-using-ssh-prerequisites)
+ [使用 SSH 連線至虛擬電腦](#connect-virtual-computer-using-ssh)
+ [繼續後續步驟](#connect-using-ssh-next-steps)

## 完成先決條件
<a name="connect-using-ssh-prerequisites"></a>

開始之前，請先完成以下先決條件：
+ 在 Lightsail for Research 中建立虛擬電腦。如需詳細資訊，請參閱[建立 Lightsail for Research 虛擬電腦](create-computer.md)。
+ 確認您想連線的虛擬電腦處於運行中狀態。此外，請注意虛擬電腦的名稱及其建立所在的 AWS 區域。您稍後在此程序中將需要此資訊。如需詳細資訊，請參閱[檢視 Lightsail for Research 虛擬電腦詳細資訊](view-computer.md)。
+ 確認您想要連線的虛擬電腦上連接埠 22 已開啟。這是 SSH 使用的預設連接埠。預設為開啟 但如果您已將其關閉，則必須重新開啟，然後再繼續。如需詳細資訊，請參閱[管理 Lightsail for Research 虛擬電腦的防火牆連接埠](manage-ports.md)。
+ 取得虛擬電腦的 Lightsail 預設金鑰對 (DKP)。如需詳細資訊，請參閱[取得虛擬電腦的金鑰對](get-ssh-keys.md#get-dkp-ssh-keys)。
**提示**  
如果您打算使用 AWS CloudShell 連線到虛擬電腦，請參閱下一節[使用 連線至虛擬電腦 AWS CloudShell](#connect-using-cloudshell)中的 。如需詳細資訊，請參閱[什麼是 AWS CloudShell](https://docs.aws.amazon.com/cloudshell/latest/userguide/welcome.html)。否則，請繼續下一個先決條件。
+ 下載並安裝 AWS Command Line Interface (AWS CLI)。如需詳細資訊，請參閱《*AWS Command Line Interface 第 2 版使用者指南*》中的[安裝或更新最新版的 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)。
+ 設定 AWS CLI 以存取您的 AWS 帳戶。如需詳細資訊，請參閱《*AWS Command Line Interface 第 2 版使用者指南*》中的[組態基礎概念](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html#cli-configure-quickstart-config)。
+ 下載並安裝 jq。這是一個輕量且靈活的命令行 JSON 處理器，在以下程序中用來提取金鑰對詳細資訊。如需有關下載和安裝 jq 的詳細資訊，請參閱 *jq 網站*上的[下載 jq](https://stedolan.github.io/jq/download/)。

## 使用 SSH 連線至虛擬電腦
<a name="connect-virtual-computer-using-ssh"></a>

完成下列其中一個程序，以在 Lightsail for Research 中建立與虛擬電腦的 SSH 連線。

### 使用 連線至虛擬電腦 AWS CloudShell
<a name="connect-using-cloudshell"></a>

如果您偏好將最低設定連接到虛擬電腦，則此程序適用。 AWS CloudShell 會使用瀏覽器型、預先驗證的 Shell，您可以直接從 啟動 AWS 管理主控台。您可以使用您偏好的 shell 執行 AWS CLI 命令，例如 Bash、PowerShell 或 Z shell。無需下載或安裝命令列工具即可執行此操作。如需詳細資訊，請參閱「 AWS CloudShell使用者指南」**中的 [AWS CloudShell 入門](https://docs.aws.amazon.com/cloudshell/latest/userguide/getting-started.html)。

**重要**  
開始之前，請務必取得要連線之虛擬電腦Lightsail的預設金鑰對 (DKP)。如需詳細資訊，請參閱[取得 Lightsail for Research 虛擬電腦的金鑰對](get-ssh-keys.md)。

1. 從 [Lightsail for Research 主控台](https://lfr.console.aws.amazon.com/ls/research)中，選擇下列其中一個選項來啟動 CloudShell：

   1. 在搜尋方塊中，輸入「CloudShell」，然後選擇 **CloudShell**。

   1. 在導覽列上，選擇 **CloudShell** 圖示。

   1. 在主控台左下角的主控台工具列上選擇 **CloudShell**。  
![AWS CloudShell 介面中的主要功能。](http://docs.aws.amazon.com/zh_tw/lightsail-for-research/latest/ug/images/ssh-cloudshell-connect.png)

   出現命令提示時，表示 Shell 已準備好開始互動。  
![AWS CloudShell 終端機界面。](http://docs.aws.amazon.com/zh_tw/lightsail-for-research/latest/ug/images/cloudshell-terminal.png)

1. 選擇要使用的預先安裝 Shell。若要變更預設 Shell，請在命令列提示中輸入下列其中一個程式名稱。 Bash是啟動時執行的預設 Shell AWS CloudShell。

------
#### [ Bash ]

   `bash`

   如果您切換至 Bash，命令提示字元的 符號會更新為 `$`。

------
#### [ PowerShell ]

   `pwsh`

   如果切換至 PowerShell，則命令提示中的符號會更新為 `PS>`。

------
#### [ Z shell ]

   `zsh`

   如果您切換至 Z shell，命令提示字元的 符號會更新為 `%`。

------

1. 若要從 CloudShell 終端機視窗連線至虛擬電腦，請參閱 [在 Linux、Unix 或 macOS 本機電腦上使用 SSH 連線至虛擬電腦](#connect-using-ssh-linux)。

如需有關在 CloudShell 環境中預先安裝軟體的資訊，請參閱*AWS CloudShell 《 使用者指南*》中的[AWS CloudShell 運算環境](https://docs.aws.amazon.com/cloudshell/latest/userguide/vm-specs.html#pre-installed-software)。

### 在 Windows 本機電腦上使用 SSH 連線至虛擬電腦
<a name="connect-using-ssh-windows"></a>

如果您的本機電腦使用 Windows 作業系統，則此程序適用。此程序使用 `get-instance` AWS CLI 命令來取得您要連線之執行個體的使用者名稱和公有 IP 地址。如需詳細資訊，請參閱《*AWS CLI 命令參考*》中的 [get-instance](https://docs.aws.amazon.com/cli/latest/reference/lightsail/get-instance.html)。

**重要**  
在開始此程序之前，先確認您取得嘗試連線的虛擬電腦的 Lightsail 預設金鑰對 (DKP)。如需詳細資訊，請參閱[取得 Lightsail for Research 虛擬電腦的金鑰對](get-ssh-keys.md)。該程序會將 Lightsail DKP 的私有金鑰輸出至 `dkp_rsa` 檔案，以下其中一個命令中會使用該檔案。

1. 開啟命令提示視窗。

1. 輸入以下命令以顯示虛擬電腦的公有 IP 地址和使用者名稱。在 命令中，將 取代`{{region-code}}`為虛擬電腦建立 AWS 區域 所在 的程式碼，例如 `us-east-2`。將 `{{computer-name}}` 換成您想要連線的虛擬電腦的名稱。

   ```
   aws lightsail get-instance --region {{region-code}} --instance-name {{computer-name}} | jq -r ".instance.username" & aws lightsail get-instance --region {{region-code}} --instance-name {{computer-name}} | jq -r ".instance.publicIpAddress"
   ```

   **範例**

   ```
   aws lightsail get-instance --region {{us-east-2}} --instance-name {{MyJupyterComputer}} | jq -r ".instance.username" & aws lightsail get-instance --region {{us-east-2}} --instance-name {{MyJupyterComputer}} | jq -r ".instance.publicIpAddress"
   ```

   回應會顯示虛擬電腦的使用者名稱和公有 IP 地址，如以下範例所示。記下這些值，因為在此程序的下一步中會用到。  
![虛擬電腦的使用者名稱及公有 IP 地址。](http://docs.aws.amazon.com/zh_tw/lightsail-for-research/latest/ug/images/scp-public-ip-address-and-user-windows.png)

1. 輸入以下命令，建立與虛擬電腦的 SSH 連線。在命令中，將 `{{user-name}}` 換成登入的使用者名稱，並將 `{{public-ip-address}}` 換成虛擬電腦的公有 IP 地址。

   ```
   ssh -i dkp_rsa {{user-name}}@{{public-ip-address}}
   ```

   **範例**

   ```
   ssh -i dkp_rsa {{ubuntu}}@{{192.0.2.0}}
   ```

   您應該會看到類似以下範例的回應，其會顯示與在 Lightsail for Research 中的 Ubuntu 虛擬電腦建立的 SSH 連線。  
![使用虛擬電腦建立 SSH 連線。](http://docs.aws.amazon.com/zh_tw/lightsail-for-research/latest/ug/images/ssh-connected-windows.png)

   現在您已成功建立與虛擬電腦的 SSH 連線，請繼續[下一節](#connect-using-ssh-next-steps)以進行其他後續步驟。

### 在 Linux、Unix 或 macOS 本機電腦上使用 SSH 連線至虛擬電腦
<a name="connect-using-ssh-linux"></a>

如果您的本機電腦使用 Linux、Unix 或 macOS 作業系統，則此程序適用。此程序使用 `get-instance` AWS CLI 命令來取得您要連線之執行個體的使用者名稱和公有 IP 地址。如需詳細資訊，請參閱《*AWS CLI 命令參考*》中的 [get-instance](https://docs.aws.amazon.com/cli/latest/reference/lightsail/get-instance.html)。

**重要**  
在開始此程序之前，先確認您取得嘗試連線的虛擬電腦的 Lightsail 預設金鑰對 (DKP)。如需詳細資訊，請參閱[取得 Lightsail for Research 虛擬電腦的金鑰對](get-ssh-keys.md)。該程序會將 Lightsail DKP 的私有金鑰輸出至 `dkp_rsa` 檔案，以下其中一個命令中會使用該檔案。

1. 開啟「終端機」視窗。

1. 輸入以下命令以顯示虛擬電腦的公有 IP 地址和使用者名稱。在 命令中，將 取代`{{region-code}}`為虛擬電腦建立所在 AWS 區域的程式碼，例如 `us-east-2`。將 `{{computer-name}}` 換成您想要連線的虛擬電腦的名稱。

   ```
   aws lightsail get-instance --region {{region-code}} --instance-name {{computer-name}} | jq -r '.instance.username' && aws lightsail get-instance --region {{region-code}} --instance-name {{computer-name}} | jq -r '.instance.publicIpAddress'
   ```

   **範例**

   ```
   aws lightsail get-instance --region {{us-east-2}} --instance-name {{MyJupyterComputer}} | jq -r '.instance.username' && aws lightsail get-instance --region {{us-east-2}} --instance-name {{MyJupyterComputer}} | jq -r '.instance.publicIpAddress'
   ```

   回應會顯示虛擬電腦的使用者名稱和公有 IP 地址，如以下範例所示。記下這些值，因為在此程序的下一步中會用到。  
![虛擬電腦的使用者名稱及公有 IP 地址。](http://docs.aws.amazon.com/zh_tw/lightsail-for-research/latest/ug/images/scp-public-ip-address-and-user-linux.png)

1. 輸入以下命令，建立與虛擬電腦的 SSH 連線。在命令中，將 `{{user-name}}` 換成登入的使用者名稱，並將 `{{public-ip-address}}` 換成虛擬電腦的公有 IP 地址。

   ```
   ssh -i dkp_rsa {{user-name}}@{{public-ip-address}}
   ```

   **範例**

   ```
   ssh -i dkp_rsa {{ubuntu}}@{{192.0.2.0}}
   ```

   您應該會看到類似以下範例的回應，其會顯示與在 Lightsail for Research 中的 Ubuntu 虛擬電腦建立的 SSH 連線。  
![使用虛擬電腦建立 SSH 連線。](http://docs.aws.amazon.com/zh_tw/lightsail-for-research/latest/ug/images/ssh-connected-linux.png)

   現在您已成功建立與虛擬電腦的 SSH 連線，請繼續[下一節](#connect-using-ssh-next-steps)以進行其他後續步驟。

## 繼續後續步驟
<a name="connect-using-ssh-next-steps"></a>

成功建立與虛擬電腦的 SSH 連線後，可以完成以下其他後續步驟：
+ 使用 SCP 連線至虛擬電腦以安全地傳輸檔案。如需詳細資訊，請參閱[使用安全複製將檔案傳輸到 Lightsail for Research 虛擬電腦](connect-using-scp.md)。