随着国际互连网的发展,一些企业建立了自己的INTRANET,并通过专线与INTERNET连通。为了保证企业内部网的安全,防止非法入侵,需要使用专用的防火墙计算机。路由器防火墙只能作为过滤器,并不能把内部网络结构从入侵者眼前隐藏起来。只要允许外部网络上的计算机直接访问内部网络上的计算机,就存在着攻击者可以损害内部局域网上机器的安全性,并从那里攻击其他计算机的可能性。
大多数提供代理服务的专用防火墙机器是基于UNIX系统的,这些操作系统本身就有安全缺陷。CISCO提供了PIX (Private Internet eXchange,私有Internet交换)防火墙,它运行自己定制的操作系统,事实证明,它可以有效地防止非法攻击。PIX防火墙要求有一个路由器连接到外部网络,如附图所示。PIX有两个ETHERNET接口,一个用于连接内部局域网,另一个用于连接外部路由器。外部接口有一组外部地址,使用他们来与外部网络通信。内部网络则配置有一个适合内部网络号方案的IP地址。PIX的主要工作是在内部计算机需要与外部网络进行通信时,完成内部和外部地址之间的映射。
配置好PIX防火墙后,从外部世界看来,内部计算机好象就是直接连接到PIX的外部接口似的。由于PIX的外部接口是Ethernet接口,所以,向主机传送信息包需要用到MAC地址。为了使内部主机在数据链路层和网络层上看起来都好象是连接在外部接口上的,PIX运行了代理ARP,代理ARP给外部网络层IP地址指定数据链路MAC地址,这就使得内部计算机看起来像是在数据链路层协议的外部接口上似的。大多数情况下,与外部网络的通信是从内部网络中发出的。由于PIX是对信息包进行操作,而不是在应用过程级(代理服务器则采用这种方法),PIX既可以跟踪UDP会话,也可以跟踪TCP连接。当一个计算机希望同外部计算机进行通信时,PIX记录下内部来源地址,然后从外部地址库分配一个地址,并记录下所进行的转换。这就是人们常说的有界NAT(stateful NAT),这样,PIX就能记住它在同谁进行交谈,以及是哪个计算机首先发起的对话。只有已被确认的来自外部网络的信息包才会运行,并进入内部网络。
不过,有时也需要允许外部计算机发起同指定的内部计算机的通信。典型的服务包括电子邮件、WWW服务、以及FTP服务。PIX给一个内部地址硬编码一个外部地址,这个地址是不会过期的。在这种情况下,用到对目标地址和端口号的普通过滤。除非侵入PIX本身,外部用户仍然是无法了解内部网络结构的。在不了解内部网络结构的情况下,恶意用户就无法从内部主机向内部网络实施攻击。
PIX另一个关键性的安全特性是对TCP信息包的序列编号进行随机化处理。由于IP地址电子欺骗的方法早已公布,所以,入侵者已经有可能通过这种方法,控制住一个现成的TCP连接,然后向内部局域网上的计算机发送它们自己的信息。要想做到这一点,入侵者必须猜出正确的序列编号。在通常的TCP/IP中实现是很容易的,因为每次初始化连接时,大都采用一个相同的编号来启动会话。而PIX则使用了一种数学算法来随机化产生序列编号,这实际上使得攻击者已经不可能猜出连接所使用的序列编号了。
配置PIX防火墙是一个比较直接的工作,在提供相同级别的安全服务情况下,PIX的配置相比设置代理服务器要简单的多。从理论上讲,所需做的就是指定一个IP地址和一个用来对外部进行访问的地址库,一个针对内部连接的IP地址和网络掩吗、RIP、超时以及其他附属安全信息。下面介绍一个PIX防火墙实际配置案例,供大家参考。因为路由器的配置在安全性方面和PIX防火墙是相辅相成的,所以路由器的配置实例也一并列出。
一.PIX 防火墙设置
ip address outside 131.1.23.2 //设置PIX防火墙的外部地址 ip address inside 10.10.254.1 //设置PIX防火墙的内部地址 global 1 131.1.23.10-131.1.23.254 //设置一个内部计算机与INTERNET 上计算机进行通信时所需的全局地址池 nat 1 10.0.0.0 //允许网络地址为10.0.0.0 的网段地址被PIX翻译成外部地址 static 131.1.23.11 10.14.8.50 //网管工作站固定使用的外部地址为131.1.23.11 conduit 131.1.23.11 514 udp 131.1.23.1 255.255.255.255 //允许从RTRA发送到到 网管工作站的系统日志包通过PIX防火墙 mailhost 131.1.23.10 10.10.254.3 //允许从外部发起的对 邮件服务器的连接(131.1.23.10) telnet 10.14.8.50 //允许网络管理员通过 远程登录管理IPX防火墙 syslog facility 20.7 syslog host 10.14.8.50 //在位于网管工作站上的 日志服务器上记录所有事件日志 |
二.路由器RTRA设置
RTRA是外部防护路由器,它必须保护PIX防火墙免受直接攻击,保护FTP/HTTP服务器,同时作为一个警报系统,如果有人攻入此路由器,管理可以立即被通知。
no service tcp small-servers //阻止一些对路由器本身的攻击 logging trap debugging //强制路由器向系统日志服务器 发送在此路由器发生的每一个事件, 包括被存取列表拒绝的包和路由器配置的改变; 这个动作可以作为对系统管理员的早期预警, 预示有人在试图攻击路由器,或者已经攻入路由器, 正在试图攻击防火墙 logging 131.1.23.11 //此地址是网管工作站的外部地址, 路由器将记录所有事件到此 主机上enable secret xxxxxxxxxxx interface Ethernet 0 ip address 131.1.23.1 255.255.255.0 interface Serial 0 ip unnumbered ethernet 0 ip access-group 110 in //保护PIX防火墙和HTTP/FTP 服务器以及防卫欺骗攻击(见存取列表) access-list 110 deny ip 131.1.23.0 0.0.0.255 any log // 禁止任何显示为来源于路由器RTRA 和PIX防火墙之间的信息包,这可以防止欺骗攻击 access-list 110 deny ip any host 131.1.23.2 log //防止对PIX防火墙外部接口的直接 攻击并记录到系统日志服务器任何企图连接 PIX防火墙外部接口的事件r access-list 110 permit tcp any 131.1.23.0 0.0.0.255 established //允许已经建立的TCP会话的信息包通过 access-list 110 permit tcp any host 131.1.23.3 eq ftp //允许和FTP/HTTP服务器的FTP连接 access-list 110 permit tcp any host 131.1.23.2 eq ftp-data //允许和FTP/HTTP服务器的FTP数据连接 access-list 110 permit tcp any host 131.1.23.2 eq www //允许和FTP/HTTP服务器的HTTP连接 access-list 110 deny ip any host 131.1.23.2 log //禁止和FTP/HTTP服务器的别的连接 并记录到系统日志服务器任何 企图连接FTP/HTTP的事件 access-list 110 permit ip any 131.1.23.0 0.0.0.255 //允许其他预定在PIX防火墙 和路由器RTRA之间的流量 line vty 0 4 login password xxxxxxxxxx access-class 10 in //限制可以远程登录到此路由器的IP地址 access-list 10 permit ip 131.1.23.11 //只允许网管工作站远程登录到此路由器, 当你想从INTERNET管理此路由器时, 应对此存取控制列表进行修改 |
三. 路由器RTRB设置
RTRB是内部网防护路由器,它是你的防火墙的最后一道防线,是进入内部网的入口.
logging trap debugging logging 10.14.8.50 //记录此路由器上的所有活动到 网管工作站上的日志服务器,包括配置的修改 interface Ethernet 0 ip address 10.10.254.2 255.255.255.0 no ip proxy-arp ip access-group 110 in access-list 110 permit udp host 10.10.254.0 0.0.0.255 //允许通向网管工作站的系统日志信息 access-list 110 deny ip any host 10.10.254.2 log //禁止所有别的从PIX防火墙发来的信息包 access-list permit tcp host 10.10.254.3 10.0.0.0 0.255.255.255 eq smtp //允许邮件主机和内部邮件服务器的SMTP邮件连接 access-list deny ip host 10.10.254.3 10.0.0.0 0.255.255.255 //禁止别的来源与邮件服务器的流量 access-list deny ip any 10.10.254.0 0.0.0.255 //防止内部网络的信任地址欺骗 access-list permit ip 10.10.254.0 0.0.0.255 10.0.0.0 0.255.255.255 //允许所有别的来源于PIX防火墙 和路由器RTRB之间的流量 line vty 0 4 login password xxxxxxxxxx access-class 10 in //限制可以远程登录到此路由器上的IP地址 access-list 10 permit ip 10.14.8.50 //只允许网管工作站远程登录到此路由器, 当你想从INTERNET管理此路由器时, 应对此存取控制列表进行修改 |
按以上设置配置好PIX防火墙和路由器后,PIX防火墙外部的攻击者将无法在外部连接上找到可以连接的开放端口,也不可能判断出内部任何一台主机的IP地址,即使告诉了内部主机的IP地址,要想直接对它们进行Ping和连接也是不可能的。
这样就可以对整个内部网进行有效的保护,防止外部的非法攻击。