网络安全(5)_访问控制列表ACL

ops/2024/12/24 4:34:19/

6. 访问控制列表ACL

6.1 标准访问控制列表

(1)标准ACL

  ①标准ACL是基于IP数据包的源IP地址作为转发或是拒绝的条件。即,所有的条件都是基于源IP地址的。

  ②基本不允许或拒绝整个协议组。它不区分IP流量类型。如Telnet、UDP等服务。

(2)实战:只允许部分计算机访问Internet

  ①目标: 在Router0上定义标准ACL,只允许市场部(PC7例外)和财务部的计算机能够访问Internet。而服务器组中的计算机拒绝访问Internet

  ②在Router0的S3/0接口的出站访问控制

复制代码

Router>en
Router#config t               //进入全局配置模式
Router(config)#access-list ? <1-99>     IP standard access list  //标准ACL的编号范围是1-99<100-199>  IP extended access list  //扩展ACL的编号范围是100-199//1. 在Router0上创建标准ACL,列表编号为10(可以是1-99之间的任何值)。
//  A.允许192.168.2.0/24、192.168.1.0/24两个网段的数据包通过,注意使用
//    的是反转掩码
//  B.控制列表的any与反转掩码0.0.0.0等价
//  C.路由器在应用访问控制列表的规则时顺序很重要,它会从上到下检查,如
//    果匹配就不再检查ACL后面的设置。其原则是更加具体的地址放最前面。因
//    此被拒绝的主机要放前面,允许的放后面。ACL的最后一条会默认为拒绝所有!
//  D.删除某个10号列表:Router(config)#no access-list 10
Router(config)#access-list 10 deny host 192.168.2.2         //第1条,要先写!
Router(config)#access-list 10 permit 192.168.2.0 0.0.0.255  //第2条
Router(config)#access-list 10 permit 192.168.1.0 0.0.0.255  //第3条
Router(config)#exitRouter#show access-list 10  //查看ACL的10号列表
Standard IP access list 10deny host 192.168.2.2         //第1条permit 192.168.2.0 0.0.0.255  //第2条permit 192.168.1.0 0.0.0.255  //第3条
Router(config)#access-list 10 permit 192.168.2.0 0.0.0.255  
Router(config)#access-list 10 permit 192.168.1.0 0.0.0.255//2. 将ACL10绑定到Router0的S3/0出口
Router(config)#interface serial 3/0
Router(config-if)#ip access-group 10 ?in   inbound packets                    //in 表示进入接口时检查out  outbound packets                   //out 表示出接口时检查
Router(config-if)#ip access-group 10 out  //将列表绑定到S3/0出口//取消绑定:no ip access-group 10 out
Router(config-if)#

复制代码

  ③测试,分别从PC3、PC4、PC7和服务器组的ftp主机去ping 10.0.0.2。会发现PC3、PC4是会通的,但PC7和ftp主机ping不通。可见ACL列表己经完全起作用了。

6.2 扩展访问控制列表

(1)扩展ACL

  ①基于IP数据包的源地址、目标地址、协议和端口这些条件来决定是否转发数据包。

  ②比标准ACL的控制粒度更细。

  ③扩展ACL的语法:

    access-list 编号{permit | deny} {TCP | UDP} 源地址 目标地址 eq 目标端口

    access-list 编号{permit | deny} {IP | ICMP} 源地址 目标地址  //没目标端口!

【说明】如果协议是IP或ICMP,则后面没有目标端口;如果允许IP协议,就等同于允了所有TCP、UDP以及ICMP协议的流量

(2)实验环境:

  ①目标:在Router0定义扩展ACL,使得市场部能访问Internet,财务部只能访问Internet上的Web服务器。服务器组中的计算机能ping通Internet中任何计算机

  ②路由器上设置ACL

复制代码

//1. 在Router0上创建扩展ACL
Router#conf t
Router(config)#access-list 101 permit ip 192.168.2.0 0.0.0.255 any //市场部允许访问Internet
Router(config)#access-list 101 permit tcp 192.168.1.0 0.0.0.255 10.0.0.0 0.255.255.255 eq ?<0-65535>  Port numberftp        File Transfer Protocol (21)pop3       Post Office Protocol v3 (110)smtp       Simple Mail Transport Protocol (25)telnet     Telnet (23)www        World Wide Web (HTTP, 80)          //eq后面可以是端口或应用层协议名称!
//财务部计算机只允许访问10.0.0.0/8网段的Web服务器
Router(config)#access-list 101 permit tcp 192.168.1.0 0.0.0.255 10.0.0.0 0.255.255.255 eq 80
//服务器组的计算机只能ping internet的计算机
Router(config)#access-list 101 permit icmp 192.168.0.0 0.0.0.255 any//2. 将扩展ACL绑定到Router0的S3/0接口
Router(config)#interface serial 3/0
Router(config-if)#ip access-gr
Router(config-if)#ip access-group 101 out
Router(config-if)#exit

