欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

实用技巧 利用IPSec来武装NAT服务

程序员文章站 2024-04-04 14:57:35
...

欢迎进入网络技术社区论坛,与200万技术人员互动交流 >>进入 NAT技术可以通过端口映射或者地址映射,让外部用户能够访问企业内部的应用服务器;也可以把内部计算机隐藏起来,以加强其安全性。无论是哪一种功能,NAT服务器都是通过数据包包头的地址与端口信息

欢迎进入网络技术社区论坛,与200万技术人员互动交流 >>进入

NAT技术可以通过端口映射或者地址映射,让外部用户能够访问企业内部的应用服务器;也可以把内部计算机隐藏起来,以加强其安全性。无论是哪一种功能,NAT服务器都是通过数据包包头的地址与端口信息来实现的。即当数据包从企业内网通过NAT服务器传到互联网的时候,NAT服务器会改变数据包包头中的信息。会把内网的IP地址信息转变为NAT服务器的公网IP地址。

  但是,此时如果网络管理员同时想用IPSec技术来加强NAT技术的安全,就会出现问题。因为IPSec机护送会检查数据包的包头信息。如果数据包的包头信息被修改的话,则IPSec会认为这个包被篡改过,而丢弃。也就是说IPSec安全技术是不允许变更数据包的包头。

  一、利用IPSec武装NAT服务时可能遇到的问题描述

  IPSec技术主要采用AH(传输模式)或者ESP(隧道模式)两种安全措施。传输模式会将所传送的信息签名。这个信息签名主要用来确认收到的信息没有被篡改,由此接收方可以确认信息确实是由索要通信的计算机发送过来的,从而防止欺骗攻击以及传送过程中信息被非法修改。隧道模式同传输模式一样,也会对所需要传送的信息签名。不过他与隧道模式有一个很大的不同,就是隧道模式会对信息进行加密。但是传输模式却不会对信息进行加密处理。但是无论采用哪种方式,IPSec都不允许在传输过程中对包头信息进行更改。

  如在传输模式下,IPSec会将整个数据包签名,也就是说在传输过程中若对数据包进行任何的更改,都会影响这个数据包的签名信息。所以如果NAT服务器改变数据包内的IP地址或者端口信息,IPSec服务器就会将认为这个数据包被非法篡改了,而将此数据包视为无效而丢弃掉。

  如ESP传输或者隧道模式中,虽然ESP传输模式的原始IP包头或者ESP隧道模式的新建隧道模式还是保留原状,并没有被IPSec技术签名或者加密。但是数据包中的端口信息会被加密,因而NAT服务器无法读取。所以虽然在这种情况下,NAT服务器可以改变在传输模式中的客户端IP地址,或者是隧道模式中的端点计算机的IP地址,但是却无法更改被IPSec技术加密过的端口信息。为此NAT服务器在此时也将无用武之地。

  虽然通讯计算机之间存在的所有路由器或交换机等网络设备都会将加密的数据包转发给它们的目的地。但是,如果这个传输路径中有防火墙、安全路由器或代理服务器,就可能不会转发IPSec技术加密过的数据包。此时必须配置这些设备以允许IPSec协议数据包经过。如果IPSec数据包未加密(即采用AH模式,只签名不加密),防火墙或安全路由器仍可以检查端口或数据包中的其他内容。如果这些数据包的内容在发出之后被修改,那么接收计算机就会检测出这种修改并丢弃这些数据包。

[1] [2] [3]

实用技巧 利用IPSec来武装NAT服务