1、DZ010024 ACL&NAT原理及配置,ISSUE 1.0,Page 1,学习完本课程,您应该能够:理解访问控制列表的基本原理掌握标准和扩展访问控制列表的配置方法掌握NAT基本工作原理掌握NE80/40产品NAT的实现,目 标,Page 2,第1章访问控制列表原理与配置第2章地址转换原理与配置第3章 NE80/40产品NAT的实现,内容介绍,Page 3,IP包过滤技术介绍,对路由器需要转发的数据包,先获取包头信息,然后和设定的规则进行比较,根据比较的结果对数据包进行转发或者丢弃。而实现包过滤的核心技术是访问控制列表。,Internet,公司总部,内部网络,未授权用户,办事处,Page 4
2、,访问控制列表的作用,访问控制列表可以用于防火墙;访问控制列表可以用于QoS(Quality of Service),对数据流量进行控制;在DCC中,访问控制列表还可用来规定触发拨号的条件;访问控制列表还可以用于地址转换;在配置路由策略时,可以利用访问控制列表来作路由信息的过滤。,Page 5,访问控制列表是什么?,一个IP数据包如下图所示(图中IP所承载的上层协议为TCP/UDP):,Page 6,如何标识访问控制列表?,利用数字标识访问控制列表利用数字范围标识访问控制列表的种类,Page 7,标准访问控制列表,标准访问控制列表只使用源地址描述数据,表明是允许还是拒绝。,Page 8,标准访
3、问控制列表的配置,配置标准访问列表的命令格式如下:acl acl-number match-order auto | config rule normal | special permit | deny source source-addr source-wildcard | any ,怎样利用 IP 地址 和 反掩码wildcard-mask 来表示一个网段?,Page 9,如何使用反掩码,反掩码和子网掩码相似,但写法不同:0表示需要比较1表示忽略比较反掩码和IP地址结合使用,可以描述一个地址范围。,Page 10,扩展访问控制列表,扩展访问控制列表使用除源地址外更多的信息描述数据包,表明是
4、允许还是拒绝。,路由器,Page 11,扩展访问控制列表的配置命令,配置TCP/UDP协议的扩展访问列表:rule normal | special permit | deny tcp | udp source source-addr source-wildcard | any source-port operator port1 port2 destination dest-addr dest- wildcard | any destination-port operator port1 port2 logging配置ICMP协议的扩展访问列表:rule normal | special p
5、ermit | deny icmp source source-addr source-wildcard | any destination dest-addr dest- wildcard | any icmp-type icmp-type icmp-code logging配置其它协议的扩展访问列表:rule normal | special permit | deny ip | ospf | igmp | gre source source-addr source-wildcard | any destination dest-addr dest- wildcard | any logg
6、ing,Page 12,扩展访问控制列表操作符的含义,Page 13,扩展访问控制列表举例,rule deny icmp source 10.1.0.0 0.0.255.255 destination any icmp-type host-redirect,rule deny tcp source 129.9.0.0 0.0.255.255 destination 202.38.160.0 0.0.0.255 destination-port equal www logging,129.9.0.0/16,TCP报文,202.38.160.0/24,WWW 端口,问题: 下面这条访问控制列表表示
7、什么意思?rule deny udp source 129.9.8.0 0.0.0.255 destination 202.38.160.0 0.0.0.255 destination-port greater-than 128,Page 14,如何使用访问控制列表,防火墙配置常见步骤:启用防火墙定义访问控制列表将访问控制列表应用到接口上,Internet,公司总部网络,启用防火墙,将访问控制列表应用到接口上,Page 15,防火墙的属性配置命令,打开或者关闭防火墙firewall enable | disable 设置防火墙的缺省过滤模式firewall default permit|den
8、y 显示防火墙的状态信息display firewall,Page 16,在接口上应用访问控制列表,将访问控制列表应用到接口上指明在接口上是OUT还是IN方向在接口视图下配置: firewall packet-filter acl-number inbound | outbound,Ethernet0,Serial0,Page 17,基于时间段的包过滤,“特殊时间段内应用特殊的规则”,Internet,上班时间(上午8:00 下午5:00)只能访问特定的站点;其余时间可以访问其他站点,Page 18,时间段的配置命令,time range 命令timerange enable | disabl
9、e settr 命令settr begin-time end-time begin-time end-time . undo settr显示 isintr 命令display isintr显示 timerange 命令display timerange,Page 19,日志功能的配置命令,日志功能是允许在特定的主机上记录下来防火墙的操作开启日志系统 info-center enable配置日志主机地址等相关属性 info-center loghost loghost-number ip-address port 显示日志配置信息。 display debugging,在华为Quidway路由器
10、上提供了非常丰富的日志功能,详细内容请参考配置手册,Page 20,访问控制列表的组合,一条访问列表可以由多条规则组成,对于这些规则,有两种匹配顺序:auto和config。规则冲突时,若匹配顺序为auto(深度优先),描述的地址范围越小的规则,将会优先考虑。深度的判断要依靠通配比较位和IP地址结合比较rule deny 202.38.0.0 0.0.255.255 rule permit 202.38.160.0 0.0.0.255 两条规则结合则表示禁止一个大网段 (202.38.0.0)上的主机但允许其中的一小部分主 机(202.38.160.0)的访问。规则冲突时,若匹配顺序为conf
11、ig,先配置的规则会被优先考虑。,Page 21,第1章访问控制列表原理与配置第2章地址转换原理与配置第3章 NE80/40产品NAT的实现,内容介绍,Page 22,NAT基本概念,NAT(Network Address Translator)网络地址转换,即改变IP报文中的源或目的地址的一种处理方式;使一个局域网中的多台主机使用少数的合法地址访问外部资源,也可以按照要求设定内部的WWW、FTP、TELNET的服务提供给外部网络使用;有效的隐藏了内部局域网的主机IP地址,起到了安全保护的作用。,Page 23,公有地址和私有地址,公有地址和私有地址私有地址是指内部网络(局域网内部)的主机地址
12、,而公有地址是局域网的外部地址(在因特网上的全球唯一的IP地址)。因特网地址分配组织规定以下的三个网络地址保留用做私有地址: 10.0.0.0 - 10.255.255.255 172.16.0.0 - 172.31.255.255 192.168.0.0 - 192.168.255.255,Page 24,地址池,地址池地址池是由一些外部地址(全球唯一的IP地址)组合而成的,我们称这样的一个地址集合为地址池。在内部网络的数据包通过地址转换达到外部网络时,将会选择地址池中的某个地址作为转换后的源地址,这样可以有效利用用户的外部地址,提高内部网络访问外部网络的能力。,Page 25,访问控制列表
13、,访问控制列表访问列表是由ACCESS-LIST命令生成的,它依据IP数据包报头以及它承载的上层协议数据包头的格式定义了一定的规则,可以表示允许或者是禁止具有某些特征(包头数据可以描述的)的数据包,地址转换按照这样的规则判定哪些包是被允许转换或者是禁止转换,这样可以禁止一些内部的主机访问外部网络,提高一些网络的安全性问题。有关的详细概念可以参考防火墙中的有关内容。,Page 26,转换关联,转换关联转换关联就是将一个地址池和一个访问列表关联起来,这种关联指定了“具有某些特征的IP报文”是使用“这样的地址池中的地址”,而另一些可能是使用另外一个地址池中的地址。在地址转换时,是根据这样的对应进行地
14、址转换的。当一个内部网络的数据包文发往外部网络时,首先根据访问列表判定是否是允许的数据包,然后根据转换的关联找到于之相对应的地址池,我们就可以把源地址转换成这个地址池中的某一个地址,完成地址转换。,Page 27,内部服务器映射表,内部服务器映射表内部服务器映射表是由NAT SERVER命令配置的,允许用户依照自己的需要提供内部服务。在转换时,根据用户的配置查找外部数据包的目的地址,如果是访问内部的服务器,则转换成相应的内部服务器的目的地址和端口,达到访问内部服务器的目的。还原时对源地址进行查找,判断是否是从内部服务器出去的报文,如果是将源地址转换成相应的外部地址。,Page 28,NAT在系
15、统中的位置,NAT在系统中的位置,Page 29,在IP层出口处调用NAT,在IP层的出口处调用NAT,Page 30,在IP层的入口处调用NAT,在IP层的入口处调用NAT,Page 31,透明的地址分配,透明的地址分配静态的地址分配指一个特定的主机使用固定的地址访问外部的网络。动态的地址分配是指NAT在一些地址中挑选一个地址,做为内部网络的主机访问外部网络的IP地址。无论是那种,地址的分配应该对用户来说是透明的。,Page 32,NAT的基本工作方式,NAT的基本工作方式:NAT一对一的地址转换PAT多对一的地址转换NPAT多对多的地址转换,Page 33,NAT方式,NAT方式,Page
16、 34,NAT方式(续),NAT方式在出方向上转换IP报文头中的源IP地址,而不对端口进行转换。在私有网络地址和外部网络地址之间建立一对一映射,实现比较简单只转换IP报文头中的IP地址,所以适用于所有IP报文转换,Page 35,PAT方式,PAT方式(10.0.0.10: 1001 - 200.0.0.66: 23) - (100.100.100.100:12964 - 200.0.0.66: 23) (200.0.0.66: 23 - 100.100.100.100:12964) - (200.0.0.66: 23 - 10.0.0.10: 1001),Page 36,PAT方式(续),P
17、AT方式PAT(Port Address Translation)方式的地址转换利用了TCP/UDP协议的端口号,进行地址转换。PAT方式的地址转换是采用了“地址端口”的映射方式,因此可以使内部局域网的许多主机共享一个IP地址访问Internet。在私有网络地址和外部网络地址之间建立多对一映射。不同的内部网地址,转换时采用相同的公网地址,并依靠不同的端口号来区分每一个内部网主机。,Page 37,NPAT方式,NPAT方式( 10.0.0.10: 1001 - 200.0.0.66: 23) - (100.100.100.100:12964 - 200.0.0.66: 23) (10.0.0.
18、11:2001 - 200.0.0.67: 21) -(100.100.100.101.12987 - 200.0.0.67: 21) (200.0.0.66: 23 - 100.100.100.100:12964) - (200.0.0.66: 23 - 10.0.0.10: 1001) (200.0.0.67: 21 - 100.100.100.101:12987) -(200.0.0.67: 21 - 10.0.0.11:2001),Page 38,NPAT方式(续),NPAT方式NPAT(Nat & Port Address Translation)方式的地址转换也是利用了TCP/UD
19、P协议的端口号,进行地址转换。私网地址和公网地址之间建立了多对多的映射关系。NPAT方式也是采用“地址端口”的映射关系,因此可以使内部局域网的多个主机共享多个IP地址访问Internet。,Page 39,内部服务器,内部服务器内部服务器是一种反相的地址转换。地址转换屏蔽了内部网络中的主机,而内部服务器可以提供外部网络访问内部网络的服务。可以配置WWW、FTP、Telnet等服务。内部服务器映射表是由NAT SERVER命令配置的,在转换时,根据用户的配置查找外部数据包的目的地址,如果是访问内部的服务器,则转换成相应的内部服务器的目的地址和端口,达到访问内部服务器的目的。还原时对源地址进行查找
20、,判断是否是从内部服务器出去的报文,如果是将源地址转换成相应的外部地址。,Page 40,内部服务器(续),内部服务器,Page 41,利用ACL控制地址转换,利用ACL控制地址转换,Page 42,支持特殊协议(ALG),支持特殊协议(ALG应用程序网关)地址转换改变了IP数据包头的IP地址信息,如果数据报文的载荷中含有地址信息,地址转换就需要特殊处理,除了改变IP包头的地址信息以外还需要改变数据报文中载荷中的地址信息。比较典型的应用是FTP目前VRP NAT平台支持FTP、Radius、L2tp、PPTP、CMC几种特殊的协议。以及后来支持的H.323、SMTP、DNS等。,Page 43
21、,支持特殊协议举例,以FTP ALG为例在TCP的应用FTP中,包含两种连接:控制连接(会话)、数据连接(传输)。其中控制连接是用大家都熟悉的21端口的TCP连接。数据连接却是由客户端“发起”的,它通过控制连接“通知”服务器它已经初始化完的端口,FTP服务器通过20端口(默认情况)将数据传送到客户端。,Page 44,支持特殊协议举例(续),以FTP ALG为例(续):在通知服务器的时候,会用到“PORT命令”,其中在这次TCP连接的数据中是这样的:“PORT 10,110,1,2,13,23AD”(表示,地址=10.110.1.2),于是服务器就可以知道客户端的数据连接的地址和端口了。在地址
22、转换的过程中,对于PORT命令,我们除了改变IP地址以及端口信息,同时必须改变相应TCP中的数据,这样才可以保证使FTP服务器端可以把数据发送到正确的客户端。这样,有可能会使TCP数据包的长度发生变化,所以对于PORT命令还需要对TCP数据头中的序号(SEQUENCE NUMBER)进行调整。,Page 45,NAT地址转换的DNS运用,NAT地址转换的DNS运用DNS服务器处于私网中DNS服务器处于公网中,Page 46,DNS和内部服务器使用私网地址,DNS和内部服务器使用私网地址由于内部www服务器和DNS服务器都在一个私网内,这样,当内部DNS进行为内部服务器进行域名到IP地址的转换时
23、,会得到一个内部网的IP地址,然后DNS将这个内部地址返回给外部要访问的内部服务器的主机。而这个地址由于是私网地址,所以外部网访问不到。,Page 47,DNS和内部服务器使用私网地址,DNS在公网上,内部主机无法使用域名访问内部服务器当内部pc通过域名访问时,会到外部的DNS上请求IP地址,由于DNS是在外部,所以它会返回一个公网的地址或找不到地址。这样导致内部PC通过域名访问时,得到是个外部的地址或者得不到地址,导致内部用户不能正常访问内部服务器。,Qusetion:有什么好的方法可以解决DNS问题?,Page 48,以太网口支持地址池,以太网口支持地址池在以太网环境中,如果地址池中的地址
24、与接口的地址在不同的网段上,那么可以通过添加路由的方式来解决。而如果在同一个网段上,则对方不会缺省的将报文发送到此设备上,因为对方发现这是一个同网段的地址,会发送ARP请求,如果得不到响应,将认为这个地址不存在,当然报文将无法到达本端。因此需要对以太网接口做特殊处理,使得当地址池中的地址和接口的地址在同一个网段也可以支持。,Page 49,以太网口支持地址池(续),以太网口支持地址池(续)如果一个ARP请求报请求的地址不是以太网接口的IP地址,ARP模块将这个ARP请求丢弃,现在NAT模块提供一个函数,根据地址、接口判断这个地址是否是在这个接口上的一个地址池中的地址。如果是,告诉ARP对这个I
25、P地址发送ARP应答,MAC地址就是这个以太网接口的MAC地址。,Page 50,多个方向上负载分担,支持多个方向上负载分担应用,Page 51,NAT基本工作原理小结,地址转换的优点:地址转换可以使内部网络用户方便的访问Internet。地址转换可以使内部局域网的许多主机共享一个IP地址上网。地址转换可以屏蔽内部网络的用户,提高内部网络的安全性。地址转换同样可以提供给外部网络WWW、FTP、Telnet服务。,Page 52,NAT基本工作原理小结,地址转换的缺点:地址转换对于报文内容中含有有用的地址信息的情况很难处理。地址转换不能处理IP报头加密的情况。地址转换由于隐藏了内部主机地址,有时
26、候会使网络调试变得复杂。影响报文转发的效率。无法确定源地址。因为同样的内部地址在不同时刻的外部地址是不一样的,所以如果从内部网络攻击外部网络,将造成定位攻击源的困难。,Page 53,NAT基本工作原理小结,NAT地址转换的改进:为满足公安部以及一些企事业单位的需求,对NAT流(FLOW)信息进行日志记录,通过日志信息了解NAT转换前的地址信息。用户日志只在NAT的出方向进行日志记录,根据报文的源IP地址、转换后的源IP地址、目的IP地址、源端口、转换后的源端口、目的端口、协议号等7元组来标识一条流,并生成该NAT流的日志记录。根据这些日志信息进行分析查询,可以方便地追踪一些非法活动以及不正当的操作等,提高网络设备的可用性和安全性。,