Updated on 2024-05-07 GMT+08:00

Security Group Rules

Scenarios

To ensure normal communications between the load balancer and backend servers, you need to check the security group rules and network ACL rules configured for the backend servers.

  • Security group rules must allow traffic from the backend subnet where the load balancer resides to the backend servers. (By default, the backend subnet of a load balancer is the same as the subnet where the load balancer resides.) For details about how to configure security group rules, see Configuring Security Group Rules.
  • Network ACL rules are optional for subnets. If network ACL rules are configured for the backend subnet of the load balancer, the network ACL rules must allow traffic from the backend subnet of the load balancer to the backend servers. For details about how to configure rules, see Configuring Network ACL RulesConfiguring Network ACL Rules.

If the load balancer has a TCP or UDP listener and IP as a backend is disabled, security group rules and network ACL rules will not take effect.

You can use access control to limit which IP addresses are allowed to access the listener. Learn how to configure Access Control.

Constraints and Limitations

  • If health check is enabled for a backend server group, security group rules must allow traffic from the health check port over the health check protocol.
  • If UDP is used for health check, there must be a rule that allows ICMP traffic to check the health of the backend servers.

Configuring Security Group Rules

If you have no VPCs when creating a server, the system automatically creates one for you. Default security group rules allow only communications among the servers in the VPC. To ensure that the load balancer can communicate with these servers over both the frontend port and health check port, configure inbound rules for security groups containing these servers.

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Under Compute, click Elastic Cloud Server.
  4. On the Elastic Cloud Server page, click the name of the ECS that has been added to a backend server group.

    The page providing details about the ECS is displayed.

  5. Click Security Groups, locate the security group, and view security group rules.
  6. Click the ID of a security group rule or Modify Security Group Rule. The security group details page is displayed.
  7. On the Inbound Rules tab page, click Add Rule. Configure an inbound rule based on Table 1.
    Table 1 Security group rules

    Backend Protocol

    Policy

    Protocol & Port

    Source IP Address

    HTTP or HTTPS

    Allow

    Protocol: TCP

    Port: the port used by the backend server and health check port

    Backend subnet of the load balancer

    TCP

    Allow

    Protocol: TCP

    Port: health check port

    UDP

    Allow

    Protocol: UDP and ICMP

    Port: health check port

    • After a load balancer is created, do not change the subnet. If the subnet is changed, the IP addresses occupied by the load balancer will not be released, and traffic from the previous backend subnet is still need to be allowed to backend servers.
    • Traffic from the new backend subnet is also need to be allowed to backend servers.
  8. Click OK.

Configuring Network ACL Rules

To control traffic in and out of a subnet, you can associate a network ACL with the subnet. Network ACL rules control access to subnets and add an additional layer of defense to your subnets.

The default network ACL rule denies all inbound and outbound traffic. You can configure an inbound rule to allow traffic from the backend subnet of the load balancer through the port of the backend server.

  • If the load balancer is in the same subnet as the backend servers, network ACL rules will not take effect. In this case, the backend servers will be considered healthy and can be accessed by the clients.
  • If the load balancer is not in the same subnet as the backend servers, network ACL rules will take effect. In this case, the backend servers will be considered unhealthy and cannot be accessed by the clients.

Network ACL rules configured for the backend subnet of the load balancer will not restrict the traffic from the clients to the load balancer. If network ACL rules are configured, the clients can directly access the load balancer. To control access to the load balancer, configure access control for all listeners added to the load balancer by performing the operations in Access Control.

  1. Log in to the management console.
  2. In the upper left corner of the page, click and select the desired region and project.
  3. Hover on in the upper left corner to display Service List and choose Networking > Virtual Private Cloud.
  4. In the navigation pane on the left, choose Access Control > Network ACLs.
  5. In the network ACL list, click the name of the network ACL to switch to the page showing its details.
  6. On the Inbound Rules or Outbound Rules tab page, click Add Rule to add an inbound or outbound rule.
    • Action: Select Allow.
    • Type: Select the same type as the backend subnet of the load balancer.
    • Protocol: The protocol must be the same as the backend protocol.
    • Source: Set it to the backend subnet of the load balancer.
    • Source Port Range: Select a port range.
    • Destination: Enter a destination address allowed in this direction. The default value is 0.0.0.0/0, which indicates that traffic from all IP addresses is permitted.
    • Destination Port Range: Select a port range.
    • (Optional) Description: Describe the network ACL rule.
  7. Click OK.