ACL笔记
- 标准ACL-仅在第3层使用仅源IPv4地址过滤ACL。
- 扩展ACL-使用源和/或目标IPv4地址在第3层过滤ACL。他们还可以使用TCP,UDP端口和可选的协议类型信息在第4层进行过滤,以实现更好的控制。
- 注意:ACL不会作用于源自路由器本身的数据包。
通配符
- host 等同于0.0.0.0,表示一个主机
- any 等同于255.255.255.255,表示所有主机
例如:
R1(config)# access-list 10 permit 192.168.10.10 0.0.0.0 R1(config)# access-list 11 permit 0.0.0.0 255.255.255.255
等同于
R1(config)# access-list 10 permit host 192.168.10.10 R1(config)# access-list 11 permit any
一个接口最多4个ACL包括:
- 1个出站IPv4 ACL
- 1个入站IPv4 ACL
- 1个入站IPv6 ACL
- 1个出站IPv6 ACL
标准和扩展ACL
- 标准ACL-仅根据源IPv4地址允许或拒绝数据包。
R1(config)# access-list 10 permit 192.168.10.0 0.0.0.255
ACL 10允许源网络192.168.10.0/24上的主机。由于末尾暗含“ deny any”,因此,除此以外,所有来自192.168.10.0/24网络的流量都将被此ACL阻止。
- 扩展ACL-允许或拒绝基于源IPv4地址和目标IPv4地址,协议类型,源和目标TCP或UDP端口等的数据包。
access-list 100 permit tcp 192.168.10.0 0.0.0.255 any eq www
在下一个示例中,如果目标主机端口为80(HTTP),则扩展的ACL 100允许从192.168.10.0/24网络上的任何主机到任何IPv4网络的流量。
编号和命名的ACL
ACL的编号
- 编号1到99或1300到1999的ACL是标准ACL,而编号100到199或2000到2699的ACL是扩展ACL
命名的ACL
配置ACL时,首选使用命名ACL。具体来说,可以命名标准和扩展ACL,以提供有关ACL用途的信息。例如,命名扩展的ACL FTP-FILTER远胜于编号为ACL100的ACL的IP访问列表全局配置命令用来创建一个名为ACL,如图下面的例子。
R1(config)# ip access-list extended FTP-FILTER R1(config-ext-nacl)# permit tcp 192.168.10.0 0.0.0.255 any eq ftp R1(config-ext-nacl)# permit tcp 192.168.10.0 0.0.0.255 any eq ftp-data
在哪里放置ACL
-
扩展ACL的位置应尽可能靠近要过滤的流量源。这样,可以在不穿越网络基础结构的情况下,在源网络附近拒绝不想要的流量。
-
标准ACL的位置应尽可能靠近目的地。如果将标准ACL放在流量的源头,则无论流量的目的地是什么,都会基于给定的源地址发生“允许”或“拒绝”。
编号标准IPv4 ACL语法
要创建编号的标准ACL,请使用以下全局配置命令:
Router(config)# access-list access-list-number {deny | permit | remark text} source [source-wildcard] [log]
使用no access-list access-list-number全局配置命令删除编号的标准ACL。
命名为标准IPv4 ACL语法
命名ACL使其更易于理解其功能。要创建命名的标准ACL,请使用以下全局配置命令:
Router(config)# ip access-list standard access-list-name
应用标准IPv4 ACL
Router(config-if) # ip access-group {access-list-number | access-list-name} {in | out}
R1(config)# access-list 10 remark ACE permits ONLY host 192.168.10.10 to the internet R1(config)# access-list 10 permit host 192.168.10.10 R1(config)# do show access-lists Standard IP access list 10 10 permit 192.168.10.10 R1(config)#
查看ACL list
R1# show run | section access-list access-list 1 deny 19.168.10.10 access-list 1 permit 192.168.10.0 0.0.0.255
R1# show access-lists Standard IP access list 1 10 deny 19.168.10.10 20 permit 192.168.10.0, wildcard bits 0.0.0.255 R1#
删除ACL list
R1(config)# no access-list 1
安全VTY访问示例
R1(config)# username ADMIN secret class R1(config)# ip access-list standard ADMIN-HOST R1(config-std-nacl)# remark This ACL secures incoming vty lines R1(config-std-nacl)# permit 192.168.10.10 R1(config-std-nacl)# deny any R1(config-std-nacl)# exit R1(config)# line vty 0 4 R1(config-line)# login local R1(config-line)# transport input telnet R1(config-line)# access-class ADMIN-HOST in R1(config-line)# end
在生产环境中,您可以将vty行设置为仅允许SSH,如示例所示。 R1(config)# line vty 0 4 R1(config-line)# login local R1(config-line)# transport input ssh R1(config-line)# access-class ADMIN-HOST in R1(config-line)# end R1#
配置扩展IPv4 ACL
要创建编号的扩展ACL,请使用以下全局配置命令:
Router(config)# access-list access-list-number {deny | permit | remark text} protocol source source-wildcard [operator [port]] destination destination-wildcard [operator [port]] [established] [log]
使用no ip access-list 扩展 访问列表名称全局配置命令删除扩展ACL。
将扩展的IPv4 ACL应用于接口的命令与用于标准IPv4 ACL的命令相同。
要从接口删除ACL,请首先输入no ip access-group interface configuration命令。要从路由器删除ACL,请使用no access-list全局配置命令。
端口关键字选项
R1(config)# access-list 100 permit ? <0-255> An IP protocol number ahp Authentication Header Protocol dvmrp dvmrp eigrp Cisco's EIGRP routing protocol esp Encapsulation Security Payload gre Cisco's GRE tunneling icmp Internet Control Message Protocol igmp Internet Gateway Message Protocol ip Any Internet Protocol ipinip IP in IP tunneling nos KA9Q NOS compatible IP over IP tunneling object-group Service object group ospf OSPF routing protocol pcp Payload Compression Protocol pim Protocol Independent Multicast tcp Transmission Control Protocol udp User Datagram Protocol R1(config)# access-list 100 permit
协议选项
R1(config)# access-list 100 permit tcp any any eq ? <0-65535> Port number bgp Border Gateway Protocol (179) chargen Character generator (19) cmd Remote commands (rcmd, 514) daytime Daytime (13) discard Discard (9) domain Domain Name Service (53) echo Echo (7) exec Exec (rsh, 512) finger Finger (79) ftp File Transfer Protocol (21) ftp-data FTP data connections (20) gopher Gopher (70) hostname NIC hostname server (101) ident Ident Protocol (113) irc Internet Relay Chat (194) klogin Kerberos login (543) kshell Kerberos shell (544) login Login (rlogin, 513) lpd Printer service (515) msrpc MS Remote Procedure Call (135) nntp Network News Transport Protocol (119) onep-plain Onep Cleartext (15001) onep-tls Onep TLS (15002) pim-auto-rp PIM Auto-RP (496) pop2 Post Office Protocol v2 (109) pop3 Post Office Protocol v3 (110) smtp Simple Mail Transport Protocol (25) sunrpc Sun Remote Procedure Call (111) syslog Syslog (514) tacacs TAC Access Control System (49) talk Talk (517) telnet Telnet (23) time Time (37) uucp Unix-to-Unix Copy Program (540) whois Nicname (43) www World Wide Web (HTTP, 80)
命名为扩展的IPv4 ACL语法
Router(config)# ip access-list extended access-list-name
- 路由交换笔记(28)--ACL-NAT-VLAN-DHCP综合实验配置
- CCNA2.0笔记_ACL
- 学习笔记七(用户、组和权限,acl,chmod,chattr,lasttr,setfacl,umask,chgrp,chown,groupadd,groupmod,useradd,usermod)
- cisco 访问控制列表ACL笔记
- LINUX ACL 学习笔记
- zookeeper 学习 客户端Acl操作笔记
- LinuxCast学习笔记二十三:ACL
- Windows安全机制学习笔记(五)-枚举文件ACL
- CCNA 学习笔记(八)--交换知识(ACL)
- “TI门外汉”网路知识笔记十一 访问控制列表ACL(1标准访问列表)
- Windows安全机制学习笔记(六)-修改文件ACL
- 学习Linux 《鸟哥的Linux私房菜 基础学习篇(第三版)》--第14章 Linux账号管理和ACL权限设定1。 笔记
- 访问控制列表(ACL)学习笔记
- linux之ACL权限学习笔记
- Linux ACL 学习笔记
- CCNA学习笔记-ACL
- ZooKeeper 笔记(5) ACL(Access Control List)访问控制列表
- CCNA学习笔记之ACL
- 学习笔记:ACL详解