使用 連線至您的RDS自訂資料庫執行個體 RDP - Amazon Relational Database Service

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

使用 連線至您的RDS自訂資料庫執行個體 RDP

建立RDS自訂資料庫執行個體之後,您可以使用RDP用戶端連線至此執行個體。程序與連線至 Amazon EC2執行個體的程序相同。如需詳細資訊,請參閱連線至您的 Windows 執行個體

若要連線到資料庫執行個體,您需要與執行個體相關聯的金鑰對。RDS 自訂會為您建立金鑰對。配對名稱使用字首 do-not-delete-rds-custom-DBInstanceIdentifier。 AWS Secrets Manager 會將您的私有金鑰儲存為秘密。

完成下列步驟中的任務:

設定資料庫執行個體以允許RDP連線

若要允許RDP連線,請設定您的VPC安全群組,並在主機上設定防火牆規則。

設定您的VPC安全群組

請確定與資料庫執行個體相關聯的VPC安全群組允許連接埠 3389 上的傳入連線,以進行傳輸控制通訊協定 (TCP)。若要了解如何設定VPC安全群組,請參閱 設定您的 VPC 安全群組

在主機上設定防火牆規則

若要允許 的連接埠 3389 傳入連線TCP,請在主機上設定防火牆規則。下列範例示範其做法。

建議您使用特定的 -Profile 值:PublicPrivateDomain。使用 Any 指的是全部三個值。您也可指定以逗號分隔的值組合。如需設定防火牆規則的詳細資訊,請參閱 Microsoft 文件中的設定NetFirewallRule

使用 Systems Manager 工作階段管理員來設定防火牆規則
  1. 連線至工作階段管理員,如 使用 連線至您的RDS自訂資料庫執行個體 AWS Systems Manager 中所示。

  2. 執行下列命令。

    Set-NetFirewallRule -DisplayName "Remote Desktop - User Mode (TCP-In)" -Direction Inbound -LocalAddress Any -Profile Any
使用 Systems Manager CLI命令設定防火牆規則
  1. 使用下列命令在主機RDP上開啟 。

    OPEN_RDP_COMMAND_ID=$(aws ssm send-command --region $AWS_REGION \ --instance-ids $RDS_CUSTOM_INSTANCE_EC2_ID \ --document-name "AWS-RunPowerShellScript" \ --parameters '{"commands":["Set-NetFirewallRule -DisplayName \"Remote Desktop - User Mode (TCP-In)\" -Direction Inbound -LocalAddress Any -Profile Any"]}' \ --comment "Open RDP port" | jq -r ".Command.CommandId")
  2. 使用輸出中傳回的命令 ID,以取得前一個命令的狀態。若要使用以下查詢傳回命令 ID,請確定已安裝 jq 外掛程式。

    aws ssm list-commands \ --region $AWS_REGION \ --command-id $OPEN_RDP_COMMAND_ID

擷取您的私密金鑰

使用 AWS Management Console 或 擷取您的秘密金鑰 AWS CLI。

若要擷取秘密金鑰
  1. 登入 AWS Management Console 並在 開啟 Amazon RDS主控台https://console.aws.amazon.com/rds/

  2. 在導覽窗格中,選擇資料庫 ,然後選擇您要連接的RDS自訂資料庫執行個體。

  3. 選擇 Configuration (組態) 索引標籤。

  4. 請記下資料庫執行個體的 DB instance ID (資料庫執行個體 ID),例如 my-custom-instance

  5. 在 開啟 Amazon EC2主控台https://console.aws.amazon.com/ec2/

  6. 在導覽窗格中,選擇 Instances (執行個體)。

  7. 尋找EC2執行個體的名稱,然後選擇與其相關聯的執行個體 ID。

    在此範例中,執行個體 ID 為 i-abcdefghijklm01234

  8. Details (詳細資訊) 中尋找 Key pair name (金鑰對名稱)。配對名稱包含資料庫識別符。在此範例中,配對名稱是 do-not-delete-rds-custom-my-custom-instance-0d726c

  9. 在執行個體摘要中,尋找公有 IPv4 DNS。在此範例中,公有 DNS 可能是 ec2-12-345-678-901.us-east-2.compute.amazonaws.com

  10. 在 開啟 AWS Secrets Manager 主控台https://console.aws.amazon.com/secretsmanager/

  11. 選擇與金鑰對具有相同名稱的密碼。

  12. 選擇 Retrieve secret value (擷取秘密值)

若要擷取私有金鑰
  1. 呼叫 aws rds describe-db-instances命令,以取得RDS自訂資料庫執行個體的清單。

    aws rds describe-db-instances \ --query 'DBInstances[*].[DBInstanceIdentifier,DbiResourceId]' \ --output text
  2. 從範例輸出中選擇資料庫執行個體識別符,例如 do-not-delete-rds-custom-my-custom-instance

  3. 呼叫 aws ec2 describe-instances命令,尋找資料庫執行個體的執行個體 EC2 ID。下列範例使用EC2執行個體名稱來描述資料庫執行個體。

    aws ec2 describe-instances \ --filters "Name=tag:Name,Values=do-not-delete-rds-custom-my-custom-instance" \ --output text \ --query 'Reservations[*].Instances[*].InstanceId'

    下列範例輸出顯示EC2執行個體 ID。

    i-abcdefghijklm01234
  4. 透過指定EC2執行個體 ID 尋找金鑰名稱,如下列範例所示。

    aws ec2 describe-instances \ --instance-ids i-abcdefghijklm01234 \ --output text \ --query 'Reservations[*].Instances[*].KeyName'

    下列範例輸出會顯示金鑰名稱,該名稱使用字首 do-not-delete-rds-custom-DBInstanceIdentifier

    do-not-delete-rds-custom-my-custom-instance-0d726c

使用 RDP公用程式連線至EC2執行個體

請遵循 Amazon EC2使用者指南 中的使用 連線至 Windows 執行個體RDP中的程序。此程序假設您已建立包含私有金鑰的 .pem 檔案。