防火墙工作原理
引言
如果您使用过互联网,尤其是如果您在较大的公司工作并在工作时间浏览网络,那么您大概听到过别人使用防火墙一词。例如,您经常听见公司的人这样说:“我没法使用那个站点,因为他们不允许外人通过防火墙进行访问。”诸如此类。
如果您家里有快速互联网连接(DSL连接或电缆调制解调器),您也可能听说过用于家庭网络的防火墙。事实上,小型家庭网络和大型公司网络具有大量相同的安全问题。您可以利用防火墙使您的家庭网络和家人避免受到令人讨厌的网站和潜在黑客的骚扰。
本质上,防火墙就是一道防止您的财产受到破坏的屏障。实际上这正是称它为防火墙的理由。它的工作类似于阻止火势从一个区域蔓延到另一个区域的真实防火墙。本文中,您将了解更多有关防火墙的内容,并且了解它们的工作原理以及它们能使您免受哪些种类的威胁。
防火墙的作用防火墙就是对通过互联网连接进入您的专用网络或计算机系统的信息进行过滤的程序或硬件设备。如果过滤器对传入的信息数据包进行标记,则不允许该数据包通过。
如果阅读过Web服务器工作原理,那么您对互联网上的数据传输方式应该已经有了充分认识,并且能够很容易看出防火墙是如何帮助人们保护大公司内的计算机的。假设您所就职的公司拥有500名员工。公司因而有数百台计算机通过网卡互相连接。此外,公司还有一个或多个通过T1或T3等类似线路实现的互联网连接。如果不安装防火墙,则互联网上的任何人都可以直接访问这数百台计算机。懂行的人可能探查这些计算机,尝试与这些计算机建立FTP连接,尝试与它们建立telnet连接,等等。如果有员工犯错从而留下安全漏洞,那么黑客可以进入相应的计算机并利用漏洞。
如果安装防火墙,情况将大不相同。公司将在每个互联网连接处布置防火墙(例如,在每条进入公司的T1线路上)防火墙可以实施安全规则。例如,公司内的一条安全规则可能是:
- 在本公司内的500台计算机中,只允许一台计算机接收公共FTP通信。只允许与该计算机建立FTP连接,而阻止与其他任何计算机建立这样的连接。
公司可以为FTP服务器、Web服务器、Telnet服务器等设置类似的规则。此外,公司还可以控制员工连接网站的方式、控制是否允许文件通过网络离开公司等。利用防火墙,公司可以对人们使用网络的方式进行诸多控制。
防火墙使用以下三种方法中的一种或多种来控制流入和流出网络的通信:
- 数据包过滤——根据一组过滤器分析数据包(小的数据块)。通过过滤器的数据包将发送到请求数据包的系统,没有通过的数据包将被丢弃。
- 代理服务——防火墙检索来自互联网的信息,然后将信息发送到请求信息的系统,反之亦然。
- 状态检测——这是一种较为新颖的方法,它并不检查每个数据包的内容,而是将数据包的特定关键部分与受信任信息数据库进行比较。从防火墙内部传递到外部的信息将受到监视,以获得特定的定义特征,然后将传入的信息与这些特征进行比较。如果通过比较得出合理的匹配,则允许信息通过。否则将丢弃信息。
定制合适的防火墙
可以对防火墙进行定制。这意味着您可以根据多个条件来添加或删除过滤器。其中一些条件如下:
- IP地址——互联网上的每台计算机被分配了一个唯一的地址,称为IP地址。IP地址是32位数字,通常表示为4个“八位二进制数”,并以“句点分隔的十进制数”直观表示。典型的IP地址如下所示:216.27.61.137。例如,如果公司外部的某个IP地址从服务器读取了过多文件,则防火墙可以阻止与该IP地址之间的所有通信。
- 域名——由于组成IP地址的数字串不容易记住,而且IP地址有时需要更改,因此互联网上的所有服务器还拥有易于理解的名称,称为域名。例如,对大多数人来说,记住www.howstuffworks.com比记住216.27.61.137更容易。公司可以阻止对特定域名进行的所有访问,或者仅允许访问特定域名。
- 协议——协议是想要使用某一服务的某一方与该服务之间进行通信的一种预定义方式。“某一方”可能是一个人,但在更多的情况下,它是一个计算机程序,例如Web浏览器。协议通常是文本,并简单说明客户机和服务器进行会话的方式。http是Web协议。公司可以只设置一台或两台计算机来处理特定协议,而在其他所有计算机上禁用该协议。下面是一些可以为其设置防火墙过滤器的常见协议:
- IP(互联网协议,Internet Protocol)——互联网上的主要信息传递系统
- TCP(传输控制协议,Transmission Control Protocol)——用于拆分和复原互联网上传递的信息
- HTTP(超文本传输协议,Hyper Text Transfer Protocol)——用于网页
- FTP(文件传输协议,File Transfer Protocol)——用于下载和上传文件
- UDP(用户数据报协议,User Datagram Protocol)——用于无需响应的信息,如音频流和视频流
- ICMP(Internet控制消息协议,Internet Control Message Protocol)—— 供路由器用来与其他路由器交换信息
- SMTP(简单邮件传输协议,Simple Mail Transport Protocol)——用于发送基于文本的信息(电子邮件)
- SNMP(简单网络管理协议,Simple Network Management Protocol)——用于从远程计算机收集系统信息
- Telnet——用于在远程计算机上执行命
- 端口——任何服务器计算机都使用带编号的端口向互联网提供服务,每个端口对应于该服务器上提供的一项服务(详细信息,请参见Web服务器工作原理)。例如,如果服务器计算机正在运行Web(HTTP)服务器和FTP服务器,则通常可以通过端口80访问Web服务器,并可以通过端口21访问FTP服务器。除一台计算机外,公司可能阻止对公司内其他所有计算机上的端口21进行访问。
- 特定词汇和短语——这可以是任意内容。防火墙将嗅探(彻底搜寻)每个信息数据包,确定是否存在与过滤器中列出的文本完全匹配的内容。例如,您可以指示防火墙阻止任何含有“X-rated”一词的数据包。这里的关键在于必须是精确匹配。“X-rated”过滤器不会捕捉“X rated”(不含连字符)。但您可以根据需要包括任意多的词汇、短语以及它们的变体。
一些操作系统内置了防火墙。如果没有,您可以在家中具有互联网连接的计算机上安装软件防火墙。该计算机称为网关,因为它提供了家庭网络与互联网之间的唯一接入点。
至于硬件防火墙,防火墙装置本身通常就是网关。Linksys Cable/DSL路由器就是这方面的例子。它内置了以太网卡和集线器。家庭网络中的计算机与路由器连接,而路由器又与电缆调制解调器或DSL调制解调器连接。您可以通过基于Web的界面配置路由器,该界面可以通过计算机上的浏览器访问。然后,您可以设置任何过滤器或其他信息。
硬件防火墙非常安全,而且价格也不贵。包含路由器、防火墙和以太网集线器的、用于宽带连接的家庭版硬件防火墙价格在100美元以内。
防火墙提供哪些保护?
肆无忌惮的人们想出了各种富有创意的方法来访问或滥用未加保护的计算机:
- 远程登录——他人能够连接到您的计算机并以某种形式控制它。这包括查看或访问您的文件以及在您的计算机上实际运行程序。
- 应用程序后门——一些程序具有特殊功能,能够进行远程访问。另外一些程序含有缺陷,这些缺陷提供了后门(即隐藏入口),可用来对程序进行某种程度的控制。
- SMTP会话劫持——SMTP是通过互联网发送电子邮件的最常用方法。通过获取对电子邮件地址列表的访问权,可以向数以千计的用户发送未经请求的垃圾邮件。常用的方法是通过不知情主机的SMTP服务器重定向电子邮件,从而隐藏垃圾邮件的实际发件人的踪迹。
- 操作系统缺陷——像应用程序一样,一些操作系统也有后门。另外一些操作系统提供了缺乏足够安全控制的远程访问,或者存在经验丰富的黑客可以利用的缺陷。
- 拒绝服务——您可能在关于大型网站受到攻击的新闻报道中听说过这个短语。这种类型的攻击几乎无法抵御。这种攻击的原理是:黑客向服务器发送连接请求。当服务器用应答响应并尝试建立会话时,却找不到发出请求的系统。黑客通过向服务器发送无数这类无法应答的会话请求,使得服务器速度变慢或者最终崩溃。
- 电子邮件炸弹——电子邮件炸弹通常是针对个人发起的攻击。某人向您发送数百或数千封相同的电子邮件,直到您的电子邮件系统再也无法接收任何邮件。
- 宏——为了简化复杂过程,许多应用程序允许创建可供应用程序运行的命令脚本。该脚本称为宏。黑客利用这一功能创建自己的宏,根据应用程序的不同,这些宏可以摧毁您的数据或使计算机崩溃。
- 病毒——计算机病毒大概是最著名的威胁。病毒是可以将自己复制到其他计算机的小程序。通过复制,病毒可以在不同系统之间快速传播。病毒既包括无害的邮件,也包括可以擦除您所有数据的危险病毒。
- 垃圾邮件——这里将现实生活中的“垃圾邮件”一词借用到电子领域,它们通常是无害的,但总是令人讨厌。不过垃圾邮件也可能具有危险。它常常包含指向网站的链接。单击这些链接时一定要小心,因为您可能意外接受向您的计算机提供后门的Cookie。
- 重定向炸弹——黑客可以使用ICMP将信息发送到别的路由器,从而更改(重定向)信息采用的路径。这是实施拒绝服务攻击的一种方法。
- 源路由——在大多数情况下,数据包在互联网(或其他任何网络)上传输的路径由沿该路径的路由器决定。但提供数据包的源可以任意指定数据包的传输路由。黑客有时利用这一点使信息看起来像是来自受信任的源甚至网络内部!大部分防火墙产品默认情况下禁用源路由。
即使有可能,以上列出的一些项也难以利用防火墙进行过滤。虽然一些防火墙提供了防病毒功能,但在每台计算机上安装防病毒软件是值得的。另外,尽管令人讨厌,但只要您接受电子邮件,一些垃圾邮件就能够穿过您的防火墙。
您所确立的安全级别将决定防火墙可以阻止的威胁的数量。最高安全级别可以阻止一切通信。显然,这也使互联网连接失去了意义。但一条常用的经验法则是阻止一切通信,然后开始选择允许通过的通信类型。您还可以对通过防火墙的通信进行限制,从而只允许特定类型的信息(如电子邮件)通过。如果企业拥有有经验的网络管理员,并且这些管理员了解企业需求并确切知道允许哪些通信通过,那么这是一条不错的规则。对于我们大多数人来说,除非有特定的更改理由,否则最好使用由防火墙开发人员提供的默认设置。
站在安全角度来说,防火墙最大的好处之一在于它能够阻止任何外人登录您的专用网络中的计算机。这对企业来说非常重要,大多数家庭网络大概不会受到这方面的威胁。不过,布置防火墙还是能让人放心一些。
代理服务器和DMZ(非军事区)
一项经常与防火墙结合使用的功能是代理服务器。代理服务器被其他计算机用来访问网页。当另一台计算机请求网页时,代理服务器将检索该网页,然后将其发送给请求该网页的计算机。该操作的最后效果是承载该网页的远程计算机不会与您家庭网络中的任何内容直接联系,而是与代理服务器联系。
代理服务器还可以使您的互联网访问更为高效。如果您访问网站的页面,该页面将缓存(存储)在代理服务器上。这意味着当您下次返回到该页面时,通常无需再次从网站加载该页面。相反,可以从代理服务器迅速加载。
有时,您可能希望远程用户能够访问您网络中的项。例如:
- 网站
- 在线商务
- FTP下载区和上传区
在类似情况下,您可以创建DMZ(非军事区)。尽管听起来很严肃,但它实际上只是防火墙外部的一个区域。请试着将DMZ想像成您家里的前院。它属于您,您可以在这里堆放东西,但您会把贵重物品都放在屋子里,因为那里才更加安全。
设置DMZ非常简单。如果您有多台计算机,可以选择将其中一台计算机简单地放在互联网连接和防火墙之间。现在,大部分软件防火墙都允许您指定网关计算机上的一个目录作为DMZ。
安装防火墙后,应对其进行测试。
[责任编辑:小敏]