全部產品
Search
文件中心

ApsaraDB RDS:設定IP白名單

更新時間:Dec 02, 2025

建立RDS MySQL執行個體後,需要將IP地址添加到白名單,該IP地址所屬的裝置才能訪問該RDS執行個體。

前提條件

已建立RDS MySQL執行個體

操作步驟

說明

RDS預設已設定系統白名單,該白名單不顯示,用於允許系統帳號對資料庫的維護操作,詳情請參見系統帳號說明

  1. 訪問RDS執行個體列表,在上方選擇地區,然後單擊目標執行個體ID。

  2. 在左側導覽列中,單擊白名單與安全性群組

  3. 確認IP白名單模式。

    說明

    版本為MySQL5.5、5.6、5.7且儲存類型為高效能本地碟的執行個體可以切換為高安全模式。其他版本或儲存類型的執行個體都採用通用模式。

  4. 單擊default分組右側的 修改 ,在彈出的對話方塊中添加IP白名單。

    說明
    • 如有需要,也可以單擊新增白名單分組,並自訂一個分組名稱。

    • 分組僅用於IP地址管理,不會影響實際存取權限。所有分組中的IP地址對RDS執行個體的存取權限是一致的。

    • 方法一:將應用伺服器IP地址添加至組內白名單框中。查看應用伺服器IP,請參見附錄:如何擷取應用伺服器IP地址。您也可以單擊載入本機公網IP(如本機開啟了網路代理程式,請先關閉),直接添加本機公網IP。

      說明
      • 多個IP地址用英文逗號隔開,且逗號前後不能有空格。

      • 單個執行個體最多添加1000個IP地址或IP段。如果IP地址較多,建議將零散的IP合并為IP段,例如10.10.10.0/24。

      • 如果白名單模式是高安全模式,則需注意

        • 公網IP添加至傳統網路分組。

        • 把專用網路ECS執行個體私網IP添加至專用網路分組。

    • 方法二:單擊載入ECS內網IP,顯示當前阿里雲帳號以及當前地區下所有ECS執行個體的IP地址,快速添加ECS內網IP地址到白名單中。image

    添加後,該應用伺服器才能訪問RDS執行個體。

  5. 單擊確定

下一步

通過命令列、用戶端串連RDS MySQL執行個體

相關文檔

常見問題

  • Q:為什麼沒有添加到白名單中的IP地址也可以訪問RDS?

    A:您可以按照以下方法排查:

    • 檢查所有的白名單分組,確認是否包含0.0.0.0/0。0.0.0.0/0表示允許所有IP訪問RDS,存在安全風險,建議刪除並僅設定可信任的IP地址。

    • 檢查所有的安全性群組,確認是否包含該IP地址。如果某個安全性群組包含該IP地址,則可以訪問RDS。

  • Q:如果在不開通外網的情況下,讓本機可以訪問RDS?

    A:需要打通內網,詳情請參見VPC串連本機資料中心/其他雲

  • Q:我的應用程式側IP一直變化,沒有固定IP,這種情況我應該如何設定RDS資料庫的白名單?

    A:如果使用者沒有固定IP,無法設定0.0.0.0/0(表示允許所有IP訪問RDS,出於安全考慮不推薦設定),建議基於身分識別驗證而非IP的存取控制。例如,使用如下方式:

    • 使用動態DNS服務:通過動態DNS擷取動態IP對應的網域名稱,並將該網域名稱或其解析出的IP地址加入資料庫白名單。

    • 設定反向 Proxy或負載平衡器:所有使用者側應用請求通過反向 Proxy伺服器或負載平衡器轉寄到資料庫,僅將Proxy 伺服器的固定IP地址加入資料庫白名單。

    • 定期更新白名單:對於IP地址在一定範圍內變化的情況(如家庭寬頻IP由ISP分配),定期擷取這些IP地址並更新至白名單中。

  • Q:通過RDS控制台添加白名單時報錯InvalidSecurityIPListLength.Malformed

    問題描述

    使用者通過RDS控制台添加白名單時,可能會出現如下報錯:

    錯誤碼:InvalidSecurityIPListLength.Malformed
    報錯資訊(中文):安全IP地址不在可用範圍內或已被佔用。
    報錯資訊(英文):The security ip address is not in the available range or occupied.

    解決方案

    • 原因1:單個白名單分組中最多支援1000個IP地址/段,新增的IP超過了限制。

      解決方案:確保單個白名單分組中的IP地址或IP段數量不超過1000個。建議將零散的IP地址合并為CIDR格式的IP段(如192.168.1.0/24),以減少佔用數量。

    • 原因2:添加的IP白名單包含非法地址。

      解決方案:確保輸入的IP地址合法,推薦使用標準CIDR格式(如10.23.12.0/24),掩碼範圍為1~32。若需添加多個IP地址,請使用英文逗號(,)分隔。

    • 原因3:與已存在的白名單存在衝突。例如,在RDS MySQL中192.168.1.8會與192.168.1.1/8發生衝突。

      解決方案:根據實際需求合理規劃並添加白名單,避免與現有規則產生重疊或衝突。

    說明

    請勿刪除預設分組default(包含127.0.0.1),也不要修改系統分組(如ali_dms_grouphdm_security_ips),以免影響系統功能或串連安全性。

附錄:確認是否滿足內網訪問的條件

  1. 查看ECS執行個體的地區和網路類型,具體參見準備工作

  2. 查看RDS執行個體的地區和網路類型。

    訪問RDS執行個體列表,在上方選擇目標執行個體所在地區,找到目標執行個體,即可看到地區、網路類型、VPC ID。RDS執行個體地區和網路類型

  3. 確認是否滿足內網訪問的條件:

    1. ECS執行個體與RDS執行個體位於同一地區。

    2. ECS執行個體與RDS執行個體的網路類型相同。如果都是專用網路,專用網路ID也需要相同。

    說明

    任意一項不滿足,就無法通過內網訪問RDS。

附錄:如何擷取應用伺服器IP地址

表 1. 如何擷取應用伺服器IP地址

情境

需擷取的IP地址

如何擷取

滿足內網訪問的條件

ACK叢集的容器的對應IP

  • 當ACK叢集的容器網路外掛程式為Flannel時,添加應用程式所在的節點IP。

  • 當ACK叢集的容器網路外掛程式為Terway時,添加應用程式所在的Pod IP。

您在目標ACK叢集的容器組頁面,查Pod IP和節點IP。

ECS執行個體私網IP

點此開啟ECS執行個體列表,選擇地區,在執行個體列表查看私網IP和公網IP。

不滿足內網訪問的條件

ECS執行個體公網IP

需要通過本地裝置訪問RDS執行個體

本地裝置公網IP

通過curl ipinfo.io/ip(推薦)或curl ifconfig.me查詢本地用戶端公網IP。

說明

公網IP在資料庫升級或變更操作時可能會發生變化。如果已經將本地IP地址添加到白名單中,但仍然無法串連,請參見外網無法串連RDS MySQL或MariaDB:如何正確填寫本地裝置的公網IP地址處理。

附錄:系統預設白名單

當DMS、DTS、DAS服務與RDS MySQL互動時,系統會自動添加以下白名單分組,以確保正常訪問。

分組名稱

說明

dms

用於DMS登入RDS MySQL執行個體。

dts

用於DTS傳輸資料。

hdm_security_ips

用於DAS服務擷取資料、最佳化、營運和安全管理。

重要

對於2020年12月之後的建立執行個體,hdm_security_ips白名單分組對使用者不可見,防止誤修改或刪除分組,影響相關服務的使用。