
功能技术实现.ppt
21页联想网御联想网御VPN产品部署与安装产品部署与安装防火墙研发处VPN产品技术实现产品技术实现版本版本 日期日期作者作者说明明审批批0.12004.3我们在售前试用、实施时我们在售前试用、实施时§如何把VPN部署到用户的网络中,感到无从下手§出现问题时,怎么回事?§如果您了解VPN怎么在防火墙中实现,您将在此时游刃有余VPN隧道工作原理隧道工作原理§VPN虚拟设备,在防火墙中有一个VPN虚拟设备,这个虚拟设备叫ipsec0,它是隧道的入口§隧道是什么样的形式?怎么对数据进行处理的?§隧道是如何建立的?VPN虚拟设备虚拟设备§一般情况下,发送或转发数据包时,将数据交给以太网口对应的设备,如eth0这个设备就会将数据包转给数据包的目的站或下一跳§如果启用了VPN,那么系统中会多出一个隧道设备ipsec0所有VPN局域网数据将不会再通过实际设备发送,他们会被转发给ipsec0设备这个VPN设备会把数据包加密封装然后发出§VPN设备和一个具体的设备绑定,当加密封装完数据后使用具体的物理设备将数据发送到网络中VPN虚拟设备的绑定虚拟设备的绑定§桥模式下, VPN虚拟设备绑定桥设备它将使用桥设备的主IP提供VPN服务,并加密后封装时源地址采用桥设备的主IP。
§路由模式下,VPN虚拟设备绑定eth0设备它将使用eth0设备的IP提供VPN服务,并加密后封装时源地址采用eth0设备的IP§ADSL拨号的情况下,VPN虚拟设备绑定拨号设备ppp0隧道是什么形式隧道是什么形式§隧道在防火墙上存在的形式是VPN中的安全联盟数据库SADB与安全策略数据库SPDBSADB中保存着一个一个密码保险箱,每个密码箱有一个号码,这个号码叫安全参数索引SPI对本地子网到对方子网使用哪一个密码保险箱,它存在于SPDB中隧道是什么形式隧道是什么形式§建立完隧道将在安全联盟数据库中增加两条记录,一条向外发送时使用的密码保险箱,一条是验证与解密远程发过来的密码保险箱§建立完隧道将在SPDB数据库中增加一条记录,他将记录对本地保护子网到远程保护子网使用哪一个密码箱§还会在路由表中增加一条记录,将本地保护子网到远程保护子网的通信路由转发到VPN虚拟设备进行隧道处理察看察看SADB与与SPDB的方法的方法§在防火墙命令控制台上执行ipsec spi将显示SADB数据库的内容§在防火墙命令控制台上执行ipsec eroute将显示SPDB数据库的内容§在防火墙命令控制台上执行route –n,防火墙通过路由表控制将那些数据包交付隧道进行加密封装处理。
通过路由表可以看到去往目的子网的数据包的设备是ipsec0如果没有找到安全联盟,那么数据包不作处理交给防火墙安全策略处理隧道对本地子网到远程子网的处理隧道对本地子网到远程子网的处理§系统路由表将数据转交给VPN虚拟设备ipsec0上,所以防火墙2.3不能实现VPN的透明接入,防火墙后的路由或三层交换必须将本地子网到远程子网的通信路由到防火墙防火墙2.5通过防火墙规则将数据交给ipsec0隧道设备,可以实现透明接入§虚拟设备将查找安全策略数据库SPDB,找到使用SADB中的哪个密码箱(安全联盟)进行处理§根据安全联盟中的算法、密钥等信息对数据包进行加密封装也就是放到密码箱中发送给远程VPN隧道对远端子网到本地子网的处理隧道对远端子网到本地子网的处理§当VPN收到远程VPN发过来的密码箱,根据密码箱的号码,选用SADB中的安全参数验证密码箱的来源可靠,解密其中的信息§这样就得到了还原后的原始内网数据包,然后数据包重新入栈,就像防火墙又收到一个数据包一样处理防火墙然后将这个内网数据包交给目的主机,或内网的路由器、三层交换机隧道与防火墙安全策略的关系隧道与防火墙安全策略的关系§在本地到对端子网处理时路由到VPN虚拟设备之前,要受到防火墙安全策略的限制。
§在对端子网到本地子网处理完重新入栈时将受到防火墙安全策略的限制§如果在添加隧道时,选择了“自动启用防火墙规则”后,建立隧道时会自动将安全规则放开隧道的建立的过程隧道的建立的过程§防火墙加载隧道,向远程VPN发送协商消息§防火墙每加载一个隧道,系统增加了一个连接,并维护与此连接相关协商状态§使用IKE协商安全联盟SAIKE使用UDP的500端口进行密钥交换,如果进行NAT穿越,端口漂移到UDP的4500端口连接连接§连接包括固定IP地址或域名网关之间隧道、固定IP地址或域名网关与任意地址网关隧道、VPN客户端隧道分别是:§本地子网—本防火墙[证书身份]<==>远程防火墙[证书身份]—远程保护子网§本地子网—本防火墙[证书身份]<==>任意地址防火墙[证书身份]—远程保护子网§本地子网—本防火墙[证书身份]<==>VPN客户端[证书身份]—客户端地址所在范围§如果没有使用证书作为身份认证,证书身份部分就为空§执行ipsec auto –status可以看到防火强加载连接的情况任意地址任意地址VPN连接和连接和VPN客户端连接特点客户端连接特点§任意地址防火墙连接,可以接受任意防火墙地址的连接。
但是需要两个防火墙通过互相认证,并且本地、远端保护子网互相对应§VPN客户端连接是一个模板通过模板可以继承出连接实例,所以添加一条隧道,很多VPN客户端可以建立隧道每一个客户端都可以通过连接模板协商隧道,如果证书与本地保护子网、客户端所在地址范围都满足的话就可以建立VPN隧道一个证书可以多个VPN客户端使用第一阶段密钥交换协商安全机制第一阶段密钥交换协商安全机制§第一阶段密钥交换的第一步是协商一种安全机制,包括验证身份的方法、第一阶段加密算法、认证算法、密钥交换DH组等因为联想的防火墙与VPN客户端的提案都是使用默认,所以界面上不用配置实际的加密算法是3DES,认证算法是MD5,密钥交换DH组是第二组1024第一阶段第二、三步密钥交换与身份认证第一阶段第二、三步密钥交换与身份认证§密钥交换使用Diffie-Hellman进行密钥交换§使用预共享密钥做认证时,他的身份就是IP地址2.5支持野蛮模式,身份可以是野蛮模式用户名§使用证书做认证时,他的身份就是证书的信息§发送身份时,已经进行密钥交换,所以身份信息是加密的,同时发送身份的Hash第二阶段密钥交换第二阶段密钥交换§第二阶段进行安全机制交换、密钥交换、身份交换。
§安全机制交换主要是加密算法、认证算法、使用ESP或AH、是否压缩、密钥交换的DH组2.3没有对这些进行配置,使用的是3DES,MD5,DH1024,ESP不压缩的方式2.5可以进行配置§身份在这里是本地保护子网与、远程保护子网所以如果两端设置的保护子网稍有不同就不能建立隧道VPN客户端技术实现客户端技术实现§底层服务:IKE Service是一个实现IKE密钥交换的服务,在2000/XP的服务中可以看到§底层驱动:在NDIS中间层对数据包进行加密封装处理§配置管理程序:配置界面可以管理隧道连接,状态可以查看和删除安全联盟SA,日志可以查看密钥交换进行的状态VPN客户端的虚拟地址客户端的虚拟地址§VPN客户端可以设置一个虚拟内部IP地址,这样进入VPN内网的VPN客户端地址不再是VPN客户端的拨号公网地址,而是设置的内部地址§由于防火墙2.3还不支持野蛮模式密钥交换,所以无法使用VPN客户端的野蛮模式总结总结§VPN的技术实现其实很简单当您理解了上述的各个部分,如何实施VPN与分析问题就非常容易了谢谢大家谢谢大家。












