Opc安全代理系统及其代理方法

文档序号:7664459阅读:179来源:国知局
专利名称:Opc安全代理系统及其代理方法
技术领域
本发明涉及信息系统安全技术,特别是涉及一种能满足较高的安全性隔离要求的0PC安全代理系统及其代理方法的技术。
背景技术
OPC规范概述在电力系统控制领域,各种现场总线控制系统正在日益发挥着重要的作用。然 而,由于可用于电力系统控制的现场总线系统种类繁多,其访问方式与接口均各不 相同,致使电力控制各应用系统日益复杂,任何应用需要访问任一种现场总线系统 都必须要按照该现场总线系统的规范开发一整套底层的驱动及通信模块,其控制模 式如图1所示。对这样的控制方式,各控制系统的软硬件升级与维护都非常不便。为此,0PC (OLE for Process Control )基金会提出了 0PC标准体系,该标准体系基于Microsoft 的0LE/C0M/DC0M技术为基础,釆用客户/服务器模式,基于Windows的客户端可以 通过标准的OPC接口访问位于各控制系统的OPC服务器接口。采用这种模式,各现 场控制系统厂商只需要开发一个标准的OPC服务器接口,即可屏蔽各种复杂的控制 系统底层差异,为客户端提供统一的服务接口,而客户端通过标准的OPC接口就可 以实现对异种控制系统的访问。OPC提供了一系列的规范,在具体的实现过程中,用户可以根据需要使用相应的规范。其中数据访问规范提供给用户访问实时过程数据的方法;报警和事件规范提供了一种由服务器程序将现场的事件或报警通知客户 程序的机制;历史数据存取规范用来提供用户存储的过程数据存档文件、数据库或远程终端设备中的历史以及分析这些历史过程数据的方法。0PC规范很好的解决了 客户端对异种控制系统的访问,在电力系统得到了广泛的应用。其控制访问模式如 图2所示。在电力生产系统环境中,现场总线控制系统(0PC服务器端) 一般位于生产内网 中,有很高的安全性要求,而部分OPC客户端系统则可能需要位于生产管理层外网, 该网可能与外网相通。现有的OPC标准体系对跨接在两个安全性要求不同的网间运 行并没有完整的安全性措施,此类应用将产生很大的安全性隐患。二、现有技术解决方案及缺陷为解决在安全性要求不同的内外网间在保证安全的情况下保持适当的信息互通 要求,目前的常规做法是使用防火墙或隔离网闸。通用的防火墙只实现对TCP连接 会话的控制,不提供强安全性的用户认证手段, 一般只用于两个不同网络边界之间 的访问控制。隔离网闸可以切断内外网的TCP/IP连接,提供很强的安全性隔离,但 目前的隔离网闸都只提供诸如Web访问、FTP文件传输、电子邮件收发等通用的网 络服务, 一般少有提供强安全用户认证手段,目前尚未见到有支持OPC协议的隔离 网闸。发明内容针对上述现有技术中存在的缺陷,本发明所要解决的技术问题是提供一种能保 持生产系统内外网间各种授权OPC透明访问的同时,满足较高的安全性隔离要求的, 具有安全网关功能的0PC安全代理系统及其代理方法。为了解决上述技术问题,本发明所提供的一种0PC安全代理系统,其特征在于, 包括0PC安全代理服务器、至少一个分别连接0PC安全代理服务器的0PC客户端和 至少一个分别连接0PC安全代理服务器的0PC服务器;其中作为安全网关,0PC安 全代理服务器跨越用户内部具有不同安全性要求的内外网;是整个系统的关键;该安全代理服务器采用Linux操作系统平台并经过严格裁剪和重新编译,以确保系统 不存在已知的安全漏洞;所述安全代理服务器包括互相连接的基于USBkey的X. 509 身份认证及密钥交换模块、OPC请求权限验证及代理转发模块、数据加密模块等。进一步的,所述安全代理服务器的基于USBkey的X. 509身份认证及密钥交换模 块设有一个符合X.509标准的CA及目录服务器用以签发和发布各使用者的数字证 书;系统中每个用户使用基于USB接口的密钥载体USBkey产生和保存个人的私人密 钥以及数字证书,在需要使用用户的私人密钥进行身份鉴别和签名时,整个过程在 USBkey内完成。其私人密钥一旦产生,就不可读、不可拆解、永不输出的保存在 USBkey中,从物理上保证了私人密钥的安全,而USBkey则由PIN码保护。进一步的,所述OPC安全代理系统使用X. 509建议的三向鉴别实现用户和安全 代理服务器之间的身份鉴别和会话密钥交换。进一步的,所述OPC安全代理系统在客户端采用基于Windows平台Winsock中 "服务提供者接口 (Service Provider Interface, SPI)"网络封包截获技术截获 原0PC客户端发往0PC服务器的请求,并重定向至0PC安全代理服务器,不用修改 原有OPC客户端程序,即可通过OPC安全代理服务器透明地安全访问原有生产系统 OPC服务器。进一步的,所述OPC安全代理系统的所有请求必须通过OPC安全代理服务器转 发;在接收到客户端转发的OPC请求后,OPC安全代理服务器对数据包解密并恢复 客户端OPC请求,根据预设的访问权限与控制列表,确定该客户是否拥有相应OPC 操作权限,决定代理或丢弃该OPC请求。本发明所提供的一种OPC安全代理系统的代理方法,流程为1) 开始;2) 建立访问规则列表3) 建立端口映射表;4) 开始在命令端口监听;5) 有新的连接请求?有则转至6);否则转至9);6) 采用^ 509协议判断用户是否为合法用户?是则转至7);否则转至8);7) 与客户端完成密钥交换,并返回可访问资源列表给客户端;转至5);8) 拒绝连接;转至5);9) 有新的访问请求?有则转至10);否则转至5);10) 是否为合法用户?是则转至12);否则转至ll);11) 记录并拒绝访问;转至5);12) 解密数据包;13) 是否有权限?是则转至15);否则转至14);14) 记录并拒绝访问;转至5);15) 转发给服务器;16) 等待服务器的响应;17) 响应结果加密;18) 返回给客户端;转至5)。利用本发明提供的0PC安全代理系统及其代理方法,由于本发明使用基于USBkey的X.509安全身份认证、客户端网络封包截获、0PC请求重定向及数据加密、 0PC代理与权限分析等技术,在不用修改原有0PC客户端与0PC服务器端程序即可 保持生产系统内外网间各种授权OPC透明访问的同时,满足较高的安全性隔离要求。


