在 WorkSpaces Personal 中啟用 Linux WorkSpaces 的 SSH 連線 - Amazon WorkSpaces

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

在 WorkSpaces Personal 中啟用 Linux WorkSpaces 的 SSH 連線

如果您或您的使用者想要使用命令列連線到 Linux WorkSpaces,您可以啟用 SSH 連線。您可以啟用對目錄中所有 WorkSpaces 或目錄中個別 WorkSpaces 的 SSH 連線。

若要啟用 SSH 連線,您可以建立新的安全群組或更新現有安全群組,並為此目的新增規則來允許輸入流量。安全群組就像是防火牆,用於關聯的執行個體,可在執行個體層級控制傳入及傳出流量。在您建立或更新安全群組之後,您的使用者和其他人可以使用 PuTTY 或其他終端機,從其裝置連線至您的 Linux WorkSpaces。如需詳細資訊,請參閱WorkSpaces Personal 的安全群組

如需影片教學課程,請參閱 AWS 知識中心的如何使用 SSH 連線到我的 Linux Amazon WorkSpaces?。本教學課程僅適用於 Amazon Linux 2 WorkSpaces。

SSH 連線至 Linux WorkSpaces 的先決條件

  • 啟用傳入 SSH 流量至 WorkSpace — 若要新增規則以允許傳入 SSH 流量至一或多個 Linux WorkSpaces,請確定您擁有需要 SSH 連線至 WorkSpaces 之裝置的公有或私有 IP 地址。例如,您可以指定虛擬私有雲端 (VPC) 外部裝置的公用 IP 地址,或指定與 WorkSpace 相同 VPC 中另一個 EC2 執行個體的私有 IP 地址。

    如果您打算從本機裝置連線至 WorkSpace,您可以在網際網路瀏覽器中使用「我的 IP 地址為何」搜尋字詞,或使用下列服務:檢查 IP

  • 連線至 WorkSpace — 啟動從裝置到 Linux WorkSpace 的 SSH 連線時需要以下資訊。

    • 您所連線到的 Active Directory 網域的 NetBIOS 名稱。

    • 您的 WorkSpace 使用者名稱。

    • 您想要連線到的 WorkSpace 的公用或私有 IP 地址。

      私有:如果您的 VPC 連結到公司網路,而且您可以存取該網路,則可以指定 WorkSpace 的私有 IP 地址。

      公用:如果您的 WorkSpace 具有公用 IP 地址,您可以使用 WorkSpaces 主控台來尋找公用 IP 地址,如下列程序所述。

尋找您要連線之 Linux WorkSpace 的 IP 地址和使用者名稱
  1. 在 https://https://console.aws.amazon.com/workspaces/v2/home 開啟 WorkSpaces 主控台。

  2. 在導覽窗格中,選擇 WorkSpaces

  3. 在 WorkSpaces 清單中,選擇您要啟用 SSH 連線的 WorkSpace。

  4. 執行中模式欄中,確認 WorkSpace 狀態為可用

  5. 按一下 WorkSpace 名稱左側的箭頭以顯示內嵌摘要,並記下以下資訊:

    • WorkSpace IP。這是 WorkSpace 的私有 IP 地址。

      取得與 WorkSpace 相關聯的彈性網路介面時需要私有 IP 地址。需要網路介面才能擷取資訊,例如與 WorkSpace 相關聯的安全群組或公用 IP 地址。

    • WorkSpace 使用者名稱。這是您指定用來連線至 WorkSpace 的使用者名稱。

  6. 開啟 Amazon EC2 主控台,網址為 https://console.aws.amazon.com/ec2/

  7. 在導覽窗格中,選擇 Network Interfaces (網路介面)。

  8. 在搜尋方塊中,輸入您在步驟 5 中記下的 WorkSpace IP

  9. 選取與 WorkSpace IP 相關聯的網路介面。

  10. 如果您的 WorkSpace 具有公用 IP 地址,其會顯示在 IPv4 公用 IP 欄中。請記下此位址 (若適用)。

