top of page
Writer's pictureTor's Tech Talk

5.6 - Understanding and Configuring Access Control Lists

Greetings, Tech Talkers!


This is Tor, your trusted network engineering uplink! Today, we're focusing on the critical topic of Access Control Lists (ACLs). ACLs are fundamental tools used to control traffic flow within networks, enforce security policies, and manage access to network resources.


In this article, we'll explore what ACLs are, the different types, how they function, and the steps to configure them on Cisco devices. By the end, you'll have a solid understanding of ACLs and how to implement them effectively to enhance your network's security and performance.


Let's get started!


What Are Access Control Lists (ACLs)?


An Access Control List (ACL) is a set of rules that controls incoming and outgoing network traffic. ACLs are used to filter packets based on criteria such as source and destination IP addresses, protocols, and port numbers.


Primary Functions of ACLs:


  • Traffic Filtering: Control which packets are permitted or denied in a network.

  • Security Enforcement: Restrict access to sensitive resources.

  • Network Performance: Reduce unnecessary traffic and improve efficiency.

  • Policy Implementation: Enforce organizational policies and compliance requirements.


Types of ACLs


  1. Standard ACLs:

    1. Range: 1-99 and 1300-1999 (expanded range)

    2. Filtering Criteria: Based solely on source IP addresses.

    3. Usage: Generally applied close to the destination.


  1. Extended ACLs:

    1. Range: 100-199 and 2000-2699 (expanded range).

    2. Filtering Criteria: Based on source and destination IP addresses, protocols, and port numbers.

    3. Usage: Typically applied close to the source.


  1. Named ACLs:

    1. Identifier: Uses a name instead of a number.

    2. Supports: Both standard and extended ACLs.

    3. Benefits: Easier to manage and modify.


How ACLs Work


  1. Sequential Evaluation:

    1. ACLs evaluate packets against each rule in order, from top to bottom.

    2. Once a match is found, the corresponding action (permit or deny) is taken.

    3. No further rules are evaluated after a match.


  1. Implicit Deny All:

    1. If a packet does not match any rule, it is denied by default.

    2. It's essential to include explicit permit statements for desired traffic.


Configuring Standard ACLs


Example Scenario:


Objective: Deny traffic from the host `192.168.10.5` while permitting all other traffic.


Configuration Steps:


  1. Create the Standard ACL:

   Router(config)# access-list 10 deny 192.168.10.5
   Router(config)# access-list 10 permit any

Explanation:

  • `deny 192.168.10.5`: Denies traffic from the specified host.

  • `permit any`: Permits all other traffic.


  1. Apply the ACL to an Interface:

Router(config)# interface GigabitEthernet0/1
Router(config-if)# ip access-group 10 in

Explanation:

  • Applies ACL 10 to inbound traffic on the interface.


Configuring Extended ACLs


Example Scenario:


Objective: Permit HTTP and HTTPS traffic from the `192.168.20.0/24` network to the `10.0.0.0/24` network; deny all other traffic.


Configuration Steps:


  1. Create the Extended ACL:

Router(config)# access-list 100 permit tcp 192.168.20.0 0.0.0.255 10.0.0.0 0.0.0.255 eq 80
Router(config)# access-list 100 permit tcp 192.168.20.0 0.0.0.255 10.0.0.0 0.0.0.255 eq 443
Router(config)# access-list 100 deny ip any an

Explanation:

  • `permit tcp ... eq 80`: Allows HTTP traffic.

  • `permit tcp ... eq 443`: Allows HTTPS traffic.

  • `deny ip any any`: Denies all other IP traffic.


  1. Apply the ACL to an Interface:

Router(config)# interface GigabitEthernet0/2
Router(config-if)# ip access-group 100 in

Using Named ACLs


Example Scenario:


Objective: Deny Telnet access to the `172.16.0.0/16` network from any source.


Configuration Steps:


  1. Create a Named Extended ACL:

   Router(config)# ip access-list extended DENY_TELNET
   Router(config-ext-nacl)# deny tcp any 172.16.0.0 0.0.255.255 eq 23
   Router(config-ext-nacl)# permit ip any any
   Router(config-ext-nacl)# exit

  1. Apply the ACL to an Interface:

Router(config)# interface GigabitEthernet0/3
Router(config-if)# ip access-group DENY_TELNET in

Best Practices for Configuring ACLs


  1. Plan Before Implementation:

  • Map out network traffic and define clear objectives.

  • Avoid unintended blocking by thoroughly understanding the impact.


  1. Use Descriptive Names and Comments:

  • Named ACLs improve readability.

  • Include remarks for documentation.

Router(config)# access-list 100 remark Allow HTTP/HTTPS from 192.168.20.0/24 to 10.0.0.0/24

  1. Order Rules Appropriately:

  • Place more specific rules before general ones.

  • Sequence affects performance and effectiveness.


  1. Test ACLs in a Controlled Environment:

  • Verify configurations in a lab setting before deployment.

  • Use monitoring tools to observe the impact.


  1. Regularly Review and Update ACLs:

  • Keep ACLs current with network changes and security policies.

  • Remove obsolete or redundant rules.


Monitoring and Verifying ACLs


Useful Commands:


Display All ACLs:

Router# show access-lists

Display Specific ACL:

Router# show access-lists 100

View Interfaces with ACLs Applied:

Router# show ip interface GigabitEthernet0/1

Check ACL Hit Counts:

  • Indicates how many times each rule has been matched.


Clear Counters (For Testing):

Router# clear access-list counters

Advanced ACL Features


  1. Time-Based ACLs:


Apply rules during specific time periods.


Example:

     Router(config)# time-range WORK_HOURS
     Router(config-time-range)# periodic weekdays 9:00 to 17:00
     Router(config-time-range)# exit
     Router(config)# ip access-list extended OFFICE_ACCESS
     Router(config-ext-nacl)# permit tcp any any eq 80 time-range HOURS
     Router(config-ext-nacl)# deny ip any any

  1. Reflexive ACLs:


  • Allow dynamic, temporary entries based on outgoing traffic.


  1. Dynamic ACLs (Lock-and-Key):


  • Require user authentication before permitting traffic.


  1. Context-Based Access Control (CBAC):


  • Stateful inspection for more granular control.


ACLs and Security


Access Control:

  • Restrict unauthorized access to network resources.

  • Implement security policies and compliance requirements.


Traffic Management:

  • Reduce network congestion by blocking unnecessary traffic.

  • Prioritize critical traffic.


Threat Mitigation:

  • Block known malicious IP addresses or traffic types.

  • Protect against common attacks (e.g., blocking ports used by malware).


Wrapping It Up


Understanding and configuring Access Control Lists is fundamental for any network engineer aiming to enhance network security and efficiency. By effectively implementing ACLs, you can control traffic flow, enforce policies, and protect your network from unauthorized access.


Until next time, Tech Talkers, keep your packets filtered and your networks secure!


Thanks,

Tor – Your trusted network engineering uplink

1 view0 comments

Recent Posts

See All

Cisco VTP – To VTP, or Not to VTP

Greetings, Tech Talkers! This is Tor from Tors Tech Talk, your trusted network engineering uplink. Today, we’re tackling the ultimate...

Course Outro: Wrapping Up Your CCNA Journey

Greetings, Tech Talkers! This is Tor, your trusted network engineering uplink! We've journeyed together through the vast landscape of...

Comments

Rated 0 out of 5 stars.
No ratings yet

Add a rating
bottom of page