0% found this document useful (0 votes)
57 views

Access Control List

ACL (Access Control List) is a set of rules that allow or deny traffic flowing through a router. There are two types: standard ACLs apply to the destination router and block based on source IP, while extended ACLs apply to the source router and can block specific services and ports. ACL rules are configured using numbered or named ACLs, with numbered ACLs using numbers to link rules and named ACLs allowing insertion of rules between entries.

Uploaded by

Vishesh Malik
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
57 views

Access Control List

ACL (Access Control List) is a set of rules that allow or deny traffic flowing through a router. There are two types: standard ACLs apply to the destination router and block based on source IP, while extended ACLs apply to the source router and can block specific services and ports. ACL rules are configured using numbered or named ACLs, with numbered ACLs using numbers to link rules and named ACLs allowing insertion of rules between entries.

Uploaded by

Vishesh Malik
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

ACL (Access Control List)

� These are the “rules”, on the routers.


� Set of permits and denies or allow and deny.
� It is also known as “packet filtering firewall”.
� It is used to block website, subnet, traffic, network, hosts.
� It is Layer-3 security, means block and permit to IPs only.
� ACL is a set of rules which will allow or deny the specific traffic moving through
the router, and which controls the flow of traffic from one router to another
router.

Types of ACL

1) Standard ACLs
 Apply to the router which is nearest to the destination.
 It can block particular subnet, host, network.
 All services are blocked, no option to block a specific services.
 Two way communication is stopped.
 The access-list number range <1-99>.

2) Extended ACLs
 Apply to the router which is nearest to the source.
 It can also block particular subnet, host, network.
 Any specific service can be block, linke only TELNET, FTP, HTTP, etc. Means
selected service can be blocked.
 One way communication is stopped.
 The access-lsit number range <100-199>.

In this
topolgy
if we
want,
192.16
8.1.2 is
not
allowed
to
ping/IC
MP to
server
192.16
8.3.3.
In this Source is 192.168.1.0 network and Destination is 192.168.3.0 network. As we
know Standard ACL is apply to the nearest to the destination, so ACLs will be apply
to R3 router. Also if we want to apply Extended ACLs then it will apply to the nearest
to the source, so ACLs will be apply to R1.

More About ACLs

Purpose of an access-list is to identify traffic. Sometimes reffered to “Packet Filters”.


 How we apply an ACL determines its effect.

Apply an ACL to
 Interface ? Matched traffic is permitted through
 NAT ? Matched traffic is translated.
 VPN ? Matched traffic is encrypted and sent through tunnel.
 Route-Map ? Matched advertisements are accepted.
 QoS ? Matched traffic is prioritized (or de-prioritized)
 ......and many other applications.

� Two Types of Access Control Lists :


 Standard – Matches on Source IP
 Extended – Matches on Source IP, Destination IP, Source Port, Destination
Port, Protocol.

Packet Filter ACL can be applied :


� Per Interface
Means actual physical interface in the router, like – fastEthernet, Ethernet,
gigEthernet, serial, etc.

� Per Direction
Going out from the interface, and going in to the interface of the router.
In = getting into the interface of the router.
Out = getting out from the interface of the router.

� Per IP Protocol
IPv4 or IPv6, one ACL can never be contain both IPs (Ipv4 and Ipv6).

There are 2 ways to configure the ACLs:

� Numbered ACL
 Syntax for a Numbered Standard ACL:
access-list <ID#> <action> <Source>

 Syntax for a Numbered Extended ACL:


access-list <ID#> <action> <protocol> <source > <destination>

access-list
command to configure Numbered ACL

ID#

ID number which links multiple entries together. It allows us to links multiple entries
into the same access-list number. This is how we will refer to the ACL elsewhere in
the configuration. The number we choose is very significant.
Standard ACL = 1-99 or 1300 - 1999
Extended ACL = 100-199 or 2000-2699

ACL Number Entries


10 Permit 10.10.10.1
10 Deny 10.10.10.2
10 Permit Telnet for 192.168.2.2
10 Permit FTP for 192.168.2.3
156 Deny FTP for 192.168.3.3

