思科培训 200-125 CCNA v3.0。 第 27 天。ACL 简介。 第1部分

今天我们将开始学习ACL访问控制列表,这个主题将需要2个视频课程。 我们将了解标准 ACL 的配置,在下一个视频教程中我将讨论扩展列表。

在本课中,我们将讨论 3 个主题。 第一个是 ACL 是什么,第二个是标准访问列表和扩展访问列表之间的区别,在本课结束时,作为实验,我们将研究设置标准 ACL 并解决可能的问题。
那么什么是ACL? 如果您从第一节视频课程开始学习了该课程,那么您就会记得我们如何组织各种网络设备之间的通信。

思科培训 200-125 CCNA v3.0。 第 27 天。ACL 简介。 第1部分

我们还研究了各种协议上的静态路由,以获得组织设备和网络之间通信的技能。 我们现在已经到了学习阶段,我们应该关注确保流量控制,即防止“坏人”或未经授权的用户渗透网络。 例如,这可能涉及 SALES 销售部门的人员,如下图所示。 这里我们还展示了财务部门ACCOUNTS、管理部门MANAGEMENT和服务器机房SERVER ROOM。
因此,销售部门可能有一百名员工,我们不希望他们中的任何人能够通过网络到达服务器机房。 使用 Laptop2 计算机工作的销售经理是一个例外 - 他可以访问服务器机房。 在 Laptop3 上工作的新员工不应具有此类访问权限,也就是说,如果来自他的计算机的流量到达路由器 R2,则应将其丢弃。

ACL的作用是根据指定的过滤参数对流量进行过滤。 它们包括源 IP 地址、目标 IP 地址、协议、端口数和其他参数,通过这些参数,您可以识别流量并对其采取一些操作。

因此,ACL是OSI模型的第3层过滤机制。 这意味着这种机制被用在路由器中。 过滤的主要标准是数据流的识别。 例如,如果我们想阻止拥有Laptop3计算机的人访问服务器,首先我们必须识别他的流量。 该流量通过网络设备相应接口向Laptop-Switch2-R2-R1-Switch1-Server1方向移动,而路由器的G0/0接口与之无关。

思科培训 200-125 CCNA v3.0。 第 27 天。ACL 简介。 第1部分

为了识别流量,我们必须识别其路径。 完成此操作后,我们可以决定需要在何处安装过滤器。 不用担心过滤器本身,我们将在下一课中讨论它们,现在我们需要了解过滤器应该应用于哪个接口的原理。

如果您查看路由器,您会发现每次流量移动时,都会有一个数据流流入的接口,以及该数据流流出的接口。

实际上有3个接口:输入接口、输出接口和路由器本身的接口。 请记住,过滤只能应用于输入或输出接口。

思科培训 200-125 CCNA v3.0。 第 27 天。ACL 简介。 第1部分

ACL的运作原理类似于一个活动的通行证,只有受邀者名单上的客人才能参加。 ACL 是用于识别流量的资格参数列表。 例如,此列表指示允许来自 IP 地址 192.168.1.10 的所有流量,并拒绝来自所有其他地址的流量。 正如我所说,这个列表可以应用于输入和输出接口。

ACL 有 2 种类型:标准 ACL 和扩展 ACL。 标准 ACL 具有从 1 到 99 或从 1300 到 1999 的标识符。这些只是列表名称,随着编号的增加,它们之间没有任何优势。 除了号码之外,您还可以将自己的名称分配给 ACL。 扩展 ACL 的编号为 100 到 199 或 2000 到 2699,并且还可能有一个名称。

在标准 ACL 中,分类基于流量的源 IP 地址。 因此,使用此类列表时,您无法限制定向到任何源的流量,只能阻止源自设备的流量。

扩展 ACL 按源 IP 地址、目标 IP 地址、使用的协议和端口号对流量进行分类。 例如,您可以仅阻止 FTP 流量或仅阻止 HTTP 流量。 今天我们将了解标准 ACL,下一个视频课程将专门讨论扩展列表。

正如我所说,ACL 是一个条件列表。 将此列表应用于路由器的传入或传出接口后,路由器会根据此列表检查流量,如果满足列表中规定的条件,则决定是允许还是拒绝此流量。 人们常常发现很难确定路由器的输入和输出接口,尽管这里并不复杂。 当我们谈论传入接口时,这意味着仅在该端口上控制传入流量,路由器不会对传出流量施加限制。 同样,如果我们谈论出口接口,这意味着所有规则将仅适用于传出流量,而该端口上的传入流量将不受限制地被接受。 例如,如果路由器有 2 个端口:f0/0 和 f0/1,则 ACL 将仅应用于进入 f0/0 接口的流量,或仅应用于源自 f0/1 接口的流量。 进入或离开接口 f0/1 的流量不会受到该列表的影响。

