设置集群白名单

更新时间: 2025-02-11 14:11:14

IP白名单用于控制哪些IP地址或安全组可以访问PolarDB MySQL版集群。在创建集群之后,您需要将本地环境或ECS实例的IP地址添加至集群的白名单中,才能够访问该集群。

注意事项

  • PolarDB暂不支持自动获取VPC网络中的ECS私网IP以供您选择,请在白名单中手动填写需要访问PolarDB MySQL版集群的ECS私网IP。

  • 您可以同时设置IP白名单和安全组。IP白名单和安全组中的ECS实例都可以访问该PolarDB MySQL版集群。

  • ali_dms_groupDMS产品IP地址白名单分组)、hdm_security_ipsDAS产品IP地址白名单分组)、dtspolardbDTS产品IP地址白名单分组)等分组为使用相关产品时系统自动生成。请勿修改或删除分组,避免影响相关产品的使用。

    重要

    请勿在这些分组里增加自己的业务IP,避免相关产品更新时覆盖掉您的业务IP,影响业务正常运行。

    白名单

  • 当前仅支持创建50个IP白名单分组,且所有IP白名单分组累积支持添加1000个IP地址或地址段。

使用场景

IP白名单用于控制哪些IP地址或安全组可以访问PolarDB MySQL版集群。设置IP白名单可以让PolarDB MySQL版集群得到高级别的访问安全保护,建议您定期维护白名单。通常需要设置IP白名单的场景如下:

  • 如果您的ECS实例需要访问PolarDB MySQL版集群,可在ECS实例详情页面查看ECS实例的IP地址,并将其填写至IP白名单中。

    说明
    • 如果您的ECS实例与PolarDB MySQL版集群位于同一VPC内,您可以填写ECS的私网IP地址或其所在VPC网段。

    • 如果您的ECS实例与PolarDB MySQL版集群不在同一VPC内,您可填写ECS的公网IP地址,或添加ECS所在的安全组。此外,您还可以选择将ECS迁移至PolarDB MySQL版集群所在的VPC,随后填写ECS的私网IP地址或所在VPC网段。

  • 如果您本地的服务器、电脑或其他云服务器需要访问PolarDB集群,请将其公网IP地址添加到IP白名单中。

设置IP白名单

  1. 登录PolarDB控制台,选择集群所在地域,在集群列表中单击目标集群ID进入详情页。

  2. 在左侧导航栏,单击配置与管理 > 集群白名单

  3. 集群白名单页面,您可以新增IP白名单分组配置已有白名单分组。

    • 新增IP白名单分组:

      单击新增IP白名单分组,在新增IP白名单分组对话框,输入分组名称和允许访问的IP白名单地址。

    • 配置IP白名单分组:

      单击目标IP白名单分组名称右侧的配置。在配置白名单对话框,输入允许访问的IP白名单地址。

    说明
    • IP白名单分组名称需满足如下条件:

      • 由小写字母、数字、下划线(_)组成。

      • 由字母开头、字母或数字结尾。

      • 长度为2~120个字符。

    • 白名单内IP地址:

      • 可以填写IP地址(如192.168.0.1)或IP段(如192.168.0.0/24)。

      • 多个IP需要用英文逗号隔开,如192.168.0.1,192.168.0.0/24

      • 127.0.0.1表示禁止任何IP地址访问。

      • 0.0.0.0/0表示允许任何IP地址访问数据库集群。该设置将极大降低数据库的安全性,如非必要请勿使用。

    • 每个集群都默认包含一个default的IP白名单分组,且包含IP地址127.0.0.1,表示任何IP地址均无法访问该集群。

常见问题

ECS无法连接PolarDB集群

