安全 : Cisco PIX 500 系列安全设备

使用PIX防火墙阻拦对等文件共享程序

2015 年 8 月 28 日 - 机器翻译
其他版本: PDFpdf | 英语 (2015 年 4 月 22 日) | 反馈


目录


简介

本文说明了如何(尝试)使用 PIX 防火墙阻止最常见的对等 (P2P) 文件共享程序。如果应用程序不可能有效阻塞与PIX,思科IOS�在源主机和互联网之间的所有Cisco路由器可以配置的基于网络应用的识别(NBAR)配置包括。

重要说明:考虑到本文档协助阻止的内容的性质,Cisco 无法阻止单个服务器地址。相反,Cisco 建议您对地址范围进行阻止,以确保您为列出的每个程序阻止所有可能的服务器。这样做的结果可能是您会阻止合法服务。如果出现这种情况,您需要向配置中添加一些声明,以便允许这些单独的服务。如果有任何困难,请与 Cisco 技术支持部门联系。

先决条件

要求

本文档没有任何特定的要求。

使用的组件

虽然我们期望的情况是这些配置可以在所有版本的软件和硬件上运行,但在测试这些配置时使用了以下版本的 PIX 软件和硬件:

  • Cisco PIX 防火墙 501

  • 思科PIX防火墙软件版本6.3(3)

  • Cisco IOS 软件版本 12.2(13)T

测试这些配置时使用的 P2P 软件版本如下:

  • Blubster 2.5 版

  • eDonkey 0.51 版

  • IMesh 4.2 版内部版本 137

  • KazaaLite 2.4.3 版

  • LimeWire 3.6.6 版

  • Morpheus 3.4 版

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。

规则

有关文档规则的详细信息,请参阅 Cisco 技术提示规则

PIX 配置

interface ethernet0 10baset 
interface ethernet1 10full 
ip address outside dhcp setroute 
ip address inside 192.168.1.1 255.255.255.0 
global (outside) 1 interface 
nat (inside) 1 0 0 
http server enable 
http 192.168.1.0 255.255.255.0 inside 
dhcpd address 192.168.1.2-192.168.1.129 inside 
dhcpd auto_config 
dhcpd enable inside 
pdm logging informational 
timeout xlate 0:05:00

Blubster/Piolet 配置

Blubster 和 Piolet 使用多点 P2P (MP2P) 协议。这最初是连接到网络的中央服务器上,以便获取对等主机列表并能够使用访问列表得到有效的阻止,从而禁用程序。P2P 连接通常是在 TCP 端口 80 上。但是,如果阻止了初始连接,您就无法下载此对等体列表。

将以下命令应用到您的 PIX 上应该会阻止此程序:

access-list outbound deny tcp any 128.121.0.0 255.255.0.0 eq www
access-list outbound permit ip any any
access-group outbound in interface inside

或者,如果您想要稍微有点儿选择性,这种命令应该 也能奏效:

access-list outbound deny tcp any 128.121.20.0 255.255.255.240 eq www
access-list outbound deny tcp any 128.121.4.0 255.255.255.0 eq www
access-list outbound permit ip any any
access-group outbound in interface inside

eDonkey 配置

eDonkey 使用两个端口,一个用于文件搜索,另一个用于文件传输。文件搜索是通过使用从随机选择的UDP 源端口到通往随机目的地端口完成的。文件传输是通过使用目标端口 TCP/4662 完成的。阻止此端口会停止下载文件。不过,用户仍然可以搜索文件,因为使用访问列表无法有效阻止此程序的 UDP 部分。

TCP/4662的默认端口可以在程序选项之内简单更改,但不会影响下载文件的端口。此端口号选项似乎是其他主机用来从您的源主机下载文件的端口。除非有其他许多 P2P 用户已经在他们的设置中更改了此端口(这一点值得怀疑),否则只需通过阻止 TCP/4662 出站即可停止(或者至少严重影响)文件的下载。

将以下命令应用到您的 PIX 上应该会阻止此程序:

access-list outbound deny tcp any any eq 4662
access-list outbound permit ip any any
access-group outbound in interface inside

FastTrack - Kazaa/KazaaLite/Grokster/iMesh 配置

FastTrack 是当今最普遍的 P2P 网络。Kazaa、KazaaLite、Grokster 和 iMesh 等 P2P 文件共享应用程序均使用此网络,并且使用任意开放 TCP/UDP 端口连接到其他主机,以进行文件的搜索和下载。这就导致无法使用访问列表对其进行过滤。

注意: 使用 PIX 防火墙无法对这些应用程序进行过滤。

要有效过滤这些应用程序,请在您的外部路由器(或者是源主机和互联网连接之间的任意路由器)上使用 NBAR。NBAR可以在FastTrack网络连接上进行特殊匹配,也可以完全丢弃或进行速率限制。

下面是一个关于丢弃 FastTrack 数据包的 IOS 路由器 NBAR 配置示例:

class-map match-any p2p
   match protocol fasttrack file-transfer *


policy-map block-p2p 
   class p2p
      drop

!--- The drop command was introduced in 
!--- Cisco IOS Software Release 12.2(13)T.


int FastEthernet0
   description PIX-facing interface
   service-policy input block-p2p

如果路由器运行的 Cisco IOS 软件版本低于 Cisco IOS 软件版本 12.2(13)T,则无法在 policy-map 下使用 drop 命令。要丢弃此数据流,请使用 policy-map 命令,以便在匹配的数据包进入路由器时设置 DSCP 位。然后,定义一个访问列表,以便在带有设定位数的数据包退出路由器时将其全部丢弃。DSCP 位的使用方式让它看起来似乎不大可能有任何“正常”数据流会使用这样的位。下面显示了一种示例配置:

class-map match-any p2p
   match protocll fasttrack file-transfer *

policy-map block-p2p
   class p2p
      set ip dscp 1

int FastEthernet0
   description PIX/Inside facing interface
   service-policy input block-p2p

int Serial0
   description Internet/Outside facing interface
   ip access-group 100 out

access-list 100 deny ip any any dscp 1
access-list 100 permit ip any any

Gnutella - BearShare/Limewire/Morpheus/ToadNode 配置

Gnutella 是一种开放源协议,有 50 多种应用程序分别通过各种不同的操作系统平台使用该协议。主流 P2P 应用程序包括 BearShare、Limewire、Morpheus 和 ToadNode。它们使用任一开放TCP/UDP端口与另一台P2P主机通信,并从P2P主机连接到其他许多主机,从而让使用访问控制列表过滤这些程序不可能。

注意: 使用 PIX 防火墙无法对这些程序进行过滤。

在您的外部路由器上使用 NBAR 可以有效过滤这些协议。NBAR可以在Gnutella网络连接上进行特殊匹配,也可以完全丢弃或进行速率限制。

IOS 路由器的 NBAR 配置示例与本文档中 FastTrack 部分的示例类似。此处显示了在相同的 class-map 下添加的 Gnutella 匹配行:

class-map match-any p2p
   match protocol gnutella file-transfer *

相关的思科支持社区讨论

思科支持社区是您提问、解答问题、分享建议以及与工作伙伴协作的论坛。


相关信息


Document ID: 42700