图1是现有技术中无0PC的控制访问模式框图;图2是现有技术中0PC控制访问模式框图;图3是本发明实施例0PC安全代理系统构架图;图4是本发明实施例OPC安全代理服务器的工作流程框图。
具体实施方式
以下结合

对本发明的实施例作进一步详细描述,但本实施例并不用于 限制本发明,凡是采用本发明的相似结构及其相似变化,均应列入本发明的保护范 围。如图3所示,本发明实施例所提供的一种OPC安全代理系统,包括0PC安全代 理服务器、多个分别连接OPC安全代理服务器的OPC客户端和多个分别连接OPC安 全代理服务器的OPC服务器;其中OPC安全代理服务器跨越企业内具有不同安全性 要求的内外网,担当了一个安全网关的角色,是整个系统的关键。该安全代理服务 器采用Linux操作系统平台并经过严格裁剪和重新编译,以确保系统不存在己知的 安全漏洞。整个安全代理服务器由互相连接的基于USBkey的X. 509身份认证及密钥 交换模块、OPC请求权限验证及代理转发模块、数据加密模块等组成。如图4所示,本发明的OPC安全代理系统的代理方法,即服务器的工作流程为1) 开始;2) 建立访问规则列表;3) 建立端口映射表;4) 开始在命令端口监听;5) 有新的连接请求?有则转至6);否则转至9);6) 采用1 509协议判断用户是否为合法用户?是则转至7);否则转至8);7) 与客户端完成密钥交换,并返回可访问资源列表给客户端;转至5);8) 拒绝连接;转至5);9) 有新的访问请求?有则转至10);否则转至5);10) 是否为合法用户?是则转至12);否则转至ll):11) 记录并拒绝访问;转至5);12) 解密数据包;13) 是否有权限?是则转至15);否则转至14);14) 记录并拒绝访问;转至5);15) 转发给服务器;16) 等待服务器的响应;17) 响应结果加密;18) 返回给客户端;转至5)。本发明的0PC安全代理系统中,安全代理服务器设有基于USBkey的X. 509身份 认证及密钥交换模块。用户身份认证是保证整个系统安全的关键,其功能包括客户 端对使用者的身份确认及安全代理服务器对客户端的身份认证。本系统采用了基于 PKI体系结构的X.509数字证书作为用户认证的标识。PKI (Public Key Infrastructure)是目前广泛采用的基于公开密钥算法实现数字签名、身份鉴别与 密钥交换的基础技术构架,通过X.509数字证书的颁发、鉴别、更新、撤销等行为 来管理、鉴别网络实体的身份。在该体系结构中, 一个可信任的证书发布方CA对每 个人的身份以某种方式予以确认,并向其颁布符合X.509标准格式的数字证书,证 书包含有该用户的唯一标识、公开密钥信息、序列号、有效时间、颁布者(即CA) 的标识等要素,并由CA数字签名,以保证证书的完整性和可鉴别性。证书保持在 CA的目录服务器上可以由任何人查阅,同时目录上还保持一份证书撤销表,使CA 可以随时应要求而撤销某张证书。本发明的OPC安全代理系统建立了一个符合X. 509标准的CA及目录服务器用以 签发和发布各使用者的数字证书。为了保持系统的高安全性,系统中每个用户使用 基于USB接口的密钥载体USBkey产生和保存个人的私人密钥以及数字证书,在需要 使用用户的私人密钥进行身份鉴别和签名时,整个过程在USBkey内完成,其私人密钥一旦产生,就不可读、不可拆解、永不输出的保存在USBkey中,从物理上保证了 私人密钥的安全,而USBkey则由PIN码保护。本发明的0PC安全代理系统使用X. 509建议的三向鉴别实现用户和安全代理服 务器之间的身份鉴别和会话密钥交换。三向鉴别实现了客户与安全代理服务器之间 相互的鉴别并且完成客户与安全服务器之间本次会话所使用对称密钥的交换,同时 可以避免由于鉴别双方因时钟误差可能导致的中间人重放攻击。客户端网络封包截获、OPC请求重定向及数据加密本发明的0PC安全代理系统在客户端采用基于Windows平台Winsock中"服务 提供者接口 (Service Provider Interface, SPI)"网络封包截获技术截获原OPC 客户端发往OPC服务器的请求,并重定向至OPC安全代理服务器,不用修改原有OPC 客户端程序,即可通过OPC安全代理服务器透明地安全访问原有生产系统OPC服务 器。为保证传输安全,本发明可选三重DES或AES对称加密算法,采用密文反馈(CBC) 方式对所传输报文加密,可以有效防止重放攻击。OPC代理与权限分析为了隔离内网和外网,所有请求必须通过OPC安全代理服务器转发。在接收到 客户端转发的OPC请求后,OPC安全代理服务器对数据包解密并恢复客户端OPC请 求,根据预设的访问权限与控制列表,确定该客户是否拥有相应OPC操作权限,决 定代理或丢弃该OPC请求。如果为合法OPC请求,则由OPC代理模块向目标OPC服 务器代理发送该请求,并按需要加密后向客户端转发应答数据。
权利要求
1. 一种OPC安全代理系统,其特征在于,包括OPC安全代理服务器、至少一个分别连接OPC安全代理服务器的OPC客户端和至少一个分别连接OPC安全代理服务器的OPC服务器;其中作为安全网关,OPC安全代理服务器跨越用户内具有不同安全性要求的内外网;该安全代理服务器采用Linux操作系统平台;所述安全代理服务器包括互相连接的基于USBkey的X.509身份认证及密钥交换模块、OPC请求权限验证及代理转发模块、数据加密模块。
2、 根据权利要求1所述的0PC安全代理系统,其特征在于,所述安全代理服务 器的基于USBkey的X. 509身份认证及密钥交换模块设有一个符合X. 509标准的CA 及目录服务器用以签发和发布各使用者的数字证书;系统中每个用户使用基于USB 接口的密钥载体USBkey产生和保存个人的私人密钥以及数字证书,在需要使用用户 的私人密钥进行身份鉴别和签名时,整个过程在USBkey内完成。
3、 根据权利要求1所述的OPC安全代理系统,其特征在于,所述OPC安全代理 系统使用X.509建议的三向鉴别实现用户和安全代理服务器之间的身份鉴别和会话 密钥交换。
4、 根据权利要求1所述的0PC安全代理系统,其特征在于,所述OPC安全代理 系统在客户端采用基于Windows平台Winsock中"服务提供者接口"网络封包截获 技术截获原OPC客户端发往0PC服务器的请求,并重定向至OPC安全代理服务器, 即能通过OPC安全代理服务器透明地安全访问原有生产系统OPC服务器。
5、 根据权利要求1所述的0PC安全代理系统,其特征在于,所述OPC安全代理 系统的所有请求必须通过OPC安全代理服务器转发;在接收到客户端转发的OPC请 求后,OPC安全代理服务器对数据包解密并恢复客户端OPC请求,根据预设的访问 权限与控制列表,确定该客户是否拥有相应OPC操作权限,决定代理或丢弃该OPC 请求。6、 一种权利要求l所述的OPC安全代理系统的代理方法,其特征在于,方法的流程包括1) 开始;2) 建立访问规则列表;3) 建立端口映射表;4) 开始在命令端口监听;5) 有新的连接请求?有则转至6);否则转至9);6) 是否为合法用户?是则转至7);否则转至8);7) 登记并返回可访问资源列表;转至5);8) 拒绝连接;转至5);9) 有新的访问请求?有则转至10);否则转至5);10) 是否为合法用户?是则转至12);否则转至ll);11) 记录并拒绝访问;转至5);12) 解密数据包13) 是否有权限?是则转至15);否则转至14);14) 记录并拒绝访问;转至5);15) 转发给服务器;16) 等待服务器的响应;17) 响应结果加密;18) 返回给客户端;转至5)。
全文摘要
本发明公开一种OPC安全代理系统及其代理方法,涉及信息系统安全技术领域;所要解决的是OPC系统安全性的技术问题;该OPC安全代理系统,包括OPC安全代理服务器、至少一个分别连接OPC安全代理服务器的OPC客户端和至少一个分别连接OPC安全代理服务器的OPC服务器;其中作为安全网关,OPC安全代理服务器跨越用户内部具有不同安全性要求的内外网;该安全代理服务器采用Linux操作系统平台;所述安全代理服务器包括互相连接的基于USBkey的X.509身份认证及密钥交换模块、OPC请求权限验证及代理转发模块、数据加密模块。本发明公开具有能保持生产系统内外网间各种授权OPC透明访问的同时,满足较高的安全性隔离要求的特点。
文档编号H04L29/06GK101247391SQ20071017348
公开日2008年8月20日 申请日期2007年12月28日 优先权日2007年12月28日
发明者何光营, 何鹏飞, 魏国强 申请人:上海电力学院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1