You are on page 1of 31

Why Use Access Lists?

Manage IP traffic as network access grows Filter packets as they pass through the router

What are ACLs?


ACLs are lists of conditions that are applied to traffic traveling across a router's interface. These lists tell the router what types of packets to accept or deny. Acceptance and denial can be based on specified conditions. ACLs can be configured at the router to control access to a network or subnet. Some ACL decision points are source and destination addresses, protocols, and upper-layer port numbers.

Reasons to Create ACLs


The following are some of the primary reasons to create ACLs:
Limit network traffic and increase network performance. Provide traffic flow control. Provide a basic level of security for network access. Decide which types of traffic are forwarded or blocked at the router interfaces For example: Permit e-mail traffic to be routed, but block all telnet traffic. If ACLs are not configured on the router, all packets passing through the router will be allowed onto all parts of the network.

ACLs
Different access list for Telnet When configuring ISDN you need to use access list Implicit deny at bottom All restricted statements should be on first There are two types
Standard Extended

Network
192.168.12.2

N1

192.168.12.0

N2

192.168.12.3

N3

192.168.34.0

N4

N5

192.168.56.0

N6

Types of Access Lists

Standard Checks source address Permits or denies entire protocol suite Extended Checks source and destination address Generally permits or denies specific protocols

How to Identify Access Lists

Standard IP lists (1-99) test conditions of all IP packets from source addresses. Extended IP lists (100-199) test conditions of source and destination addresses, specific TCP/IP protocols, and destination ports. Standard IP lists (1300-1999) (expanded range). Extended IP lists (2000-2699) (expanded range).

Standard ACLs
The full syntax of the standard ACL command is: Router(config)#access-list access-list-number {deny | permit} source [source-wildcard ] The no form of this command is used to remove a standard ACL. This is the syntax: Router(config)#no access-list access-list-number

Config# Access-list 1 deny 192.168.1.0 0.0.0.255 Config# access-list 1 permit any

Wildcard Mask
Access-list 99 permit 192.168.1.1 wildcard mask All 32 bits of an IP Address can be filtered Wildcard inverse mask 0=must match 1= ignore MASK (192.168.1.1) 0.0.0.0 (host) 0.0.0.255 0.0.255.255 0.255.255.255 255.255.255.255 Matching IP 192.168.1.1 192.168.1.0-255 192.168.0-255.0-255 192.0-255.0-255.0-255 0-255.0-255.0-255.0-255 (any)

The ANY and HOST keyword


Access-list 1 permit 0.0.0.0 255.255.255.255 Or permit any Access-list 1 permit 200.0.0.9 0.0.0.0 Or permit host 200.0.0.9

Testing Packets with Standard Access Lists

Outbound ACL Operation

If no access list statement matches, then discard the packet.

Reading an ACL
1. First Hit or Best Fit? Access-list 99 deny host 192.168.1.1 0.0.0.0 access-list 99 permit any 255.255.255.255 Access-list 99 permit 192.168.1.0 0.0.0.255 Access-list 99 deny host 192.168.1.1 access-list 99 permit any Access-list 99 deny host 192.168.1.1 Implicit deny at the end of every ACL

2.

3.

Creating ACLs
ACLs are created in the global configuration mode. There are many different types of ACLs including standard, extended, IPX, AppleTalk, and others. When configuring ACLs on a router, each ACL must be uniquely identified by assigning a number to it. This number identifies the type of access list created and must fall within the specific range of numbers that is valid for that type of list. Since IP is by far the most popular routed protocol, addition ACL numbers have been added to newer router IOSs. Standard IP: 1300-1999 Extended IP: 20002699

The ip access-group command

{ in | out }

Exercise Standard Access List


192.168.0.5 255.255.255.252 192.168.0.9 255.255.255.252

E0

192.168.0.33 255.255.255.240

A
192.168.0.18 255.255.255.248

S0 192.168.0.17 255.255.255.248

S0
192.168.0.6 255.255.255.252

S1

S0
192.168.0.10 255.255.255.252

E0

B
192.168.0.34 255.255.255.240

Account should be denied access to Sales


To steps to configure Create a standard Access list Apply ACL to proper interface inbound or outbound

Exercise Standard Access List


192.168.0.5 255.255.255.252 192.168.0.9 255.255.255.252

E0

192.168.0.33 255.255.255.240

A
192.168.0.18 255.255.255.248

S0 192.168.0.17 255.255.255.248

S0
192.168.0.6 255.255.255.252

S1

S0
192.168.0.10 255.255.255.252

E0

B
192.168.0.34 255.255.255.240

