HL-013 访问控制列表和地址转换 ISSUE 5.1 江西陶瓷工艺美术职业技术学院
课程目标 学习完本课程,您应该能够: 理解访问控制列表的基本原理 掌握基本和高级访问控制列表的配置方法 掌握地址转换的基本原理和配置方法
目录 访问控制列表 地址转换 访问控制列表与地址转换实例
IP包过滤技术介绍 对路由器需要转发的数据包,先获取包头信息,然后和设定的规则进行比较,根据比较的结果对数据包进行转发或者丢弃。而实现包过滤的核心技术是访问控制列表。 未授权用户 公司总部 内部网络 办事处 Internet 此页标题禁止有多级标题,更不要出现所在章节的名称。 此页标题要简练,能直接表达出本页的内容。 内容页可以除标题外的任何版式,如图、表等。 对于只授课用的胶片,文字字体可以调整,但必须统一: 一级文字为24号,二级文字为20号,三级文字为18号,四级文字为16号。 该页在授课和胶片+注释中都要使用。
访问控制列表的作用 访问控制列表可以用于防火墙; 访问控制列表可以用于QoS(Quality of Service),对数据流量进行控制; 在DCC中,访问控制列表还可用来规定触发拨号的条件; 访问控制列表还可以用于地址转换; 在配置路由策略时,可以利用访问控制列表来作路由信息的过滤。
对于TCP/UDP来说,这5个元素组成了一个TCP/UDP相关,访问控制列表就是利用这些元素定义的规则 访问控制列表的定义 一个IP数据包如下图所示(图中IP所承载的上层协议为TCP/UDP): IP报头 TCP/UDP报头 数据 协议号 源地址 目的地址 源端口 目的端口 对于TCP/UDP来说,这5个元素组成了一个TCP/UDP相关,访问控制列表就是利用这些元素定义的规则
访问控制列表的分类 按照访问控制列表的用途可以分为四类: 基本的访问控制列表(basic acl) 高级的访问控制列表(advanced acl) 基于接口的访问控制列表(interface-based acl) 基于MAC的访问控制列表(mac-based acl)
访问控制列表的标识 利用数字标识访问控制列表 利用数字范围标识访问控制列表的种类 列表的种类 数字标识的范围 基于接口的访问控制列表 1000~1999 基本的访问控制列表 2000~2999 高级的访问控制列表 3000~3999 基于MAC地址访问控制列表 4000~4999
基本访问控制列表 基本访问控制列表只使用源地址描述数据,表明是允许还是拒绝。 从202.110.10.0/24来的数据包可以通过! 从192.110.10.0/24来的数据包不能通过! 路由器
基本访问控制列表的配置 配置基本访问列表的命令格式如下: acl number acl-number [ match-order { config | auto } ] rule [ rule-id ] { permit | deny } [ source sour-addr sour-wildcard | any ] [ time-range time-name ] [ logging ] [ fragment ] [ vpn-instance vpn-instanc-name ] 怎样利用 IP 地址 和反掩码 wildcard-mask 来表示 一个网段?
反掩码的使用 反掩码和子网掩码相似,但写法不同: 反掩码和IP地址结合使用,可以描述一个地址范围。 255 3 0表示需要比较 1表示忽略比较 反掩码和IP地址结合使用,可以描述一个地址范围。 255 只比较前24位 3 只比较前22位 只比较前8位
高级访问控制列表 高级访问控制列表使用除源地址外更多的信息描述数据包,表明是允许还是拒绝。 从202.110.10.0/24来的,到179.100.17.10的,使用TCP协议,利用HTTP访问的数据包可以通过! 路由器
高级访问控制列表的配置 高级访问控制列表规则的配置命令: rule [ rule-id ] { permit | deny } protocol [ source sour-addr sour-wildcard | any ] [ destination dest-addr dest-mask | any ] [ soucre-port operator port1 [ port2 ] ] [ destination-port operator port1 [ port2 ] ] [ icmp-type { icmp-message |icmp-type icmp-code} ] [ precedence precedence ] [ tos tos ] [ time-range time-name ] [ logging ] [ fragment ] [ vpn-instance vpn-instanc-name ]
高级访问控制列表操作符 操作符及语法 意义 eq portnumber 等于端口号 portnumber gt portnumber lt portnumber 小于端口号portnumber neq portnumber 不等于端口号portnumber range portnumber1 portnumber2 介于端口号portnumber1 和portnumber2之间
高级访问控制列表举例 rule deny icmp source 10.1.0.0 0.0.255.255 destination any icmp-type host-redirect ICMP主机重定向报文 10.1.0.0/16 rule deny tcp source 129.9.0.0 0.0.255.255 destination 202.38.160.0 0.0.0.255 destination-port eq www logging TCP报文 129.9.0.0/16 202.38.160.0/24 WWW 端口
基于接口的访问控制列表 基于接口的访问控制列表的配置 acl number acl-number [ match-order { config | auto } ] rule { permit | deny } [ interface interface-name ] [ time-range time-name ] [ logging ] undo rule rule-id
访问控制列表的使用 防火墙配置常见步骤: 启用防火墙 定义访问控制列表 将访问控制列表应用到接口上 Internet 启用防火墙 公司总部网络 启用防火墙 将访问控制列表应用到接口上 Internet 防火墙配置常见步骤: 启用防火墙 定义访问控制列表 将访问控制列表应用到接口上
防火墙的属性配置命令 打开或者关闭防火墙 设置防火墙的缺省过滤模式 显示防火墙的统计信息 打开防火墙包过滤调试信息开关 firewall { enable | disable } 设置防火墙的缺省过滤模式 firewall default { permit|deny } 显示防火墙的统计信息 display firewall-statistics { all | interface interface-name | fragments-inspect } 打开防火墙包过滤调试信息开关 debugging firewall { all | icmp | tcp | udp | others } [ interface interface-name ]
访问控制列表的显示 访问控制列表的显示与调试 display acl { all | acl-number } reset acl counter { all | acl-number }
在接口上应用访问控制列表 将访问控制列表应用到接口上 指明在接口上是OUT还是IN方向 在接口视图下配置: firewall packet-filter acl-number { inbound | outbound } [ match-fragments { normally | exactly } ] 访问控制列表2000 作用在Serial0/0接口上在IN方向上有效 访问控制列表3000 作用在Ethernet0/0接口在OUT方向有效 Ethernet0/0 Serial0/0
基于时间段的包过滤 “特殊时间段内应用特殊的规则” Internet 上班时间 (上午8:00 -下午5:00) 只能访问特定的站点;其余 时间可以访问其他站点 Internet
时间段的配置命令 time range 命令 显示 time range 命令 time-range time-name [ start-time to end-time ] [ days ] [ from time1 date1 ] [ to time2 date2 ] 显示 time range 命令 display time-range { all | time-name }
访问控制列表的匹配规则 一条访问列表可以由多条规则组成,对于这些规则,有两种匹配顺序:auto和config。 深度的判断要依靠通配比较位和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)的访问。 规则冲突时,若匹配顺序为config,先配置的规则会被优先考虑。
目录 访问控制列表 地址转换 访问控制列表与地址转换实例
地址转换的提出背景 地址转换(nat)是在IP地址日益短缺的情况下提出的。 一个局域网内部有很多台主机,可是不能保证每台主机都拥有合法的IP地址,为了达到所有的内部主机都可以连接Internet网络的目的,可以使用地址转换。 地址转换(nat)技术可以有效的隐藏内部局域网中的主机,因此同时是一种有效的网络安全保护技术。 地址转换(nat)可以按照用户的需要,在局域网内部提供给外部FTP、WWW、Telnet等服务。
私有地址和公有地址 Internet LAN2 LAN1 私有地址范围: 10.0.0.0 - 10.255.255.255 LAN3 10.0.0.1 192.168.0.1 172.16.0.1 私有地址范围: 10.0.0.0 - 10.255.255.255 172.16.0.0 - 172.31.255.255 192.168.0.0 - 192.168.255.255
地址转换的原理 Internet IP 报文 PC1 地址转换 PC2 局域网 IP:192.168.0.1 Port:3000
设置访问控制列表控制PC1可以通过地址转换访问Internet,而PC2则不行。 利用ACL控制地址转换 PC1 局域网 PC2 设置访问控制列表控制PC1可以通过地址转换访问Internet,而PC2则不行。 Internet 可以使用访问控制列表来决定哪些主机可以访问Internet,哪些不能。
地址转换的配置任务列表 定义一个访问控制列表,规定什么样的主机可以访问Internet。 采用EASY IP或地址池方式提供公有地址。 根据选择的方式(EASY IP方式还是地址池方式),在连接Internet接口上允许地址转换。 根据局域网的需要,定义合适的内部服务器。
EASY IP 配置 EASY IP:在地址转换的过程中直接使用接口的IP地址作为转换后的源地址。在接口视图下直接配置: nat outbound acl-number 局域网 PC2 PC1 PC1 和 PC2 可以直接使用 S0/0接口的IP 地址作为地址转换后的公用IP地址 S0/0:202.0.0.1 Internet
使用地址池进行地址转换 PC1 202.38.160.1 202.38.160.2 202.38.160.3 202.38.160.4 地址池 Internet PC2 局域网 地址池用来动态、透明的为内部网络的用户分配地址。它是一些连续的IP地址集合,利用不超过32字节的字符串标识。 地址池可以支持更多的局域网用户同时上Internet。
使用地址池进行地址转换 定义地址池 在接口上使用地址池进行地址转换 nat address-group group-number start-addr end-addr 在接口上使用地址池进行地址转换 nat outbound acl-number address-group group-number [ no-pat ]
一对一的地址转换 配置从内部地址到外部地址的一对一转换 使已经配置的NAT一对一转换在接口上生效 nat static ip-addr1 ip-addr2 使已经配置的NAT一对一转换在接口上生效 nat outbound static
内部服务器的应用 Internet 内部服务器 内部地址:10.0.1.1 内部端口:80 E0/0 S0/0 外部用户 E0/0 S0/0 内部地址:10.0.1.1 内部端口:80 外部地址:202.38.160.1 外部端口:80 IP:202.39.2.3 配置地址转换: IP地址: 10.0.1.1←→202.38.160.1 端口: 80←→80 允许外部用户访问 Internet
内部服务器的配置 内部服务器配置命令 此例的配置 nat server [ vpn-instance vpn-instance-name ] protocol pro-type global global-addr [ global-port ] inside host-addr [ host-port ] nat server [ vpn-instance vpn-instance-name ] protocol pro-type global global-addr global-port 1 global-port2 inside host-addr1 host-addr2 host-port 此例的配置 nat server protocol tcp global 202.38.160.1 80 inside 10.0.1.1 80
NAT的监控与维护 显示地址转换配置 设置地址转换连接有效时间 清除地址转换连接 打开nat调试开关 display nat { address-group | aging-time | all | outbound | server | statistics | session [ vpn-instance vpn-instance-name ] [ slot slot-number ] [ destination ip-addr ] [source global global-addr | source inside inside-addr ] } 设置地址转换连接有效时间 nat aging-time { default | { dns | ftp-ctrl | ftp-data | icmp | pptp | tcp | tcp-fin | tcp-syn | udp } seconds } 清除地址转换连接 reset nat{ log-entry | session slot slot-number } 打开nat调试开关 debugging nat { alg | event | packet [ interface interface-type interface-number ] }
地址转换的缺点 地址转换对于报文内容中含有有用的地址信息的情况很难处理。 地址转换不能处理IP报头加密的情况。 地址转换由于隐藏了内部主机地址,有时候会使网络调试变得复杂。
目录 访问控制列表 地址转换 访问控制列表与地址转换实例
访问列表和地址转换应用实例 Internet FTP 服务器 10.38.1.1 Telnet 服务器 10.38.1.2 WWW 服务器 10.38.1.3 公司内部局域网 E0/0:10.38.1.5 内部特定主机 10.38.1.4 S0/0:202.38.160.1 外部特定主机 202.39.2.3 Internet
配置步骤 按照实际情况需要以下几个步骤: 允许防火墙 定义扩展的访问控制列表 在接口上应用访问控制列表 在接口上利用访问控制列表定义地址转换 配置内部服务器的地址映射关系
配置命令 [H3C]firewall enable [H3C]firewall default permit [H3C]acl number 3000 match-order auto [H3C-acl-adv-3000]rule deny ip source any destination any [H3C-acl-adv-3000]rule permit ip source 129.38.1.1 0 destination any [H3C-acl-adv-3000]rule permit ip source 129.38.1.2 0 destination any [H3C-acl-adv-3000]rule permit ip source 129.38.1.3 0 destination any [H3C-acl-adv-3000]rule permit ip source 129.38.1.4 0 destination any [H3C]acl number 3001 match-order auto [H3C-acl-adv-3001]rule deny ip source any destination any [H3C-acl-adv-3001]rule permit tcp source 202.39.2.3 0 destination 202.38.160.1 0
配置命令(续) [H3C-acl-adv-3001]rule permit tcp source any destination 202.38.160.1 0 destination-port gt 1024 [H3C-Ethernet0/0]firewall packet-filter 3000 inbound [H3C-Serial0/0]firewall packet-filter 3001 inbound [H3C-Serial0/0]nat outbound 3000 [H3C-Serial0/0]nat server protocol tcp global 202.38.160.1 inside 129.38.1.1 ftp [H3C-Serial0/0]nat server protocol tcp global 202.38.160.1 inside 129.38.1.2 telnet [H3C-Serial0/0]nat server protocol tcp global 202.38.160.1 inside 129.38.1.3 www
本章总结 包过滤技术的基本规则和原理 基本和高级访问控制列表的配置方法 访问控制列表用于防火墙 地址转换的基本概念和规则 地址转换的配置方法