若要尋找您所連線到的 Active Directory 網域的 NetBIOS 名稱
  1. 在 https://https://console.aws.amazon.com/directoryservicev2/ 開啟 Directory Service 主控台。

  2. 在目錄清單中,按一下 WorkSpace 目錄的目錄 ID 連結。

  3. 目錄詳細資料區段中,記下目錄 NetBIOS 名稱

啟用對目錄中所有 Linux WorkSpaces 的 SSH 連線

若要啟用與目錄中所有 Linux WorkSpaces 的 SSH 連線,請執行下列動作。

使用規則建立安全群組,以允許傳入 SSH 流量傳送至目錄中的所有 Linux WorkSpaces
  1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Security Groups (安全群組)。

  3. 選擇 Create Security Group (建立安全群組)。

  4. 為您的安全群組輸入名稱和 (選擇) 描述。

  5. 針對 VPC,選擇包含您要啟用 SSH 連線之 WorkSpaces 的 VPC。

  6. 傳入索引標籤上,選擇新增規則,然後執行下列操作:

    • 針對 Type (類型),選擇 SSH

    • 針對通訊協定,當您選擇 SSH 時會自動指定 TCP。

    • 針對連接埠範圍,當您選擇 SSH 時會自動指定 22。

    • 針對來源,指定使用者將用來連線至其 WorkSpaces 之電腦的公用 IP 地址的 CIDR 範圍。例如,企業網路或家用網路。

    • (選用) 針對描述,輸入規則的描述。

  7. 選擇建立

  8. 將此安全群組連接至 WorkSpaces。如需將此安全群組新增至 WorkSpaces 的詳細資訊,請參閱 WorkSpaces Personal 的安全群組。如果您想要自動將其他安全群組連接到 WorkSpaces,請參閱此部落格文章

WorkSpaces 中的密碼型身分驗證

在新建立的 Linux WorkSpaces 中啟用密碼身分驗證
  1. 啟動 WorkSpaces 用戶端並登入您的 WorkSpace。

  2. 開啟終端機視窗。

  3. 在終端機視窗中,執行下列命令以在 cloud-init 中啟用 SSH 密碼驗證。

    sudo bash -c 'touch /etc/cloud/cloud.cfg.d/15_sshpwauth.cfg && echo "ssh_pwauth: true" > /etc/cloud/cloud.cfg.d/15_sshpwauth.cfg && sudo rm /var/lib/cloud/instance/sem/config_set_passwords && sudo cloud-init single --name set-passwords'

    此指令碼將執行下列動作:

    • 在 cloud-init 目錄中建立組態檔案/etc/cloud/cloud.cfg.d/

    • 修改組態檔案,告知 cloud-init 啟用 SSH 密碼身分驗證。

    • 重設 set-passwords cloud-init 模組,以便再次執行。

    • 自行執行 set-passwords cloud-init 模組。這會將啟用 SSH 密碼身分驗證的檔案寫入 SSH 組態目錄 /etc/ssh/sshd_config.d/,然後重新啟動 SSHD,以便立即進行設定。

這會在 WorkSpace 上啟用 SSH 密碼身分驗證,並透過自訂映像保留。如果您僅在 SSHD 組態檔案中啟用 SSH 密碼身分驗證,但未設定 cloud-init,則設定不會在某些 Linux WorkSpaces 上透過映像保留。如需詳細資訊,請參閱 cloud-init 模組文件中的設定密碼

在現有的 Linux WorkSpaces 中停用密碼身分驗證
  1. 啟動 WorkSpaces 用戶端並登入您的 WorkSpace。

  2. 開啟終端機視窗。

  3. 在終端機視窗中,執行下列命令來停用 cloud-init 中的 SSH 密碼驗證。

    sudo bash -c 'touch /etc/cloud/cloud.cfg.d/15_sshpwauth.cfg && echo "ssh_pwauth: false" > /etc/cloud/cloud.cfg.d/15_sshpwauth.cfg && sudo rm /var/lib/cloud/instance/sem/config_set_passwords && sudo cloud-init single —name set-passwords'

    此指令碼將執行下列動作:

    • 在 cloud-init 目錄中建立組態檔案/etc/cloud/cloud.cfg.d/

    • 修改組態檔案,指示 cloud-init 停用 SSH 密碼身分驗證。

    • 重設 set-passwords cloud-init 模組,以便再次執行。

    • 自行執行 set-passwords cloud-init 模組。這會將啟用 SSH 密碼身分驗證的檔案寫入 SSH 組態目錄 /etc/ssh/sshd_config.d/,然後重新啟動 SSHD,以便立即進行設定。