复制代码

  ③验证扩展ACL。市场部的PC7能ping通Internet上的任何计算机(包括访问WebServer的网页)。财务部的PC2不能ping通Internet上的任何计算机,但能访问WebServer网站。服务器组的计算机能ping通Internet上任何计算机,但不能访问WebServer。

6.3 使用ACL保护路由

(1)保护路由器安全

  ①路由器一般都开启telnet功能,以便远程管理。

  ②路由器的任一接口都允许telnet,不可能为每个接口的入口都绑定ACL,可以使用标准ACL来控制访问VTY线路

(2)实战:使用ACL保护路由器安全(要事先设置Router的telnet密码和enable密码)

  ①目标:只允许ITG部门的计算机能够telnet中路由器Router0

  ②在Router0上创建标准ACL,并绑定到VTY线路。

Router#conf t
Router(config)#access-list 12 permit 192.168.1.0 0.0.0.255 //定义ACL,只允许192.168.1.0/24网段
Router(config)#line vty 0 15  //进入VTY虚接口,0和15分别表示起始和结束的vty的0-15号接口。
Router(config-line)#access-class 12 in  //将编号为12的ACL绑定到vty
Router(config-line)#

  ③验证:在PC7上telnet 192.168.2.1会失败。但PC3上telnet 192.168.1.1会成功,只要输入正确的telnet密码和enable密码。

6.4 访问控制列表的位置

(1)标准ACL:尽可能靠近目的地址的位置。这是因为我们并不真正的要在自己的网络内使用表内的控制规则。不能将标准ACL放置在靠近源主机的位置,因为这样会过滤基于源地址的流量,而导致不能转发任何流量。

(2)扩展ACL:尽可能放置在靠近源地址的位置。它可以过滤每个特定的地址和协议,所以我们不希望流量穿过整个网络后再被拒绝,它可在使用有限的带宽之前过滤掉此流量。


http://www.ppmy.cn/ops/144475.html

相关文章

CPU性能优化--函数分组

热点函数可以被分组到一起以进一步提升CPU前端缓存的利用率&#xff0c;当热点函数被分组在一起时候&#xff0c;他们可能会共用相同的缓存行&#xff0c;这会减少CPU需要读取的缓存行数量。 图44给出了被分组函数foo,bar和zoo的图形化展示。默认布局需要读取四个缓存行&#x…

CSS的样式计算过程

先看一段代码&#xff0c; a标签是什么颜色&#xff1f; <html><head><title>CSS</title><style>.wrapper {color: red;}</style></head><body><div class"wrapper"><a href"#">我是一个a标…

Docker 安装 禅道-21.2版本-外部数据库模式

Docker 安装系列 1、拉取最新版本&#xff08;zentao 21.2&#xff09; [rootTseng ~]# docker pull hub.zentao.net/app/zentao Using default tag: latest latest: Pulling from app/zentao 55ab1b300d4b: Pull complete 6b5749e5ef1d: Pull complete bdccb03403c1: Pul…

Flink SQL 从一个SOURCE 写入多个Sink端实例

一. 背景 FLINK 任务从一个数据源读取数据, 写入多个sink端. 二. 官方实例 写入多个Sink语句时&#xff0c;需要以BEGIN STATEMENT SET;开头&#xff0c;以END;结尾。--源表 CREATE TEMPORARY TABLE datagen_source (name VARCHAR,score BIGINT ) WITH (connector datagen …

linux zip unzip 命令的使用

在 Linux 系统中&#xff0c;zip 和 unzip 命令用于创建和解压缩 ZIP 文件。这是非常常见的文件管理操作。以下是它们的具体用法&#xff1a; 1. zip 命令 zip 用于压缩文件或目录为 .zip 格式。 基本语法 zip [选项] 压缩包名称.zip 文件或目录常见示例 1.1 压缩单个文件…

数据分析和AI丨知识图谱,AI革命中数据集成和模型构建的关键推动者

人工智能&#xff08;AI&#xff09;已经吸引了数据科学家、技术领导者以及任何使用数据进行商业决策者的兴趣。绝大多数企业都希望利用人工智能技术来增强洞察力和生产力&#xff0c;而对于这些企业而言&#xff0c;数据集的质量差成为了最主要的障碍。 数据源需要进行清洗且明…

电脑使用CDR时弹出错误“计算机丢失mfc140u.dll”是什么原因?“计算机丢失mfc140u.dll”要怎么解决?

电脑使用CDR时弹出“计算机丢失mfc140u.dll”错误&#xff1a;原因与解决方案 在日常电脑使用中&#xff0c;我们时常会遇到各种系统报错和文件丢失问题。特别是当我们使用某些特定软件&#xff0c;如CorelDRAW&#xff08;简称CDR&#xff09;时&#xff0c;可能会遇到“计算…

模拟法简介(蓝桥杯)

模拟法&#xff0c;顾名思义&#xff0c;就是利用计算机模拟问题的求解过程&#xff0c;从而得到问题的解。模拟法由于简单&#xff0c;因此又被称为“不是算法的算法”&#xff01; 模拟法是学习算法的基础&#xff0c;通过模拟可以学习编程的各类技巧&#xff0c;提升初学者建…