浅谈分析TCP/IP筛选VSIPSec策略

发表于:2007-06-23来源:作者:点击数: 标签:
配置 TCP/IP 安全: 1. 单击开始,指向设置,单击控制面板,然后双击 网络 和拨号连接。 2. 右键单击要在其上配置入站访问控制的接口,然后单击属性。 3. 在选定的组件被这个连接所使用框中,单击 Internet 协议 (TCP/IP),然后单击属性。 4. 在 Internet 协

   
  配置 TCP/IP 安全:
  
  1. 单击开始,指向设置,单击控制面板,然后双击网络和拨号连接。
  
  2. 右键单击要在其上配置入站访问控制的接口,然后单击属性。
  

  3. 在选定的组件被这个连接所使用框中,单击 Internet 协议 (TCP/IP),然后单击属性。
  
  4. 在 Internet 协议 (TCP/IP) 属性对话框中,单击高级。
  
  5. 单击选项选项卡。
  
  6. 单击 TCP/IP 筛选,然后单击属性。
  
  7. 选中启用 TCP/IP 筛选(所有适配器)复选框。选中此复选框后,将对所有适配器启用筛选,但您要逐个为适配器配置筛选器。同一筛选器并不适用于所有适配器。
  
  8. 该窗口中一共有三列,分别标记为:
  
  TCP 端口
  
  UDP 端口
  
  IP 协议在每一列中,都必须选择下面的某个选项:
  
  全部允许。如果要允许 TCP 或 UDP 通信的所有数据包,请保留全部允许处于选中状态。
  
  仅允许。如果只允许选定的 TCP 或 UDP 通信,请单击仅允许,再单击添加,然后在添加筛选器对话框中键入相应的端口。
  
  如果要阻止所有 UDP 或 TCP 流量,请单击仅允许,但不要在 UDP 端口或 TCP 端口列中添加任何端口号。如果您为 IP 协议选中了仅允许并排除了 IP 协议 6 和 17,并不能阻止 UDP 或 TCP 通信。
  
  请注意,即使在 IP 协议列中选择了仅允许而且不添加 IP 协议 1,也无法阻止 ICMP 消息。
  
  “TCP/IP 筛选”只能筛选入站流量。此功能不影响出站流量,也不影响为接受来自出站请求的响应而创建的响应端口。如果需要更好地控制出站访问,请使用 IPSec 策略或数据包筛选。
  
  以下是关于IPSec 策略的官方说明
  
  Internet 协议安全 (IPSec) 循序渐进指南
  
  在进行IPSec完整性配置时,有两个选项 :Message Digest 5 (MD5)和安全散列算法1(Secure Hash Algorithm 1 ,简称SHA1)。后者的安全度更高,但需要更多的 CPU资源,MD5使用128位散列算法,而SHA1使用的160位算法。
  
  IPSec 认证协议
  
  当两个系统互相交换加密数据之前,需要相互对加密的数据包进行安全认定。这个安全认定成为安全协定(security association,简称SA)。在相互通信之前,两个系统必须认定对同一SA。
  
  因特网密钥交换协议(Internet Key Exchange,简称IKE)管理着用于IPSec连接的 SA协议过程。IKE是因特网工程任务组(Internet Engineering Task Force,简称IETF)制定的关于安全协议和密钥交换的标准方法。IKE的操作分两阶段:第一阶段确保通信信道的安全,第二阶段约定SA的操作。
  
  为了建立IPSec通信,两台主机在SA协定之前必须互相认证,有三种认证方法:
  
  Kerberos - Kerberos v5常用于Windows Server 2003,是其缺省认证方式。 Kerberos能在域内进行安全协议认证,使用时,它既对用户的身份也对网络服务进行验证。Kerberos的优点是可以在用户和服务器之间相互认证,也具有互操作性。Kerberos可以在 Server 2003的域和使用Kerberos 认证的UNix环境系统之间提供认证服务。
  
  公钥证书 (PKI) - PKI用来对非受信域的成员,非Windows客户,或者没有运行Kerberos v5 认证协议的计算机进行认证,认证证书由一个作为证书机关(CA)系统签署。
  
  预先共享密钥 -在预先共享密钥认证中,计算机系统必须认同在IPSec策略中使用的一个共享密钥 ,使用预先共享密钥仅当证书和Kerberos无法配置的场合。
  
  IPSec加密协议
  
  IPSec提供三种主要加密方法,如下
  
  数据加密标准 (DES 40位) - 该加密方法性能最好,但安全性较低。该 40位数据加密标准(Data Encryption Standard,简称DES)通常被称为 安全套接字层(Secure Sockets Layer,简称SSL)。适用于数据安全性要求较低的场合。
  
  数据加密标准 (DES 56位) - 通过IPSec策略,可以使用56位 DES的加密方法。1977年美国国家标准局公布了DES算法,它可以在通信过程中经常生成密钥。该功能可防止因为一个DES密钥被破译而整个数据集的安全受到影响。但是在商业中被认为过时了,仅用于传统的应用支持,有专门的硬件可以破译标准的 56位密钥。
  
  3DES - IPSec策略可以选择一个强大的加密算法3DES,其安全性比DES更高。3DES也使用了56位密钥,但使用了三个。结果3DES成为 168位加密算法,用于诸如美国政府这样的高机密的环境中。采用该策略的所有计算机将都遵守这样的机制。
  
  IPSec传输模式
  
  IPSec可以在两种不同的模式下运作:传输模式和隧道模式。这些模式指的是数据在网络中是如何发送和加密的。在传输模式下,IPSec的保护贯穿全程:从源头到目的地,被称为提供终端到终端的传输安全性 。
  
  隧道模式仅仅在隧道点或者网关之间加密数据。隧道模式提供了网关到网关的传输安全性。当数据在客户和服务器之间传输时,仅当数据到达网关时才得到加密,其余路径不受保护。一旦到达网关,就采用IPSec进行加密,等到达目的网关之后,数据包被解密和验证,之后数据发送到不受保护的目的主机。隧道模式通常适用于数据必须离开安全的LAN或者WAN的范围,且在诸如互联网这样的公共网络中传输的场合。
  
  我看了几个朋友的服务器配置,每一个人都使用的是TCP/IP筛选对网站的访问端口进行设定,这到没什么关系,但对IPSec 策略最多也只设定封一下ICMP,别的都没设定,出于安全考虑,这样做不是很好,因为...
  
  我来做个比较
  
  TCP/IP筛选只可只设定客户端通过几个固定的TCP或UDP端口进行对服务器的访问,或限定IP访问,每增加一次就要重启服务器一次,只能适合比较小型访问,原来我为了让Serv_u能进行正常访问,加了N个端口,累的要死(因为FTP软件连接到FTP服务器的话,会随机使用一些端口,因为设定问题,就看不到目录了)...现在想起来也好笑.
  
  IPSec 策略可设定即时生效,不用重启服务器,可对端口或IP进行封锁或访问,可拒绝一些不安全端口的访问,也可像TCP/IP筛选一样只设定客户端通过几个固定的TCP或UDP端口进行对服务器的访问,可选择性要大很多,其中的许可比拒绝优先,这样就可以设定优先通过某一些特定的IP,也可设定某个IP只能访问某个端口之类的,只要你有想像力,哈哈,就很简单了,这里我写的都是一些知识,没有写操作步骤,因为操作很简单,只要说一下原理,懂原理比操作更快
  
  如安全方面的话,TCP/IP筛选会在注册表中的
  
  HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip\Parameters
  
  HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Tcpip\Parameters
  
  HKEY_LOCAL_MACHINE\SYSTEM\ControlSet003\Services\Tcpip\Parameters
  
  中的EnableSecurityFilters值上设定,当为"EnableSecurityFilters"=dword:00000001,即TCP/IP筛选生效,当为"EnableSecurityFilters"=dword:00000000,即TCP/IP筛选失效,这样就给我们一个漏洞了,用regedit -e导出以上三个键值,把EnableSecurityFilters值改成dword:00000000,regedit -s,嘻嘻,你设的再多也等于零
  
  IPSec 策略就没有这个安全隐患,上面还有IPSec 策略的一些加密说明,安全吧??!!而且IP策略可以备份为文件方便在不同的电脑上使用,不过2K和XP或2K3使用的不同,这点到是要注意一下
  
  我给出两个IPSec的策略
  
  windows安全策略包v2.24plus
  
  windows安全策略包服务器版
  
  说明一下,这些设定只是针对端口或IP进行管理的,没什么很高深的东西,而且有一些功能是无法进行设定的(如果什么都能设定的话,那还需要防火墙做什么),但这是WEB服务器的第一道关口,如果不设置好的话,后面很容易出问题的,我刚给出的只是一个例子,破TCP/IP筛选有几种方法,这里就不好说明了,总结一下,TCP/IP筛选只是开胃菜,IPSec 策略是红酒,防火墙是面包,防火墙是主菜(硬件级的),一样也不能少,都要做好设定,那就这样!

原文转自:http://www.ltesting.net