Each individual entry is reffered to as ACE (Access Control Entry), and series of
ACEs creates an ACL or access-list.

action

This field defines, about permit, deny and remark. It can be one of these three items.
Relative to how ACL is applied 1) and 2)
1) permit = Accept Traffic
2) deny = Rejet Traffic
3) remark = Comment, ignore in packet processing.

# access-list 10 remark “String”

protocol

There is no protocol in Standard ACL, the Standard ACL can only filters, the IP
protocol. Whereas in the Extended ACL, we can filters different type of protocol. We
can match :
 IP Match ip traffic (all Ipv4 traffic)
 TCP Match tcp traffic (ports specified later)
 UDP Match udp traffic (ports specified later)
 ICMP Match icmp traffic (ping, traceroute, etc....)
 Lots more : gre, esp, ahp, etc....

source or destination

Either are defined with : <IP Address> [Port]


 To match a subnet
<Network ID> <Wildcard Mask>
 To match a single IP address
host <#.#.#.#>
 To match all IP addresses
any
 To match a specific port
eq <#> (eq = equal)
 To match a range of ports
range <#> <#>
This is a inclusive range,
 Other qualifiers
gt <#>, lt<#>, neq <#>

Numbered ACL Configuration Demostration

#do show run | section access-list

� Named ACL

These ACLs are defined as Standard or Extended, order of entries in ACL is


significant and by default new entries are appear at the end, this creates a limitation
when we want to add some etries between two entries. Named ACLs provide
additional features over Numbered ACLs.

 Removing the individual entry from the access-list.


 Allow us to insert lines at desired location
 Allow us to remove individual lines
 Allow us to modify numbered ACL
 Allow us to renumber ACL sequence numbers.
 Allow us to configure IPv6 ACLs

ip access-list standard <ID# or name> [sequence#] <action> <source>


ip access-list extended <ID# or name> [sequnce#] <action> <source> <destination>

sequence#

this allow us to where exactly we want to add new entry, we can specify that the
new entry should appear at any number we want. It is optional if we dont put it that
means the entries are going to append at end.

Configuration

R(#) config terminal


R(config)# ip access-list extended <NAME>
R(config-ext-nacl)# remark My First ACL!!
R(config-ext-nacl)# permit ip host <IP> host <IP>
R(config-ext-nacl)# deny ip host <IP> host <IP>

R(#) show run | section access-list


Now if we want to remove any of the entry, then complete ACL will not be removed.
R(#) config terminal
R(config)# ip access-list extended <NAME>
R(config-ext-nacl)# no permit ip host <IP> host <IP>

We can remove any entry by just sequence number.

R(#) show access-list


Extended IP access list <Name>
10 Permit statement
20 Permit Statement_2
30 Deny Statement

To remove :

R(config)# ip access-list extended <Name>


R(config-ext-nacl)# no 20

By applying, this command 20 sequence number statement will removed.

We can add entry at any place by just sequence number.

R(#) config terminal


R(config)# ip access-list extended <NAME>
R(config-ext-nacl)# <any number between 20-30> permit/deny statement

By applying, this command new entry will come after 20 and before 30 sequnce
entry.

We can re-sequence the number by default is 10, we can change it.

R(config)# ip access-list resequence <NAME> <Starting> <Increment>


R(config)# ip access-list extended <NAME> 10 20

starting from 10, and increment by 20. like = 10, 30, 50, 70, .....

IPv6 ACLs

# ipv6 access-list <Name or ID>


[sequence <#>] <action> <protocol> <source> <destination>
 all ipv6 ACLs are Extended ACLs.
 Here we need to use “sequence” command to give sequence number.

Configuration:

R(#) config terminal


R(config)# ipv6 access-list <Name>
R(config-ipv6-acl)# remark My First IPv6 ACL !!
R(config-ipv6-acl)# permit IP host 2001:1234::a host 2001:1254::a
R(config-ipv6-acl)# deny IP host 2001:1546::1 host 2001:1523::b
R(config-ipv6-acl)# permit IP 2001:1234::/64 host 2001:1563::b

You might also like