You have no items in your shopping cart.
Cisco Adaptive Security Appliance (ASA) firewalls protect your network through powerful Access Control Lists (ACLs). These security rules filter network traffic by permitting or denying packets based on specific criteria, ensuring your critical assets remain protected. This guide walks you through everything you need to know about implementing effective ACLs on Cisco ASA firewalls.
Access Control Lists on Cisco ASA firewalls consist of ordered rules that filter network traffic by either permitting or denying packets based on specified conditions. Each permit or deny statement is called an Access Control Entry (ACE), which examines Layer 3 through Layer 4 headers to evaluate:
ACLs follow a structured processing approach:
Every ACL includes an implicit "deny all" at the end that rejects any traffic not explicitly allowed. This default deny is only enforced if at least one user-defined rule exists in the ACL.
By default, Cisco ASA allows traffic from higher to lower security-level interfaces without requiring an ACL. However:
Return traffic must be explicitly allowed in the ACL for connectionless protocols like GRE, ESP, and ICMP.
ACLs only filter traffic passing through an interface—they cannot filter traffic originating from or destined to the ASA itself.
Only one ACL can be applied per interface in each direction (inbound or outbound). Multiple ACLs in the same direction are not permitted.
ACLs operate at the Network Layer (Layer 3) and Transport Layer (Layer 4) to filter by IP addresses, protocols, and ports.
ACLs serve as the first security measure in a firewall, blocking unwanted traffic at the network perimeter.
Cisco ASA uses ACLs for multiple security functions:
This filtering applies to traffic flowing through the firewall between networks. It controls:
Through-the-box filtering uses interface-based ACLs to determine which traffic can transit the firewall.
This filtering applies to traffic destined for the Cisco ASA itself, including:
This type of filtering secures the firewall itself from unauthorized management attempts.
Cisco ASA supports several ACL types for different security requirements:
This article focuses on standard and extended ACLs, which are the most commonly used types.
Standard ACLs primarily identify packets based on source IP addresses, though they can sometimes match traffic based on destination IPs in specific scenarios.
Standard ACLs serve specific purposes but offer less functionality than their extended counterparts.
Extended ACLs provide more granular control by filtering based on:
Extended ACLs offer the most flexibility for controlling traffic but require careful planning.
ACL direction is crucial for proper security implementation:
To understand ACL direction, imagine standing inside the interface facing outward. Traffic coming toward you is inbound, while traffic moving away is outbound.
Access-list [name][extended] [action] [Source IP] [Dest IP] [Port/Type]
Where:
ASA creates a default extended ACL if you don't specify the "extended" keyword.
Access-group [ACL Name] [Direction] Interface [Interface Name]
Where:
Name | IP Address | Prefix | VLAN | DG | Zone Name | Security Level |
---|---|---|---|---|---|---|
DMZ | 172.16.1.0 | 24 | 10 | 172.16.1.1 | dmz | 70 |
HR | 172.16.2.0 | 26 | 20 | 172.16.2.62 | hr | 60 |
Accounting | 172.16.2.64 | 26 | 30 | 172.16.2.126 | acc | 60 |
Logistics | 172.16.2.128 | 26 | 40 | 172.16.2.190 | logis_net | 60 |
IT | 192.168.2.192 | 26 | 50 | 172.16.2.254 | it | 60 |
Internal Server | 172.16.3.0 | 24 | 60 | 172.16.3.1 | int_srv | 100 |
In the diagram above, HR clients need access to the WEB server 1 in the DMZ. Since traffic moving from a low-security level to a high-security level is denied by default, we must establish an access list to allow traffic from the HR zone to the DMZ.
access-list hr_dmz_web7 extended permit tcp 172.16.2.0 255.255.255.192 host 172.16.1.7 eq 80
Note: Cisco ASA uses a standard subnet mask, not a wildcard format, such as 255.255.255.0, in extended ACLs.
Note: eq filters traffic based on specific port numbers for TCP or UDP protocols. It enables us to allow or block traffic for a particular service, such as HTTP (port 80) or SSH (port 22).
Step 2: Apply the access list to the interface
access-group hr_dmz_web7 in interface hr
Traffic can move from higher to lower security levels by default. To enhance user experience, we intend to permit HTTP traffic exclusively from the Internal server to the DMZ.
access-list server_dmz_web2 extended permit tcp 172.16.3.0 255.255.255.0 host 172.16.1.7 eq www
Step 2: Apply the access list to the interface
access-group server_dmz_web2 in interface int_srv
IT users must access the DMZ and Internal Server. To facilitate this, we create an access list that allows IT traffic on both sides.
access-list it_acc_all extended permit ip 172.16.2.192 255.255.255.192 172.16.1.0 255.255.255.0
access-list it_acc_all extended permit ip 172.16.2.192 255.255.255.192 172.16.3.0 255.255.255.0
Step 2: Apply the access list to the interface
access-group it_acc_all in interface it
Monitor and manage your ACLs with these commands:
show running-config access-list
show running-config access-group
show access-list
clear configur access-list [access-list-name] -> remove access-list
clear access-list access-list-name counters
note: clear configur command must be used in the configuration mode
1. Place specific rules first: More specific rules should appear before general ones
2. Enable logging: Monitor blocked traffic for troubleshooting
3. Test before deployment: Verify ACLs in a lab environment first
4. Use descriptive names: Name ACLs based on their function for easier management
5. Regular review: Audit ACLs periodically to remove outdated rules
6. Document your ACLs: Maintain documentation explaining the purpose of each ACL
Cisco ASA ACLs provide powerful traffic filtering capabilities that form the foundation of your network security posture. By properly configuring and managing these access controls, you can protect your network from unauthorized access while ensuring that legitimate traffic flows smoothly.
Whether you're implementing basic traffic filtering or complex security policies, mastering ACLs is essential for any Cisco ASA administrator. Start with simple rules and gradually build your expertise to create comprehensive security solutions for your organization.