這會立即停用 WorkSpace 中的 SSH,並透過自訂映像保留。

啟用特定 Linux WorkSpace 的 SSH 連線

若要啟用特定 Linux WorkSpace 的 SSH 連線,請執行下列動作。

將規則新增至現有的安全群組,以允許傳入 SSH 流量至特定 Linux WorkSpace
  1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格的 Network & Security (網路與安全) 中,選擇 Network Interfaces (網路界面)

  3. 在搜尋列中,輸入您要啟用 SSH 連線之 WorkSpace 的私有 IP 地址。

  4. 安全群組欄中,按一下安全群組的連結。

  5. Inbound (傳入) 標籤上,選擇 Edit (編輯)

  6. 選擇新增規則,然後執行下列操作:

    • 針對 Type (類型),選擇 SSH

    • 針對通訊協定,當您選擇 SSH 時會自動指定 TCP。

    • 針對連接埠範圍,當您選擇 SSH 時會自動指定 22。

    • 針對來源,選擇我的 IP自訂,然後以 CIDR 標記法指定單一 IP 地址或 IP 地址範圍。例如,若您的 IPv4 地址為 203.0.113.25,請指定 203.0.113.25/32,藉此以 CIDR 表示法列出此單一 IPv4 地址。如果您的公司會分配某個範圍的地址,請指定整個範圍 (例如 203.0.113.0/24)。

    • (選用) 針對描述,輸入規則的描述。

  7. 選擇儲存

使用 Linux 或 PuTTY 連線至 Linux WorkSpace

在您建立或更新安全群組並新增必要規則之後,您的使用者和其他使用者即可使用 Linux 或 PuTTY 從他們的裝置連線到 WorkSpaces。

注意

完成下列任一程序之前,請確定您有下列各項:

  • 您所連線到的 Active Directory 網域的 NetBIOS 名稱。

  • 您用來連線至 WorkSpace 的使用者名稱。

  • 您想要連線到的 WorkSpace 的公用或私有 IP 地址。

如需如何取得此資訊的說明,請參閱本主題稍早的「SSH 連線至 Linux WorkSpaces 的先決條件」。

使用 Linux 連線至 Linux WorkSpace
  1. 以管理員身分開啟命令提示並輸入下列命令。針對 NetBIOS 名稱使用者名稱WorkSpace IP,輸入適用的值。

    ssh "NetBIOS_NAME\Username"@WorkSpaceIP

    以下是 SSH 命令的範例,其中:

    • NetBIOS_NAME 是任何公司

    • Username 是 janedoe

    • WorkSpace IP 是 203.0.113.25

    ssh "anycompany\janedoe"@203.0.113.25
  2. 出現提示時,請輸入在向 WorkSpaces 用戶端驗證時所使用的相同密碼 (您的 Active Directory 密碼)。

使用 PuTTY 連線至 Linux WorkSpace
  1. 開啟 PuTTY。

  2. PuTTY 組態對話方塊中,執行下列操作:

    • 針對主機名稱 (或 IP 地址),輸入下列命令。將這些值取代為您連線到的 Active Directory 網域的 NetBIOS 名稱、您用來連線至 WorkSpace 的使用者名稱,以及您要連線到的 WorkSpace 的 IP 地址。

      NetBIOS_NAME\Username@WorkSpaceIP
    • 針對連接埠,輸入 22

    • 針對連線類型,選擇 SSH

    如需 SSH 命令的範例,請參閱先前程序中的步驟 1。

  3. 選擇 Open (開啟)。

  4. 出現提示時,請輸入在向 WorkSpaces 用戶端驗證時所使用的相同密碼 (您的 Active Directory 密碼)。