工程实验还要完善
一 访问控制列表背景
需要针对数据流量或者报文进行一些过滤的时候,需要一个抓取要过滤的工具。类似于过滤石灰粉和石子的过程,那么我们是需要一个滤网或者其他的过滤工具来进行筛选。经过筛选获取到的石子,是丢弃还是用作其他用途,并不是过滤工具来决定的,它是取决于调用工具的时候,来判断,是否需要这些石子,或者丢弃。
ACL(访问控制列表)就提供了类似于滤网的功能,它可以精准匹配到想要抓取的报文或者流量,然后在不同的场景下,去应用ACL的功能。
它由一系列规则(即描述报文匹配条件的判断语句)组成。这些条件通常被称为五元组-分别是报文的源地址、目的地址、源端口、目的端口、端口号等。
通过ACL可以实现对网络中报文流的精确识别和控制,达到控制网络访问行为、防止网络攻击和提高网络带宽利用率的目的,从而切实保障网络环境的安全性和网络服务质量的可靠性。
1 ACL两个基本作用(也可以当作原理用)
应用在接口的ACL-----过滤数据包(原目ip地址,原目 mac, 端口 五元组)
应用在路由协议-------匹配相应的路由条目( )
NAT、IPSEC VPN、QOS-----匹配感兴趣的数据流(匹配上我设置的 数据流的)
2 ACL基本原理
当数据包从接口经过时,由于接口启用了acl, 此时路由器会对报文进行检查,然后做出相应的处理
3 ACL种类
基本acl范围:acl 2000-2999,依据数据包当中的源目ip地址匹配数据
高级acl范围:acl 3000-3999,依据数据包当中源、母的ip,源、目的端口、协议号匹配数据
注:基础acl设置在离目的地址近的地方
高级acl设置在离源地址近的地方
4 ACL命令配置步骤
子网掩码:1代表网络位,0代表主机位 配置ip地址的时候使用。连续1代表网络位
反掩码:0代表网络位,1代表主机位 路由协议(ospf协议,)。连续0代表网络位
通配符掩码:可以0与1穿插,0不可变,1可变(24位固定不变,后8位0-255)0.0.0.255
5 ACL的组成:
由多条不同的规则组成的,这些规则组成了一个滤网的功能,通过permit/deny的动作,来决定是抓取还是不抓取。
每条语句就是一条规则,规则就是处理的动作
rule premit (deny)source 1.1.1.1 ## 添加规则,允许或者拒绝 源地址为1.1.1.1的地址
traffic-filter oubound(inbound) ACL 2000 ##在入口或者出口调用acl2000的规则
rule deny tcp source 192.168.1.0 0 destination 192.168.2.1 0 destination-port eq www
案例诠释
acl 2000
#新建表格, 将你设置的 过滤条件放入 这个表格
rule 5 permit | deny source 匹配的条件(ip地址) 通配符掩码
上面是ACL的一条规则,rule是规则关键字,后面的数字5是规则编号,这个编号在配置的时候可以指明也可以不指明,但是一条规则就是一个编号,编号不能重复。
1 如果不指明编号,默认第一条规则的编号是5,后面每增加一条规则,编号就会加5,也就是说默认的编号是从5开始,步长是5,即每增加一个编号,编号就会在上一条规则编号的基础上加5。
2 之所以留出编号的间隔,是为了能够适应各种应用场景,方便在规则之间,插入新的规则。ACL在进行匹配的时候,是根据编号的顺序,从小到大一条条往下进行的,一旦由匹配到的规则,则不会继续向下匹配,如果匹配到最后都没有,则命中默认规则,默认是deny所有。
3 规则编号的默认步长可以修改,修改了步长以后,所有的规则根据新的步长重新自动排号,为新步长的整倍数,顺序不会改变。
- ACL有两个动作,permit和deny,permit是允许通过;deny是不允许通过。
- source是指根据源来进行过滤的,是过滤的条件,当然也可以有其他的一些过滤条件。后面跟的是匹配的条件(ip地址)和通配符掩码(作用:精准匹配要控制的范围 )
通配符为0则表示不可变,为1表示可变。举例如下:
ACL的匹配位置
实验目的:
借用ACL告诉路由器拒绝或接受那些数据包;pc14不能访问服务器,pc13可以访问服务器
基本acl:
acl 2000: 基本acl列表
rule deny source 192.168.1.0 0.0.0.255: (默认编号5)拒绝来自192.168.1.0网段的流量
traffic-filter outbound acl 2000: 数据流向
rule deny tcp source 192.168.1.0 0 destination 192.168.2.1 0 destination-port eq www: 拒绝192.168.1.0网段去访问192.168.2.1的TCP访问80端口(www web服务)
注:在接口下调用acl 分为两个方向
inbound方向--------当接口收到数据包时执行ACL
outbound方向-------当设备从特定接口向外发送数据时执行ACL
①看拓扑图
②给主机pc15配置网段
②配置路由器接口地址并检测PC14、PC15是否都可以访问server
③测试通信
④在路由器上设置ACL ,并在g/0/01口设置不允许192.168.1.1访问192.168.3.1服务器。 如下图可以看出配置完ACL后PC14不能访问server,PC13依然可以访问server
二 NAT:网络地址转换
背景
IPv4地址枯竭已经成为制约网络发展的瓶颈。尽管IPv6可以从根本上解决IPv4地址空间不足的问题,但目前众多的网络设备和网络应用仍是基于IPv4的,因此在IPv6广泛应用之前,一些过渡技术的使用是解决这个问题的主要技术手段。
NAT主要用于实现位于内部网络的主机访问外部网络的功能。当局域网内的主机需要访问外部网络时,通过NAT技术可以将其私网地址转换为公网地址,并且多个私网用户可以共用一个公网地址,这样既可保证网络互通,又节省了公网地址。
作用:
实现内网地址和公网地址的互相访问
途径:
应用在企业出口路由器上,从内网出去时将源地址转换为企业公网ip,从公网中回来时将目的地址及公网地址转为对应的内网地址。
原理:
将内网地址和端口号 转换成合法的 公网地址与端口号,建立一个会话,与内外网主机 进行通信
一句话:让公司中的所有人使用一个公网地址上网
NAT分类
静态NAT:
私网地址和公网地址一对一映射,不节省公网IP地址;NAT表条目是通过手动配置的方式添加进去的
局限性 :
需要每一个私网ip对应一个公网ip,所以需要公网ip比较多。(不如直接买公网IP)
动态NAT:
将公网ip划出一个公网ip池,当内网地址访问外网时随机分配一个公网对应ip,访 问完毕后回收公网ip。
静态nat配置:
①进入企业出口路由器 static nat enable 开启静态nat
②nat static global 1.1.1. 1 inside 2.2.2.2将 静态 nat私网地址1.1.1.1对应公网2.2.2.2
动态nat配置:
①nat address-group 1 200.1.1.10 200.1.1.15 #建立动态nat地址池
②acl number 2000 #创建acl 2000
③rule 5 permit source 192.168.1.0 0.0.0.255 #设定规则来自192.168.1.0网段用户允许通过
④int g0/0/1 #进入g0/0/1端口
⑤nat outbound 2000 address-group 1 no-pat #将规则添加在出口
NAT功能
不仅解决了IP地址不足问题,而且还能够有效的避免来自网络外部的入侵,隐藏并保护网络内部的计算机。
①宽带分享:这是NAT主机最大的功能
②安全防护:NAT之内的PC端到internet上面时,他所显示的IP是NAT主机的公网IP,所以客户端段的PC就具有一定程度的安全性,外界在进行portscan(端口扫描)的时候,就侦测不到源客户端的pc。
优点:节省公有合法IP地址,处理地址重叠、增强灵活性、安全性
缺点:延迟增大、配置和维护的复制性,不支持某些应用(比如VPN)
NATPT
NAT Server----内网服务器对外提供服务,针对目的ip和目的端口映射
内网服务器的相应端口映射成路由器公网ip地址的相应端口
三easy-ip实验
①实验目的PC14和PC13通过企业路由器后可以访问外网,运营商路由器不可操作,只能在企业的出口路由器做nat,使得PC1和PC2通过出口路由器时转化为出口地址且端口号不一样用来识别是谁发送的数据。静态NAT
拓扑图
1、配置PC1和PC2地址,如下图
② 配置路由器接口地址
③在企业出口路由器R1上添加ACL规则并在出口上应用nat,以此达到PC1和PC2到达出口路由器地址nat成出口地址的目的访问外网。
④PC1和PC2是否可以通过nat访问外网,可以ping通。
四静态NAT将一个私有地址和一个公网地址进行关联