思科培训 200-125 CCNA v3.0。 第 27 天。ACL 简介。 第1部分

因此,不要混淆接口的传入或传出方向,这取决于具体流量的方向。 因此,在路由器检查流量是否符合 ACL 条件后,它只能做出两个决定:允许流量或拒绝流量。 例如,您可以允许发往 180.160.1.30 的流量并拒绝发往 192.168.1.10 的流量。 每个列表可以包含多个条件,但每个条件都必须允许或拒绝。

假设我们有一个列表:

禁止_______
允许 ________
允许 ________
禁止_________。

首先,路由器会检查流量是否符合第一个条件;如果不符合,则检查第二个条件。 如果流量符合第三个条件,路由器将停止检查,并且不会将其与列表中的其余条件进行比较。 它将执行“允许”操作并继续检查下一部分流量。

如果您没有为任何数据包设置规则,并且流量通过列表中的所有行而没有满足任何条件,则该列表将被破坏,因为默认情况下每个 ACL 列表均以拒绝任何命令结束 - 即丢弃任何数据包,不属于任何规则。 如果列表中至少有一条规则,则此条件生效,否则无效。 但如果第一行包含拒绝 192.168.1.30 条目,并且列表中不再包含任何条件,那么最后应该有一个命令 Permit Any,即允许除规则禁止之外的任何流量。 配置 ACL 时必须考虑到这一点,以避免出现错误。

我希望您记住创建 ASL 列表的基本规则:将标准 ASL 放置在尽可能靠近目的地(即流量接收者)的位置,并将扩展 ASL 放置在尽可能靠近源(即流量的接收者)的位置到流量的发送者。 这些是 Cisco 的建议,但在实践中,在某些情况下,将标准 ACL 放置在靠近流量源的位置更有意义。 但是,如果您在考试期间遇到有关 ACL 放置规则的问题,请遵循 Cisco 的建议并明确回答:标准更接近目的地,扩展更接近源。

现在让我们看一下标准 ACL 的语法。 路由器全局配置模式下的命令语法有两种:经典语法和现代语法。

思科培训 200-125 CCNA v3.0。 第 27 天。ACL 简介。 第1部分

经典的命令类型是 access-list <ACL 编号> <拒绝/允许> <条件>。 如果将<ACL编号>设置为1到99,设备将自动识别这是标准ACL,如果它是100到199,则它是扩展ACL。 由于在今天的课程中我们正在查看标准列表,因此我们可以使用 1 到 99 之间的任何数字。然后,我们指示如果参数符合以下条件(允许或拒绝流量)则需要应用的操作。 我们稍后会考虑该标准,因为它也用于现代语法中。

现代命令类型也用于 Rx(config) 全局配置模式,如下所示:ip access-list standard <ACL 编号/名称>。 此处可以使用 1 到 99 之间的数字或 ACL 列表的名称,例如 ACL_Networking。 此命令立即将系统置于 Rx 标准模式子命令模式 (config-std-nacl),您必须在其中输入 <deny/enable> <criteria>。 与经典团队相比,现代类型的团队具有更多优势。

在经典列表中,如果您键入 access-list 10 deny ______,然后键入另一个条件的下一个同类命令,最终会得到 100 个这样的命令,然后要更改输入的任何命令,您将需要使用命令 no access-list 10 删除整个访问列表 list 10。这将删除所有 100 个命令,因为无法编辑此列表中的任何单个命令。

在现代语法中,该命令分为两行,第一行包含列表编号。 假设您有一个列表 access-list standard 10 deny ________、access-list standard 20 deny ________ 等等,那么您有机会在它们之间插入具有其他条件的中间列表,例如 access-list standard 15 deny ________ 。

或者,您可以简单地删除 access-list standard 20 行,然后使用 access-list standard 10 和 access-list standard 30 行之间的不同参数重新键入它们。因此,有多种方法可以编辑现代 ACL 语法。

创建 ACL 时需要非常小心。 如您所知,列表是从上到下阅读的。 如果您在顶部放置一条线允许来自特定主机的流量,那么您可以在下方放置一条线禁止来自该主机所属的整个网络的流量,并且将检查这两个条件 - 流向特定主机的流量将被检查。被允许通过,并且来自该网络的所有其他主机的流量将被阻止。 因此,始终将特定条目放在列表顶部,将一般条目放在底部。

