一、什么是网闸
网闸技术的需求来自内网与外网数据互通的要求,比如政府的电子政务是对公众服务,与互联网连通,而内网的政府办公网络,由于保密的要求,内网若与网连通,则面临来自公网的各种威胁。安全专家给出的建议是:由于目前的安全技术,无论防火墙、UTM等防护系统都不能保证攻击的一定阻断,入侵检测等监控系统也不能保证入侵行为完全捕获,所以最安全的方式就是物理的分开,所以在公安部的技术要求中,要求电子政务的内、外网络之间“物理隔离”。没有连接,来自外网对内网的攻击就无从谈起。
但是,网络的物理隔离,给数据的通讯带来很多不便,比如工作人员出差只能接入互联网,要取得内网的文件就没有办法,只能让办公室的人把文件放在外网上。另外,内网办公系统需要从外网提供的统计数据,由于服务隔离,数据的获取也很困难。因此,随着网络业务的日益成熟,数据交换的需求提议强烈。
最初的解决办法就是人工的“传递”,用U盘或光盘在内外网之间倒换数据。随着业务的增多,数据量的扩大,人工的方式显然成为很多业务的瓶颈,在内、外网之间建立一个既符合“物理隔离”安全要求,又能进行数据交换的设备或解决方案,这就诞生了网闸技术。
网闸实现的是个安全的概念,与防火墙等网络安全设备不同的地方是他阻断通讯的连接,只完成数据的交换,没有业务的连接,攻击就没有了载体,如同网络的“物理隔离”。网闸其实就是模拟人工数据倒换,利用中间数据倒换区,分时地与内外网连接,但一个时刻只与一个网络连接,保持“物理的分离”,实现数据的倒换。这就象从前长江上的摆渡船,既没有“物理的连接”大桥,也实现了货物的交换。
其实,除了电子政务内外网的交换需求,其他各种涉密网络与公用网络的互联都有这种需求,比如:广电的编播网和互联网、电力的控制网与办公网、海关的运行网和报关查询网络、银行的业务网与网上银行网络等等。
二、网闸的实现原理
网闸是实现两个相互业务隔离的网络之间的数据交换,通用的网闸模型设计一般分三个基本部分:
Ø 内网处理单元
Ø 外网处理单元
Ø 隔离与交换控制控制单元
三个单元都要求其软件的操作系统是安全的,也就是采用非通用的操作系统,或改造后的专用操作系统。一般为Unix BSD或Linux的变种版本,或者其他是嵌入式操作系统VxWorks等,但都要对底层不需要的协议、服务删除,使用的协议优化改造,增加安全特性,同时提高效率。
![](https://i-blog.csdnimg.cn/blog_migrate/9a586d9071ea552ed1eb895a119995ab.png)
Ø 内网处理单元:包括内网接口单元与内网数据缓冲区。接口部分负责与内网的连接,并终止内网用户的网络连接,对数据进行病毒检测、防火墙、入侵防护等安全检测后剥离出“纯数据”,作好交换的准备,也完成来自内网对用户身份的确认,确保数据的安全通道;数据缓冲区是存放并调度剥离后的数据,负责与隔离交换单元的数据交换。
Ø 外网处理单元:与内网处理单元功能相同,但处理的是外网连接。
Ø 隔离与交换控制单元:是网闸隔离控制的摆渡控制,控制交换通道的开启与关闭。控制单元中包含一个数据交换区,就是数据交换中的摆渡船。对交换通道的控制的方式目前有两种技术,摆渡开关与通道控制。摆渡开关是电子倒换开关,让数据交换区与内外网在任意时刻的不同时连接,形成空间间隔GAP,实现物理隔离。通道方式是在内外网之间改变通讯模式,中断了内外网的直接连接,采用私密的通讯手段形成内外网的物理隔离。该单元中有一个数据交换区,作为交换数据的中转。
在内外网处理单元中,接口处理与数据缓冲之间的通道,称内部通道1,缓冲区与交换区之间的通道,称内部通道2。对内部通道的开关控制,就可以形成内外网的隔离。模型中的用中间的数据交换区摆渡数据,称为三区模型;摆渡时,交换区的总线分别与内、外网缓冲区连接,也就是内部通道2的控制,完成数据交换。
还有一种方式是取消数据交换区,分别交互控制内部通道1与内部通道2,形成二区模型。
二区模型的数据摆渡分两次:先是连接内、外网数据缓冲区的内部通道2断开,内部通道1连接,内外网接口单元将要交换的数据接收过来,存在各自的缓冲区中,完成一次摆渡。然后内部通道1断开,内部通道2连接,内外网的数据缓冲区与各自的接口单元断开后,两个缓冲区连接,分别把要交换的数据交换到对方的缓冲区中,完成数据的二次摆渡。
![](https://i-blog.csdnimg.cn/blog_migrate/b380aa2410484469ab2f8419fb535b51.png)
内部通道一般也采用非通用网络的通讯连接,让来自两端的可能攻击终止于接口单元,从而增强网闸的隔离效果。所以内部通道一般选用网络、SCSI、IDE、USB、PCI等方式。
网闸设计的目的,是隔离内外网业务连接的前提下,实现安全的数据交换。也就是安全专家描述的:协议落地,数据交换。
三、隔离概念的变化
严格地讲,物理隔离因该没有物理通讯连接,也包括无线通讯,消除了通讯的可能,入侵就没有了载体,但同时数据交换也成了难题。
网闸在发展过程中,对隔离的定义也经历了几个过程:
1. 物理隔离:模拟人工交换的过程,必须在内外网的节点机上进行数据交换,不能实现网络上任意计算机的数据交换。
2. 网络隔离:在简单交换的基础上,对文件传输协议的数据打包交换,实现了网络上任意信息点的数据交换。
3. 协议隔离:能对文件协议代理,就可以对其他应用协议代理,如Http,实现了应用数据的直接交换。
物理隔离是指只有文件级交换的网闸,网络隔离与协议隔离是隔离概念的进一步弱化,根据要隔离网络的安全性要求,选择不同的隔离技术。但把协议隔离当作物理隔离保证安全就成了网闸产品技术的误区了。
四、网闸设计中的误区
网闸利用隔离业务连接阻断用户业务连接,完成数据的交换。但是由于网闸两端的网络出口,直接连在内外网的节点上,没有其他的中间代理,各种应用协议连接直接到达网闸的接口,从用户角度来讲,看到的是一个内外网互通服务,好像在内外网间建立了连接,只是时延大一些,也就是说建立了逻辑的连接。网闸好像是一个网络堡垒机。
![](https://i-blog.csdnimg.cn/blog_migrate/ba76d4eb7bc5996fba2cee700c5f951f.png)