1 / 92

Chapter 7 Access Control Lists Routing Protocols - CCNA version 6

Chapter 7 Access Control Lists Routing Protocols - CCNA version 6. CIS 82 Routing Protocols and Concepts Rick Graziani Cabrillo College graziani@cabrillo.edu. Chapter 9. 9.1 IP ACL Operation 9.2 Standard IPv4 ACLs 9.3 Extended IPv4 ACLSs 9.4 Contextual Unit: Debug with ACLs

ismaele
Download Presentation

Chapter 7 Access Control Lists Routing Protocols - CCNA version 6

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 7Access Control ListsRouting Protocols - CCNA version 6 CIS 82 Routing Protocols and Concepts Rick Graziani Cabrillo College graziani@cabrillo.edu

  2. Chapter 9 9.1 IP ACL Operation 9.2 Standard IPv4 ACLs 9.3 Extended IPv4 ACLSs 9.4 Contextual Unit: Debug with ACLs 9.5 Troubleshoot ACLs 9.6 Contextual Unit: IPv6 ACLs 9.7 Summary

  3. Chapter 9: Objectives • After completing this chapter, students will be able to: • Explain how ACLs are used to filter traffic. • Compare standard and extended IPv4 ACLs. • Explain how ACLs use wildcard masks. • Explain the guidelines for creating ACLs. • Explain the guidelines for placement of ACLs. • Configure standard IPv4 ACLs to filter traffic according to networking requirements. • Modify a standard IPv4 ACL using sequence numbers. • Configure a standard ACL to secure vty access. • Explain the structure of an extended access control entry (ACE). • Configure extended IPv4 ACLs to filter traffic according to networking requirements. • Configure an ACL to limit debug output. • Explain how a router processes packets when an ACL is applied. • Troubleshoot common ACL errors using CLI commands. • Compare IPv4 and IPv6 ACL creation. • Configure IPv6 ACLs to filter traffic according to networking requirements.

  4. Access Control Lists(ACLs)

  5. Access Control Lists (ACLs) 1 2 4 3 • By default, a router does not filter traffic. • When an ACL is applied to an interface: • Evaluates all network packets • Determines if the packet is permitted or denied.

  6. What are ACLs? • An ACL is a sequential list of of permit or deny statements, known as access control entries (ACEs). • ACEs are also commonly called ACL statements. • ACLs control whether a router permits or denies packets based on criteria in the header that identifies the: • Source IP address • Destination IP address • IP protocols (ICMP, TCP, UDP, EIGRP, …) • TCP/UDP source port • TCP/UDP destination port

  7. Types of ACLs

  8. Standard ACLs • Can permit or deny traffic for Source IP addresses … only! • Extended ACLs • Can permit or deny traffic for: • Protocol type IP (IP, ICMP, EIGRP, OSPF, TCP, UDP, …) • Source IP address • Source TCP or UDP ports • Destination IP address • Destination TCP or UDP ports

  9. Numbered and Named ACLs

  10. Wildcard Mask • Standard and Extended ACLs both use wildcard masks. • Wildcard masks and subnet masks differ in the way they match binary 1s and 0s. • Wildcard masks use the following rules to match binary 1s and 0s: • Wildcard mask bit 0 - Match the corresponding bit value in the address • Wildcard mask bit 1 - Ignore the corresponding bit value in the address

  11. Calculating Wildcard Masks #1 • 255.255.255.255 • 255.255.255. 0 • 0. 0. 0.255 • Calculating wildcard masks can be difficult, but you can do it easily by subtracting the subnet mask from 255.255.255.255. • For example, assume you wanted to permit access to all users from the 192.168.3.0 /24 • Subtract the subnet mask (255.255.255.0) from the subnet mask 255.255.255.255. access-list 1 permit 192.168.3.0 0.0.0.255

  12. Calculating Wildcard Masks #2 • 255.255.255.255 • 255.255.255.240 • 0. 0. 0. 15 • Assume you wanted to permit access to all users from the 192.168.3.32 /28 • Subtract the subnet mask (255.255.255.240) from the subnet mask 255.255.255.255. access-list 1 permit 192.168.3.32 0.0.0.15

  13. Host keyword access-list 1 permit 192.168.1.1 0.0.0.0 Decimal Binary IP Address 192.168.1.1 11000000.10101000.00000001.00000001 Wildcard Mask 0.0.0.0 00000000.000000000.00000000.00000000 Result 192.168.1.1 11000000.10101000.00000001.00000001 • The host keyword can be used to substitute for the 0.0.0.0 wildcard mask. • This mask states that all IPv4 address bits must match or only one host is matched. Note: The host keyword can also be used in IPv6 ACLs. access-list 1permit host 192.168.1.1

  14. Any Keyword access-list 1 permit 0.0.0.0 255.255.255.255 Decimal Binary IP Address 0.0.0.0 00000000.00000000.00000000.00000000 Wildcard Mask 255.255.255.255 11111111.11111111.11111111.11111111 Result 0.0.0.0 00000000.000000000.00000000.00000000 • Theany keyword substitutes for the 255.255.255.255 wildcard mask. • This mask says to ignore the entire IPv4 address or to accept any addresses. Note: Theany keyword can also be used in IPv6 ACLs. access-list 1 permit any

  15. Any and Host Keywords

  16. Placement of ACLs

  17. Any Traffic filtering on a Router

  18. ACL Placement • Extended ACLs - This way, undesirable traffic is denied close to the source network without crossing the network infrastructure. • Standard ACLs - Because standard ACLs do not specify destination addresses, place them as close to the destination as possible. • Placing a standard ACL at the source of the traffic will effectively prevent that traffic from reaching any other networks through the interface where the ACL is applied.

  19. ACL Placement • Placement of the ACL and therefore the type of ACL used may also depend on: • The extent of the network administrator’s control • Bandwidth of the networks involved • Ease of configuration 22

  20. Can only permit/deny based on source address. Will deny traffic to all sites. Why not here?

  21. Can permit/deny based on source, destination, protocol... Can block before wasting network bandwidth. Why here? OR

  22. Configuring Standard IPv4 ACLs Numbered and Named

  23. How are ACLs Created? In Two Steps! 1. Create an ACL definition. • Enter global configuration mode. • Define statements of what to filter. 2. Apply the ACL to an interface. • Enter interface configuration mode. • Identify the ACL and the direction to filter.

  24. 1. Create a Standard ACL • ACL-# is a unique identifier. • The # range identifies the type of ACL. • permit | deny are terms to specify how the packets which meet the condition will be handled. • permit: Implies the packet will not be filtered. • deny: Implies the packet will be filtered. • remark: Allows you to enter a description of the ACL

  25. 2. Apply the ACL to an interface • in | out identifies if the ACL is for incoming or outgoing traffic. • in means that packets are filtered as they enter the interface, before the routing decision. • out means that packets are filtered as they leave the interface, after the routing decision. • “out” is the default. • Outbound ACLs are generally more efficient, and are preferred. • Inbound ACLs must check every packet.

  26. By default, there is an implied deny at the end of all ACLs for traffic that was not matched to a configured entry. R1(config)# access-list 1 permit 192.168.10.0 0.0.0.255 SAME AS R1(config)# access-list 2 permit 192.168.10.0 0.0.0.255 R1(config)# access-list 2 deny any

  27. Removing an ACL R1(config)# access-list 10 permit 192.168.10.0 0.0.0.255 R1(config)# exit R1# show access-lists Standard IP access list 10 10 permit 192.168.10.0, wildcard bits 0.0.0.255 R1# conf t Enter configuration commands, one per line. End with CNTL/Z. R1(config)# no access-list 10 R1(config)# exit R1 #show access-lists R1#

  28. Comments - remark R1(config)# access-list 10 remark Permit hosts from the 192.168.10.0 LAN R1(config)# access-list 10 permit 192.168.10.0 0.0.0.255 R1(config)# exit R1# show running-config | include access-list 10 access-list 10 remark Permit hosts from the 192.168.10.0 LAN access-list 10 permit 192.168.10.0 0.0.0.255 R1#

  29. Internal LogicOrder matters Conflict with Statements ACL 3: Host statement conflicts with previous range statement R1(config)# access-list 3 deny 192.168.10.0 0.0.0.255 R1(config)# access-list 3 permit host 192.168.10.10 % Access rule can't be configured at higher sequence num as it is part of the existing rule at sequence num 10 R1(config)#

  30. Internal LogicOrder matters Host Statement Entered Before Range ACL 4: Host statement can always be configured before range statements R1(config)# access-list 4 permit host 192.168.10.10 R1(config)# access-list 4 deny 192.168.10.0 0.0.0.255 R1(config)#

  31. Internal LogicOrder matters Host Configured Before Range with no Conflict ACL 5: Host statement can be configured after range statement if there is no conflict R1(config)# access-list 5 deny 192.168.10.0 0.0.0.255 R1(config)# access-list 5 permit host 192.168.11.10 R1(config)#

  32. Applying Standard ACLs to Interfaces Step 1: Configure the ACL statements R1(config)# access-list 1 permit 192.168.10.0 0.0.0.255 Step 2: Select the interface to apply the ACL R1(config)# interface serial 0/0/0 Step 3: Apply the ACL to the interface using the ip access-group command R1(config-if)# ip access-group 1 out

  33. Permit a Specific Subnet R1(config)# access-list 1 permit 192.168.10.0 0.0.0.255 R1(config)# interface s0/0/0 R1(config-if)# ip access-group 1 out

  34. Deny a Specific Host and Permit a Specific Subnet X X R1(config)# access-list 1 deny host 192.168.10.10 R1(config)# access-list 1 permit 192.168.10.0 0.0.0.255 R1(config)# interface s0/0/0 R1(config-if)# ip access-group 1 out

  35. Deny a Specific Host X R1(config)# access-list 1 deny host 192.168.10.10 R1(config)# access-list 1 permit any R1(config)# interface g0/0 R1(config-if)# ip access-group 1 in

  36. Named ACL

  37. Named ACLs • Named ACLs allow standard and extended IP ACLs to be identified with a name. • Name cannot start with a number. • Named ACLs help identify the function of the ACL. • The actual names used must be unique across all named access lists of all protocols and types on an individual router. • Names can be duplicated on different routers. • ACLs of different types cannot have the same name. • For example, it is illegal to specify a standard ACL named BOB and an extended ACL with the same name.

  38. Named ACLs Syntax • You create the named ACL in global configuration mode. • Notice that the access-list command has changed to: • ip access-list • You then enter named ACL configuration mode. • The sub config mode prompt varies between standard and extended ACLs. R1(config)# ip access-list standard NAME-OF-THE-ACL R1(config-std-nacl)# exit R1(config)# ip access-list extended A-DIFFERENT-NAME-ACL R1(config-ext-nacl)# exit

  39. Named ACLs Syntax • In ACL configuration mode, specify one or more conditions permitted or denied. • This determines whether the packet is passed or dropped.

  40. Named ACL Example X R1(config)# ip access-list standard NO_ACCESS R1(config-std-nacl)# deny host 192.168.11.10 R1(config-std-nacl)# permit any R1(config-std-nacl)# exit R1(config)# interface g0/0 R1(config-if)# ip access-group NO_ACCESS out

  41. Commenting ACLs Example 1 – Commenting a numbered ACL R1(config)# access-list 1 remark Do not allow Guest workstation through R1(config)# access-list 1 deny host 192.168.10.10 R1(config)# access-list 1 remark Allow devices from all other 192.168.x.x subnets R1(config)# access-list 1 permit 192.168.0.0 0.0.255.255 R1(config)# interface s0/0/0 R1(config-if)# ip access-group 1 out R1(config-if)# Example 2 – Commenting a named ACL R1(config)# ip access-list standard NO_ACCESS R1(config-std-nacl)# remark Do not allow access from Lab workstation R1(config-std-nacl)# deny host 192.168.11.10 R1(config-std-nacl)# remark Allow access from all other networks R1(config-std-nacl)# permit any R1(config-std-nacl)# interface G0/0 R1(config-if)# ip access-group NO_ACCESS out R1(config-if)#

  42. Editing Numbered ACLs Using Sequence Numbers Configuration R1(config)# access-list 1 deny host 192.168.10.99 R1(config)# access-list 1 permit 192.168.0.0 0.0.255.255 Step 1 R1# show access-lists 1 Standard IP access list 1 10 deny 192.168.10.99 20 permit 192.168.0.0, wildcard bits 0.0.255.255 R1# Step 2 R1# conf t R1(config)# ip access-list standard 1 R1(config-std-nacl)# no 10 R1(config-std-nacl)# 10 deny host 192.168.10.10 R1(config-std-nacl)# end R1# Step 3 R1# show access-lists Standard IP access list 1 10 deny 192.168.10.10 20 permit 192.168.0.0, wildcard bits 0.0.255.255 R1#

  43. Editing Named ACLs – Adding a Line R1# show access-lists Standard IP access list NO_ACCESS 10 deny 192.168.11.10 20 permit 192.168.11.0, wildcard bits 0.0.0.255 R1# conf t Enter configuration commands, one per line. End with CNTL/Z. R1(config)# ip access-list standard NO_ACCESS R1(config-std-nacl)# 15 deny host 192.168.11.11 R1(config-std-nacl)# end R1# show access-lists Standard IP access list NO_ACCESS 10 deny 192.168.11.10 15 deny 192.168.11.11 20 permit 192.168.11.0, wildcard bits 0.0.0.255 R1# Note: The nosequence-numbernamed-ACLcommand is used to delete individual statements.

  44. Verifying ACLs R1# show ip interface s0/0/0 Serial0/0/0 is up, line protocol is up Internet address is 10.1.1.1/30 <output omitted> Outgoing access list is 1 Inbound access list is not set <output omitted> R1# show ip interface g0/0 GigabitEthernet0/1 is up, line protocol is up Internet address is 192.168.10.1/24 <output omitted> Outgoing access list is NO_ACCESS Inbound access list is not set <output omitted>

  45. Verifying ACLs R1# show access-lists Standard IP access list 1 10 deny 192.168.10.10 20 permit 192.168.0.0, wildcard bits 0.0.255.255 Standard IP access list NO_ACCESS 15 deny 192.168.11.11 10 deny 192.168.11.10 20 permit 192.168.11.0, wildcard bits 0.0.0.255 R1#

  46. Viewing ACL Statistics R1# show access-lists Standard IP access list 1 10 deny 192.168.10.10 (4 match(es)) 20 permit 192.168.0.0, wildcard bits 0.0.255.255 Standard IP access list NO_ACCESS 15 deny 192.168.11.11 10 deny 192.168.11.10 (4 match(es)) 20 permit 192.168.11.0, wildcard bits 0.0.0.255 R1# Output after pinging PC3 from PC1. Matches have been incremented. R1# show access-lists Standard IP access list 1 10 deny 192.168.10.10 (8 match(es)) 20 permit 192.168.0.0, wildcard bits 0.0.255.255 Standard IP access list NO_ACCESS 15 deny 192.168.11.11 10 deny 192.168.11.10 (4 match(es)) 20 permit 192.168.11.0, wildcard bits 0.0.0.255 R1#

  47. Clearing ACL Statistics R1#show access-lists Standard IP access list 1 10 deny 192.168.10.10 (8 match(es)) 20 permit 192.168.0.0, wildcard bits 0.0.255.255 Standard IP access list NO_ACCESS 15 deny 192.168.11.11 10 deny 192.168.11.10 (4 match(es)) 20 permit 192.168.11.0, wildcard bits 0.0.0.255 R1# R1#clear access-list counters 1 R1# R1#show access-lists Standard IP access list 1 10 deny 192.168.10.10 20 permit 192.168.0.0, wildcard bits 0.0.255.255 Standard IP access list NO_ACCESS 15 deny 192.168.11.11 10 deny 192.168.11.10 (4 match(es)) 20 permit 192.168.11.0, wildcard bits 0.0.0.255 Matches have been cleared.

  48. Standard ACL Sequence Numbersand Internal Logic R1(config)#access-list 1 deny 192.168.10.0 0.0.0.255 R1(config)#access-list 1 deny 192.168.20.0 0.0.0.255 R1(config)#access-list 1 deny 192.168.30.0 0.0.0.255 R1(config)#access-list 1 permit 10.0.0.1 R1(config)#access-list 1 permit 10.0.0.2 R1(config)#access-list 1 permit 10.0.0.3 R1(config)#access-list 1 permit 10.0.0.4 R1(config)#access-list 1 permit 10.0.0.5 R1(config)#end R1#show running-config | include access-list 1 access-list 1 permit 10.0.0.2 access-list 1 permit 10.0.0.3 access-list 1 permit 10.0.0.1 access-list 1 permit 10.0.0.4 access-list 1 permit 10.0.0.5 access-list 1 deny 192.168.10.0 0.0.0.255 access-list 1 deny 192.168.20.0 0.0.0.255 access-list 1 deny 192.168.30.0 0.0.0.255 R1# Range (network) statements Host statements (no conflicts Host statements (no conflicts Range (network) statements

More Related