DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.

DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
| Table of Contents |
|---|
Bug Reference: CLOUDSTACK-763
Currently only ACL allow rules are supported as part of Network ACLs. Default is to block all incoming and all outgoing traffic between tiers and between tiers and various gateways (including Public)By default, all incoming traffic to guest networks is blocked. All outgoing traffic from guest networks is allowed, once you add an ACL rule for outgoing traffic, then only outgoing traffic specified in this ACL rule is allowed, the rest is blocked. ACL deny rules will be supported through this feature. New fields "number" and "action"will be added to rules to resolve conflicting rules.
NetworkACLContainer NetworkACLList will be introduced to manage NetworkACLs (NetworkACLItems).
ACL is Access Control List. So ACL container is kind of redundant. Instead we use the below terminology:
NetworkACLItem - Individual ACL Entry (was NetworlACL earlier).
Should we call it NetworkAclEntry instead?
NetworkACL - Group of Network ACL Items. API will use the term NetworkACLList to differentiate from the existing NetworkACL APIs
NetworkACLNetworkACLContainer is a numbered list of NetworkACLs NetworkACLItems that are evaluated in order, starting with the lowest numbered rule, to determine whether traffic is allowed in or out of any tier associated with the network ACL container.
Instead of adding NetworkACLs NetworkACLItems directly to the tier,NetworkACLs NetworkACLItems will be added to the NetworkACLContainerNetworkACL. Tier will be associated with a NetworkACLContainer NetworkACL at all times (default NetworkACLContainer NetworkACL will be used when no ACL container is associated. Default behavior will be deny all).
NetworkACLContainer ACL is associated with a VPC and can be assigned to multiple vpc VPC tiers within the VPC. Each tier can be associated with only one NetworkACLContainerone ACL.
Add/Remove networkACL networkACLItem to containerNetworkACL
NetworkACLs NetworkACLItems can be added or removed from the container using NetworkACL using APIs createNetworkACL createNetworkACLItem and removeNetworkACL APIs. deleteNetworkACLItem APIs. Changes to ACL (add/update/remove aclItems) will be applied to all associated networks.
Tier will be associated with default network acl when no ACL is associated. Default network ACL cannot be removed or modified. Contents of default network ACL:
Rule # | protocol | traffic_type | action | cidr |
|---|---|---|---|---|
1 | all | Ingress | deny | 0.0.0.0/0 |
2 | all | Egress | deny | 0.0.0.0/0 |
Creating Tier with default acl container and assigning a custom acl container later
Create Tier with custom acl container in 1 step
createNetworkAclcreateNetworkAclItem (Aliased to createNetworkACL) - async
Adds a networkACL networkACLItem to the specified containerACL.
New parameters
For backward compatibility, if network_id is specified instead of acl_id, networkACLItem will added to the ACL assigned to the network.
deleteNetworkACLItem (Aliased to removeNetworkACL) - async
Deletes specifed network acl item from network ACL. No changes to the params. container_id is required while creating network ACLs. network_id parameter is not required when container_id is specified.
createNetwork
In VPC case, createNetwork is used to create a tier within VPC. Tier can be associated with a container ACL during creation. If containeracl_id is not specified default container ACL will be used. Network creation with acl_id will fail if ACL service is not present.
New parameters
updateNetworkACLItem (aliased to updateNetworkACL) - async
Updates an existing NetworkACLNetworkACLItem
Parameters:
createNetworkAclContainercreateNetworkAclList - sync
Created Creates network ACL container
Parameters:
Response:
deleteNetworkAclList - syncdeleteNetworkAclContainer
Deletes network ACL conatiner. If the container is assigned to any network, deletion will fail. ACL should not contain any ACLItems for deletion to succeed.
Parameters:
Response:
listNetworkAclContainerslistNetworkAclLists - sync
Containers ACLs can be listed by id or tier
Parameters:
Response:
replaceNetworkACLList - asyncreplaceNetworkACLContainer
Assigns specified container ACL to a tier (network)
Parameters:
Response:
| Gliffy Diagram | ||||||||
|---|---|---|---|---|---|---|---|---|
|
1. network_acl_container
1. firewall_rules
action, number, container_id are mandatory for rule with purpose NetworkACL.
2. network_acl_item
12. networks
...
For each tier, a new network acl container is created during the upgrade, All ACLs ACLItems that were assigned to this tier, will be part of the newly created network acl container. If there are no ACLs for any tier, it'll be associated with the default containerACL.
All existing rules in firewall_rules table of type NetworkACL will be moved to network_acl_item table and will have action "allow". Rule number will be sequentially assigned for all rules in each tier.