负载均衡作为云上流量入口,经常需要配置访问控制提升安全性。不同于传统型负载均衡CLB的ACL组,NLB通过安全组能力实现了更细粒度的访问控制,可以针对整个实例生效,实现基于协议/端口/IP地址的访问控制。本文为您介绍NLB实例如何通过安全组实现访问控制。
场景说明
NLB实例未加入安全组时,NLB监听端口默认对所有请求放行。
当您的NLB实例有访问控制的诉求,希望控制NLB实例的入流量时,您可以选择为NLB实例添加安全组,同时可基于业务设置相应的安全组规则。
重要 负载均衡的出方向流量为用户请求的回包,为了保证您的业务正常运行,NLB的安全组对出流量不做限制,您无需额外配置安全组出方向规则。
本文从以下三种操作来说明NLB实例加入安全组后对流量的访问控制,且以NLB实例配置TCP 80监听和TCP 81监听为例说明。
编号 | 安全组规则 | 预期结果 | 相关操作链接 |
---|---|---|---|
操作一:NLB实例未加入安全组 | NLB监听端口默认对所有请求放行。 | 此处仅以NLB实例配置TCP 80监听和TCP 81监听为例说明。
| 步骤二:创建NLB实例并配置监听 |
操作二:NLB实例加入安全组 | 拒绝访问TCP协议的81端口 说明 此处仅列出与本文强相关的安全组规则,其余默认规则未列出。 |
| 步骤四:NLB实例加入安全组并验证结果 |
操作三:修改NLB实例加入的安全组 |
说明 此处仅列出与本文强相关的安全组规则,其余默认规则未列出。 |
| 步骤五:修改安全组并验证结果 |
使用限制
分类 | 安全组类型 | 说明 |
---|---|---|
NLB支持加入的安全组 |
|
关于普通安全组和企业安全组的介绍,请参见普通安全组与企业级安全组。 |
NLB不支持加入的安全组 | 托管安全组 | 关于托管安全组的介绍,请参见托管安全组。 |
前提条件
- 您已创建专有网络VPC1,具体操作,请参见创建和管理专有网络。创建NLB实例前,请确保实例所选可用区的交换机中预留了足够的可用IP。创建NLB实例要求每个交换机最少预留5个可用IP,包含4个健康检查IP和1个虚拟IP地址VIP(Virtual IP address)。如果IP不足会出现报错且无法购买NLB实例。
- 您已在VPC1中创建3台ECS实例。ECS01和ECS02实例作为NLB实例的后端服务器,且ECS01和ECS02实例中部署了Nginx服务。ECS03实例用于访问NLB实例。
- 关于创建ECS实例,请参见自定义购买实例。
- 关于部署Nginx服务,请参见部署LNMP环境(CentOS 7)。
配置流程

