我要如何將已佈建的 Aurora 資料庫叢集設定為可公開存取?

1 分的閱讀內容
0

我想要將我佈建的 Amazon Aurora 資料庫叢集設定為可公開存取。此外,我想要保護 Aurora 資料庫叢集不受外部連線影響。

簡短描述

**先決條件:**若要從 Amazon Virtual Private Cloud (Amazon VPC) 連線外部連接到資料庫叢集,叢集執行個體必須具有公有 IP 位址。Aurora DB 執行個體也必須在可公開存取的子網路中執行。

您可以使用 TLS 來保護來自 VPC 外部的連線。

解決方法

為您的資料庫執行個體設定公有 IP 位址

若要為資料庫執行個體設定公有 IP 位址,請修改資料庫執行個體。在 Modify DB instance (修改資料庫執行個體) 頁面的 Connectivity (連線) 下,展開 Additional configuration (其他組態)。在 Run the DB instance in a public subnet (在公有子網路中執行資料庫執行個體) 下,選取 Publicly accessible (可公開存取)。

在公有子網路中執行資料庫執行個體

若要確認您資料庫執行個體的子網路可以存取網際網路,請完成以下步驟:

  1. 確認您的 VPC 已連接網際網路閘道
  2. 確認資料庫子網路群組中的所有子網路均使用含網際網路閘道的路由表。如果子網路使用 VPC 的主要路由表,請為網際網路閘道新增路由 (0.0.0.0/0)。您也可以建立路由到網際網路閘道的自訂路由表,然後將其與子網路建立關聯
  3. 修改安全群組的傳入規則中,以新增您要連線至資料庫執行個體的來源公有 IP 地址。設定規則設定:
    Type (類型) 中,根據您的引擎選擇 MySQL/AuroraPostgreSQL
    Source (來源) 中,手動輸入 CIDR 範圍,或選擇 My IP (我的 IP),以從相同工作站連線至資料庫執行個體。

保護資料庫叢集不受 VPC 外部連線影響

使用 TLS 加密來自 VPC 外部的連線。資料傳輸是透過網際網路進行。因此,最佳做法是使用 ssl-ca 參數傳遞 CA 憑證,然後啟用主機名稱驗證。

若要測試 TLS 連線,請根據您使用的 Aurora 版本執行命令。

Aurora MySQL 5.7 相容版及更新版本:

mysql -h Your-aurora-cluster-endpoint.cluster-abcdefghxyz.us-east-1.rds.amazonaws.com -u your-db-user --ssl-ca=rds-combined-ca-bundle.pem --ssl-mode=VERIFY_IDENTITY

**注意:**將 Your-aurora-cluster-endpoint.cluster-abcdefghxyz.us-east-1.rds.amazonaws.com 替換為您的叢集端點 ARN,並將 your-db-user 替換為您的資料庫使用者。

Amazon Aurora PostgreSQL 相容版本:

psql -h your-aurora-cluster-endpoint.cluster-abcdefghxyz.us-east-1.rds.amazonaws.com -p 5432 "dbname=postgres user=your-db-user sslrootcert=rds-combined-ca-bundle.pem sslmode=verify-full"

**注意:**將 Your-aurora-cluster-endpoint.cluster-abcdefghxyz.us-east-1.rds.amazonaws.com 替換為您的叢集端點 ARN,並將 your-db-user 替換為您的資料庫使用者。

您也可以強制執行資料庫叢集的 TLS。如果是 Aurora MySQL 相容版,請在資料庫使用者層級設定 TLS。如果是 Aurora PostgreSQL 相容版,請將 rds.force_ssl 參數設為 1

相關資訊

與 Aurora MySQL 資料庫叢集的 TLS 連線

使用 SSL/TLS 保護 Aurora PostgreSQL 資料

如何從 Linux 或 macOS 裝置使用堡壘主機連接至 Amazon RDS 資料庫執行個體?

如何在 Amazon RDS 主控台中設定私有和公有 Aurora 端點?

AWS 官方
AWS 官方已更新 21 天前