因此,在创建经典或现代 ACL 后,您必须应用它。 为此,您需要进入特定接口的设置,例如使用命令interface <type and slot>的f0/0,进入interface子命令模式并输入命令ip access-group <ACL number/名称> 。 请注意区别:编译列表时,使用访问列表,而应用它时,使用访问组。 您必须确定此列表将应用于哪个接口 - 传入接口或传出接口。 如果列表有名称,例如 Networking,则命令中会重复相同的名称以在此接口上应用列表。

现在,让我们考虑一个具体问题,并尝试使用 Packet Tracer 的网络图示例来解决它。 所以,我们有4个网络:销售部、会计部、管理部和服务器机房。

任务1:所有从销售部门、财务部门流向管理部门、机房的流量必须被阻断。 阻塞位置是路由器 R0 的接口 S1/0/2。 首先,我们必须创建一个包含以下条目的列表:

思科培训 200-125 CCNA v3.0。 第 27 天。ACL 简介。 第1部分

思科培训 200-125 CCNA v3.0。 第 27 天。ACL 简介。 第1部分

我们将该列表称为“管理和服务器安全 ACL”,缩写为 ACL Secure_Ma_And_Se。 接下来禁止来自财务部网络192.168.1.128/26的流量,禁止来自销售部网络192.168.1.0/25的流量,并允许任何其他流量。 列表末尾表明它用于路由器 R0 的出局接口 S1/0/2。 如果列表末尾没有允许任何条目,则所有其他流量都将被阻止,因为默认 ACL 始终设置为列表末尾的拒绝任何条目。

我可以将此 ACL 应用于接口 G0/0 吗? 当然可以,但这种情况下只会屏蔽来自会计部门的流量,而不会限制来自销售部门的流量。 同样,可以在G0/1接口上应用ACL,但财务部门的流量不会被阻塞。 当然,我们可以为这些接口创建两个单独的阻止列表,但将它们组合成一个列表并将其应用于路由器 R2 的输出接口或路由器 R0 的输入接口 S1/0/1 会更有效。

尽管 Cisco 规则规定标准 ACL 应尽可能靠近目的地放置,但我会将其放置在更靠近流量源的位置,因为我想阻止所有传出流量,而且将其放置在更靠近流量源的位置更有意义。源,以便该流量不会浪费两个路由器之间的网络。

我忘了告诉你标准,所以我们赶紧回去吧。 您可以指定任何作为条件 - 在这种情况下,来自任何设备和任何网络的任何流量都将被拒绝或允许。 您还可以指定主机及其标识符 - 在这种情况下,该条目将是特定设备的 IP 地址。 最后,您可以指定整个网络,例如 192.168.1.10/24。 在这种情况下,/24 将表示存在子网掩码 255.255.255.0,但无法在 ACL 中指定子网掩码的 IP 地址。 对于这种情况,ACL 有一个称为 Wildcart Mask 或“反向掩码”的概念。 因此,您必须指定 IP 地址和返回掩码。 反向掩码看起来像这样:必须从通用子网掩码中减去直接子网掩码,即从255中减去正向掩码中的八位字节值对应的数字。

思科培训 200-125 CCNA v3.0。 第 27 天。ACL 简介。 第1部分

因此,ACL中应使用参数192.168.1.10 0.0.0.255作为判断条件。

怎么运行的? 如果返回掩码八位字节中有 0,则认为该标准与子网 IP 地址的相应八位字节匹配。 如果后掩码八位字节中有数字,则不检查匹配。 因此,对于网络 192.168.1.0 和返回掩码 0.0.0.255,来自前三个八位位组等于 192.168.1 的地址的所有流量,无论第四个八位位组的值如何,都将被阻止或允许,具体取决于指定的动作。

思科培训 200-125 CCNA v3.0。 第 27 天。ACL 简介。 第1部分

使用反向蒙版很简单,我们将在下一个视频中回到 Wildcart 蒙版,以便我可以解释如何使用它。

28:50分钟


感谢您与我们在一起。 你喜欢我们的文章吗? 想看更多有趣的内容? 通过下订单或推荐给朋友来支持我们, 在我们为您发明的独特的入门级服务器模拟上,Habr 用户可享受 30% 的折扣: VPS (KVM) E5-2650 v4(6 核)10​​4GB DDR240 1GB SSD 20Gbps XNUMX 美元或如何共享服务器的全部真相? (适用于 RAID1 和 RAID10,最多 24 个内核和最多 40GB DDR4)。

戴尔R730xd便宜2倍? 只有这里 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 电视低至 199 美元 在荷兰! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - 99 美元起! 阅读 如何建设基础设施公司同级使用价值730欧元的Dell R5xd E2650-4 v9000服务器一分钱?

来源: habr.com

添加评论