步骤一:创建服务器组
- 登录网络型负载均衡NLB控制台。
- 在顶部菜单栏,选择服务器组所属的地域。本文选择华东1(杭州)。
- 在左侧导航栏,选择 。
- 在服务器组页面,单击创建服务器组。
- 在创建服务器组对话框中,完成以下配置,然后单击创建。此处仅列出与本文强相关的配置项,其余部分参数可保持默认值。更多信息,请参见创建服务器组。
配置 说明 服务器组类型 选择一种服务器组类型。本文选择服务器类型。 服务器组名称 输入服务器组名称。本文输入RS01。 VPC 从VPC下拉列表中选择一个VPC。本文选择已创建的VPC1。 选择后端协议 选择一种后端协议。本文选择TCP。 选择调度算法 选择一种调度算法。本文选择加权轮询。 - 在服务器组创建成功对话框中单击添加后端服务器。
- 在后端服务器页签单击添加后端服务器。
- 在添加后端服务器面板,选择已创建的ECS01和ECS02实例,然后单击下一步。
- 为已添加的服务器设置端口和权重,然后单击确定。
步骤二:创建NLB实例并配置监听
- 登录网络型负载均衡NLB控制台。
- 在顶部菜单栏,选择NLB实例所属的地域。本文选择华东1(杭州)。
- 在实例页面,单击创建网络型负载均衡。
- 在网络型负载均衡(按量付费)购买页面,完成以下配置。此处仅列出和本文强相关的配置项。其余参数的配置,请参见创建实例。
- 地域:本文选择华东1(杭州)。
- 实例网络类型:本文选择私网。
- VPC:本文选择已创建的VPC1。
- 单击立即购买,然后根据控制台提示完成实例购买。
- 返回实例页面,找到已创建的NLB实例,单击该NLB实例ID。
- 单击监听页签,在监听页签单击快速创建监听。在快速创建监听对话框中,配置以下参数,完成TCP 80监听的创建,然后单击确定。
监听配置 说明 选择负载均衡协议 选择监听的协议类型。本文选择TCP。 监听端口 输入监听端口,本文输入80。
转发的后端服务器组 选择服务器类型及服务器类型下的服务器组。 本文选择步骤一:创建服务器组创建的服务器组RS01。
- 在监听页签单击快速创建监听。在快速创建监听对话框中,配置以下参数,完成TCP 81监听的创建,然后单击确定。
监听配置 说明 选择负载均衡协议 选择监听的协议类型。本文选择TCP。 监听端口 输入监听端口,本文输入81。
转发的后端服务器组 选择服务器类型及服务器类型下的后端服务器组。 本文选择步骤一:创建服务器组创建的服务器组RS01。
- NLB实例未加入安全组时,验证访问结果。
步骤三:创建安全组
在NLB实例加入安全组前,您需要先至ECS管理控制台创建安全组。
步骤四:NLB实例加入安全组并验证结果
NLB实例加入步骤三:创建安全组创建的安全组,并验证安全组规则对NLB实例的访问控制是否生效。
- 登录网络型负载均衡NLB控制台。
- 在顶部菜单栏,选择NLB实例所属的地域。本文选择华东1(杭州)。
- 在NLB实例页面,找到步骤二:创建NLB实例并配置监听创建的NLB实例,单击实例ID。在实例详情页签,单击安全组页签。
- 在安全组页签,单击添加安全组,在弹出的NLB实例加入安全组对话框中,选择步骤三:创建安全组创建的安全组,然后单击确定。
- 在左侧列表框单击目标安全组ID,可单击入方向或出方向页签分别查看安全组规则。此处仅列出已本文强相关的安全组入方向规则。此时NLB实例加入的安全组规则如下:
授权策略 优先级 协议类型 端口范围 授权对象 允许 1 自定义TCP 目的:80/80
源:0.0.0.0/0
拒绝 1 自定义TCP 目的:81/81
源:0.0.0.0/0
- NLB实例加入安全组后,测试访问结果。
步骤五:修改安全组并验证结果
修改安全组规则,并验证修改后的安全组规则对NLB实例的访问控制是否生效。
- 返回NLB实例页面,找到步骤二:创建NLB实例并配置监听创建的NLB实例,单击实例ID。在实例详情页签,单击安全组页签。
- 在基本信息区域单击安全组ID,或在安全组页签右上角单击前往ECS控制台编辑,进入安全组规则页面修改安全组规则。
- 在安全组规则页面,找到允许访问TCP协议80端口的规则,在操作列单击编辑,修改授权策略为拒绝。此处仅列出已本文强相关的安全组规则。修改后的安全组规则如下:
授权策略 优先级 协议类型 端口范围 授权对象 拒绝 1 自定义TCP 目的:80/80
源:0.0.0.0/0
拒绝 1 自定义TCP 目的:81/81
源:0.0.0.0/0
- 修改NLB实例加入的安全组规则后,测试访问结果。
相关文档
- NLB加入安全组
- NLB解绑安全组
- LoadBalancerJoinSecurityGroup:为网络型负载均衡实例绑定已创建的安全组。
- LoadBalancerLeaveSecurityGroup:为网络型负载均衡实例解绑安全组。