Config# Access-list 1 deny 192.168.0.18 0.0.0.7 Config# access-list 1 permit any

Config#int e 0 Config-if# ip access-group 1 out

Extended ACLs
Extended ACLs are used more often than standard ACLs because they provide a greater range of control. Extended ACLs check the source and destination packet addresses as well as being able to check for protocols and port numbers. At the end of the extended ACL statement, additional precision is gained from a field that specifies the optional Transmission Control Protocol (TCP) or User Datagram Protocol (UDP) port number. Logical operations may be specified such as, equal (eq), not equal (neq), greater than (gt), and less than (lt), that the extended ACL will perform on specific protocols. Extended ACLs use an access-list-number in the range 100 to 199 (also from 2000 to 2699 in recent IOS).

Configuration
Access-list acl# {permit/Deny}
Protocol
OSPF EIGRP ICMP TCP UDP

Protocol Src IP src WCM Dst IP dst WCM Opetrator port

RP If you need to Block a routing protocol

IP

Operator
eq gt lt neq

Testing Packets with Extended Access Lists

Extended ACL Syntax

Extended ACL LAB


Internet A
Fa0/0
200.0.0.10 255.255.255.248 200.0.0.9 255.255.255.248

B
Fa0/1
200.0.0.17 255.255.255.240 200.0.0.18 255.255.255.240

Account should be denied Sales Web site


Config# Access-list 100 deny tcp 200.0.0.10 0.0.0.7 200.0.0.18 0.0.0.15 eq www Config# access-list 100 permit IP any any Config#int Fastethernet 0/0 Config-if# ip access-group 100 IN

Extended ACL LAB -2


192.168.0.5 255.255.255.252 192.168.0.9 255.255.255.252

S0
192.168.0.6 255.255.255.252

S1

S0
192.168.0.10 255.255.255.252

E0 192.168.0.17 255.255.255.248

S0

E0

192.168.0.33 255.255.255.240

192.168.0.34 255.255.255.240

A
192.168.0.18 255.255.255.248

192.168.0.34 should be denied FTP of 192.168.0.18 On Router R1 Config# Access-list 100 deny tcp 192.168.0.34 0.0.0.0 192.168.0.18 0.0.0.0 eq 21 Config# access-list 100 permit IP any any Config#int s0 Config-if# ip access-group 100 IN

192.168.0.18 should be denied website of 192.168.0.34 On Router R3 Config# Access-list 100 deny tcp 192.168. 0.18 0.0.0.0 192.168.0.34 0.0.0.0 eq 80 Config# access-list 100 permit IP any any Config#int s0 Config-if# ip access-group 100 IN

Deny FTP
access-list 101 deny tcp any any eq 21 access-list 101 permit ip any any
or

access-list 101 deny tcp any any eq ftp access-list 101 permit ip any any

Rules
For extended access list apply near to the source For standard access list apply near to the destination

Named ACLs
IP named ACLs were introduced in Cisco IOS Software Release 11.2, allowing standard and extended ACLs to be given names instead of numbers.

The characteristics of named accesslist:


Identify an ACL using an alphanumeric name. You can delete individual statements in a named access list Named access lists must be specified as standard or extended You can use the ip access-list command to create named access lists.

Named ACLs are not compatible with Cisco IOS releases prior to Release 11.2. The same name may not be used for multiple ACLs.

Named ACLs
Numbered Access list did not give you any hint, What is filtered Named ACLs are both basic and advanced filtering tool Name cannot start with a number or ! Cannot have space in the name Should not have ? Character anywhere in the name Name is case sensitive

Named ACL Example


R1(config)#ip access-list standard blocksales

R1(config-std-nacl)#deny 172.16.40.0 0.0.0.255 R1(config-std-nacl)#permit any R1(config-std-nacl)#exit R1(config)#^Z R1#

#Int e 0 #Ip access-group blocksales out

Verify Access List

Basic Rules for ACLs


Standard IP access lists should be applied closest to the destination. Extended IP access lists should be applied closest to the source. Use the inbound or outbound interface reference as if looking at the port from inside the router. Statements are processed sequentially from the top of list to the bottom until a match is found, if no match is found then the packet is denied. There is an implicit deny at the end of all access lists. This will not appear in the configuration listing. Access list entries should filter in the order from specific to general. Specific hosts should be denied first, and groups or general filters should come last. Never work with an access list that is actively applied. New lines are always added to the end of the access list. A no access-list x command will remove the whole list. It is not possible to selectively add and remove lines with numbered ACLs. Outbound filters do not affect traffic originating from the local router.

You might also like