请您按以下步骤进行排查:

  1. 检查PolarDB集群的运行状态是否为运行中

  2. 检查数据库连接地址、端口、账号及密码是否正确。更多信息,请参见获取数据库连接地址

  3. 检查网络因素,您可以在ECS内执行ping 数据库连接地址telnet 数据库连接地址 端口来测试网络连通性。

  4. 若您使用的是私网地址:

    1. 检查ECS与PolarDB集群是否位于同一VPC下。若不在同一VPC下,则无法使用私网地址。您可以使用以下任意一种解决方法使ECS与PolarDB集群位于同一VPC下:

      • 切换ECS所在的VPC。

      • PolarDB集群使用的是默认VPC,可以切换PolarDB集群所在的VPC。更多信息,请参见修改默认VPC和交换机

      • 使用云企业网实现VPC之间的互通。更多信息,请参见同地域VPC互通

    2. 检查ECS的私网IP地址、IP段或安全组是否已添加至PolarDB集群的白名单中。更多信息,请参见设置集群白名单

  5. 若您使用的是公网地址,检查ECS的公网IP地址或安全组是否已添加至PolarDB集群的白名单中。更多信息,请参见设置集群白名单

说明

暂不支持使用虚拟主机和轻量服务器使用私网地址连接PolarDB集群。

本地环境无法连接PolarDB集群

请您按以下步骤进行排查:

  1. 检查PolarDB集群的运行状态是否为运行中

  2. 检查数据库连接地址、端口、账号及密码是否正确。更多信息,请参见获取数据库连接地址

    说明

    数据库连接地址需为公网地址。若您使用的是ECS并与PolarDB集群位于同一VPC下,可以使用私网地址。

  3. 检查网络因素,您可以在本地环境执行ping <数据库连接地址>telnet <数据库连接地址> <端口>来测试网络连通性。

  4. 检查本地环境的公网IP地址或IP段是否已添加至PolarDB集群的白名单中。更多信息,请参见设置集群白名单

    本地环境的公网IP地址获取方法如下:

    • Linux操作系统:打开终端,输入curl ifconfig.me命令后回车。

    • Windows操作系统:打开命令提示符,输入curl ip.me命令后回车。

    • macOS操作系统:打开终端,输入curl ifconfig.me命令后回车。

    若您的本地网络环境存在代理等情况,以上方式获取的IP可能并非您的真实公网IP。您可以将IP段0.0.0.0/0添加至PolarDB集群白名单中,成功连接集群后,执行SHOW PROCESSLIST;命令获取真实公网IP地址,并将其加入到集群白名单中。随后删除白名单中的IP段0.0.0.0/0

    image

无法连接PolarDB集群,报错:Can't connect to MySQL server on 'xxx'或Connection timed out

可能是您当前环境的公网IP地址或IP段未被添加至PolarDB集群的白名单中,或您填写的公网IP地址或IP段存在错误。

本地环境的公网IP地址获取方法如下:

  • Linux操作系统:打开终端,输入curl ifconfig.me命令后回车。

  • Windows操作系统:打开命令提示符,输入curl ip.me命令后回车。

  • macOS操作系统:打开终端,输入curl ifconfig.me命令后回车。

若您的本地网络环境存在代理等情况,以上方式获取的IP可能并非您的真实公网IP。您可以将IP段0.0.0.0/0添加至PolarDB集群白名单中,成功连接集群后,执行SHOW PROCESSLIST;命令获取真实公网IP地址,并将其加入到集群白名单中。随后删除白名单中的IP段0.0.0.0/0

image

更多IP白名单问题,请参见排查IP白名单问题

相关文档

  • 设置全局IP白名单模板:全局IP白名单模板可以让您仅需维护一套IP白名单模板,便可对该模板关联的所有PolarDB集群动态生效。

  • 设置安全组:在添加安全组后,系统会自动将安全组中的ECS实例添加至PolarDB集群白名单,且保持更新。这能够避免在新增ECS实例后,需手动更新PolarDB集群白名单的情况。

相关API

API

描述

DescribeDBClusterAccessWhitelist

查看允许访问数据库集群的IP名单。

ModifyDBClusterAccessWhitelist

修改允许访问数据库集群的IP名单。

上一篇: 数据安全和加密 下一篇: 设置全局IP白名单模板
阿里云首页 云原生数据库 PolarDB 相关技术圈