CN101247391B - Opc安全代理系统及其代理方法 - Google Patents
Opc安全代理系统及其代理方法 Download PDFInfo
- Publication number
- CN101247391B CN101247391B CN 200710173482 CN200710173482A CN101247391B CN 101247391 B CN101247391 B CN 101247391B CN 200710173482 CN200710173482 CN 200710173482 CN 200710173482 A CN200710173482 A CN 200710173482A CN 101247391 B CN101247391 B CN 101247391B
- Authority
- CN
- China
- Prior art keywords
- opc
- server
- safety
- security
- proxy server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开一种OPC安全代理系统及其代理方法,涉及信息系统安全技术领域;所要解决的是OPC系统安全性的技术问题;该OPC安全代理系统,包括OPC安全代理服务器、至少一个分别连接OPC安全代理服务器的OPC客户端和至少一个分别连接OPC安全代理服务器的OPC服务器;其中作为安全网关,OPC安全代理服务器跨越用户内部具有不同安全性要求的内外网;该安全代理服务器采用Linux操作系统平台;所述安全代理服务器包括互相连接的基于USBkey的X.509身份认证及密钥交换模块、OPC请求权限验证及代理转发模块、数据加密模块。本发明公开具有能保持生产系统内外网间各种授权OPC透明访问的同时,满足较高的安全性隔离要求的特点。
Description
技术领域
本发明涉及信息系统安全技术,特别是涉及一种能满足较高的安全性隔离要求的OPC安全代理系统及其代理方法的技术。
背景技术
OPC规范概述:
在电力系统控制领域,各种现场总线控制系统正在日益发挥着重要的作用。然而,由于可用于电力系统控制的现场总线系统种类繁多,其访问方式与接口均各不相同,致使电力控制各应用系统日益复杂,任何应用需要访问任一种现场总线系统都必须要按照该现场总线系统的规范开发一整套底层的驱动及通信模块,其控制模式如图1所示。
对这样的控制方式,各控制系统的软硬件升级与维护都非常不便。为此,OPC(OLE for Process Control)基金会提出了OPC标准体系,该标准体系基于Microsoft的OLE/COM/DCOM技术为基础,采用客户/服务器模式,基于Windows的客户端可以通过标准的OPC接口访问位于各控制系统的OPC服务器接口。采用这种模式,各现场控制系统厂商只需要开发一个标准的OPC服务器接口,即可屏蔽各种复杂的控制系统底层差异,为客户端提供统一的服务接口,而客户端通过标准的OPC接口就可以实现对异种控制系统的访问。OPC提供了一系列的规范,在具体的实现过程中,用户可以根据需要使用相应的规范。其中数据访问规范提供给用户访问实时过程数据的方法;报警和事件规范提供了一种由服务器程序将现场的事件或报警通知客户程序的机制;历史数据存取规范用来提供用户存储的过程数据存档文件、数据库或远程终端设备中的历史以及分析这些历史过程数据的方法。OPC规范很好的解决了客户端对异种控制系统的访问,在电力系统得到了广泛的应用。其控制访问模式如图2所示。
在电力生产系统环境中,现场总线控制系统(OPC服务器端)一般位于生产内网中,有很高的安全性要求,而部分OPC客户端系统则可能需要位于生产管理层外网,该网可能与外网相通。现有的OPC标准体系对跨接在两个安全性要求不同的网间运行并没有完整的安全性措施,此类应用将产生很大的安全性隐患。
二、现有技术解决方案及缺陷
为解决在安全性要求不同的内外网间在保证安全的情况下保持适当的信息互通要求,目前的常规做法是使用防火墙或隔离网闸。通用的防火墙只实现对TCP连接会话的控制,不提供强安全性的用户认证手段,一般只用于两个不同网络边界之间的访问控制。隔离网闸可以切断内外网的TCP/IP连接,提供很强的安全性隔离,但目前的隔离网闸都只提供诸如Web访问、FTP文件传输、电子邮件收发等通用的网络服务,一般少有提供强安全用户认证手段,目前尚未见到有支持OPC协议的隔离网闸。
发明内容
针对上述现有技术中存在的缺陷,本发明所要解决的技术问题是提供一种能保持生产系统内外网间各种授权OPC透明访问的同时,满足较高的安全性隔离要求的,具有安全网关功能的OPC安全代理系统及其代理方法。
为了解决上述技术问题,本发明所提供的一种OPC安全代理系统,其特征在于,包括OPC安全代理服务器、至少一个分别连接OPC安全代理服务器的OPC客户端和至少一个分别连接OPC安全代理服务器的OPC服务器;其中作为安全网关,OPC安全代理服务器跨越用户内部具有不同安全性要求的内外网;是整个系统的关键;该安全代理服务器采用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)”网络封包截获技术截获原OPC客户端发往OPC服务器的请求,并重定向至OPC安全代理服务器,不用修改原有OPC客户端程序,即可通过OPC安全代理服务器透明地安全访问原有生产系统OPC服务器。
进一步的,所述OPC安全代理系统的所有请求必须通过OPC安全代理服务器转发;在接收到客户端转发的OPC请求后,OPC安全代理服务器对数据包解密并恢复客户端OPC请求,根据预设的访问权限与控制列表,确定该客户是否拥有相应OPC操作权限,决定代理或丢弃该OPC请求。
本发明所提供的一种OPC安全代理系统的代理方法,流程为:
1)开始;
2)建立访问规则列表;
3)建立端口映射表;
4)开始在命令端口监听;
5)有新的连接请求?有则转至6);否则转至9);
6)采用X.509协议判断用户是否为合法用户?是则转至7);否则转至8);
7)与客户端完成密钥交换,并返回可访问资源列表给客户端;转至5);
8)拒绝连接;转至5);
9)有新的访问请求?有则转至10);否则转至5);
10)是否为合法用户?是则转至12);否则转至11);
11)记录并拒绝访问;转至5);
12)解密数据包;
13)是否有权限?是则转至15);否则转至14);
14)记录并拒绝访问;转至5);
15)转发给服务器;
16)等待服务器的响应;
17)响应结果加密;
18)返回给客户端;转至5)。
利用本发明提供的OPC安全代理系统及其代理方法,由于本发明使用基于USBkey的X.509安全身份认证、客户端网络封包截获、OPC请求重定向及数据加密、OPC代理与权限分析等技术,在不用修改原有OPC客户端与OPC服务器端程序即可保持生产系统内外网间各种授权OPC透明访问的同时,满足较高的安全性隔离要求。
附图说明
图1是现有技术中无OPC的控制访问模式框图;
图2是现有技术中OPC控制访问模式框图;
图3是本发明实施例OPC安全代理系统构架图;
图4是本发明实施例OPC安全代理服务器的工作流程框图。
具体实施方式
以下结合附图说明对本发明的实施例作进一步详细描述,但本实施例并不用于限制本发明,凡是采用本发明的相似结构及其相似变化,均应列入本发明的保护范围。
如图3所示,本发明实施例所提供的一种OPC安全代理系统,包括OPC安全代理服务器、多个分别连接OPC安全代理服务器的OPC客户端和多个分别连接OPC安全代理服务器的OPC服务器;其中OPC安全代理服务器跨越企业内具有不同安全性要求的内外网,担当了一个安全网关的角色,是整个系统的关键。该安全代理服务器采用Linux操作系统平台并经过严格裁剪和重新编译,以确保系统不存在已知的安全漏洞。整个安全代理服务器由互相连接的基于USBkey的X.509身份认证及密钥交换模块、OPC请求权限验证及代理转发模块、数据加密模块等组成。
如图4所示,本发明的OPC安全代理系统的代理方法,即服务器的工作流程为:
1)开始;
2)建立访问规则列表;
3)建立端口映射表;
4)开始在命令端口监听;
5)有新的连接请求?有则转至6);否则转至9);
6)采用X.509协议判断用户是否为合法用户?是则转至7);否则转至8);
7)与客户端完成密钥交换,并返回可访问资源列表给客户端;转至5);
8)拒绝连接;转至5);
9)有新的访问请求?有则转至10);否则转至5);
10)是否为合法用户?是则转至12);否则转至11);
11)记录并拒绝访问;转至5);
12)解密数据包;
13)是否有权限?是则转至15);否则转至14);
14)记录并拒绝访问;转至5);
15)转发给服务器;
16)等待服务器的响应;
17)响应结果加密;
18)返回给客户端;转至5)。
本发明的OPC安全代理系统中,安全代理服务器设有基于USBkey的X.509身份认证及密钥交换模块。用户身份认证是保证整个系统安全的关键,其功能包括客户端对使用者的身份确认及安全代理服务器对客户端的身份认证。本系统采用了基于PKI体系结构的X.509数字证书作为用户认证的标识。PKI(Public KeyInfrastructure)是目前广泛采用的基于公开密钥算法实现数字签名、身份鉴别与密钥交换的基础技术构架,通过X.509数字证书的颁发、鉴别、更新、撤销等行为来管理、鉴别网络实体的身份。在该体系结构中,一个可信任的证书发布方CA对每个人的身份以某种方式予以确认,并向其颁布符合X.509标准格式的数字证书,证书包含有该用户的唯一标识、公开密钥信息、序列号、有效时间、颁布者(即CA)的标识等要素,并由CA数字签名,以保证证书的完整性和可鉴别性。证书保持在CA的目录服务器上可以由任何人查阅,同时目录上还保持一份证书撤销表,使CA可以随时应要求而撤销某张证书。
本发明的OPC安全代理系统建立了一个符合X.509标准的CA及目录服务器用以签发和发布各使用者的数字证书。为了保持系统的高安全性,系统中每个用户使用基于USB接口的密钥载体USBkey产生和保存个人的私人密钥以及数字证书,在需要使用用户的私人密钥进行身份鉴别和签名时,整个过程在USBkey内完成,其私人密钥一旦产生,就不可读、不可拆解、永不输出的保存在USBkey中,从物理上保证了私人密钥的安全,而USBkey则由PIN码保护。
本发明的OPC安全代理系统使用X.509建议的三向鉴别实现用户和安全代理服务器之间的身份鉴别和会话密钥交换。三向鉴别实现了客户与安全代理服务器之间相互的鉴别并且完成客户与安全服务器之间本次会话所使用对称密钥的交换,同时可以避免由于鉴别双方因时钟误差可能导致的中间人重放攻击。
客户端网络封包截获、OPC请求重定向及数据加密:
本发明的OPC安全代理系统在客户端采用基于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服务器代理发送该请求,并按需要加密后向客户端转发应答数据。
Claims (6)
1.一种用于过程控制的对象连接与嵌入OPC安全代理系统,其特征在于,包括OPC安全代理服务器、至少一个分别连接OPC安全代理服务器的OPC客户端和至少一个分别连接OPC安全代理服务器的OPC服务器;其中作为安全网关,OPC安全代理服务器跨越用户内具有不同安全性要求的内外网;该OPC安全代理服务器采用Linux操作系统平台;所述OPC安全代理服务器包括互相连接的基于USBkey的X.509身份认证及密钥交换模块、OPC请求权限验证及代理转发模块、数据加密模块。
2.根据权利要求1所述的OPC安全代理系统,其特征在于,所述OPC安全代理服务器的基于USBkey的X.509身份认证及密钥交换模块设有一个符合X.509标准的证书授权及目录服务器用以签发和发布各使用者的数字证书;系统中每个用户使用基于USB接口的密钥载体USBkey产生和保存个人的私人密钥以及数字证书,在需要使用用户的私人密钥进行身份鉴别和签名时,整个过程在USBkey内完成。
3.根据权利要求1所述的OPC安全代理系统,其特征在于,所述OPC安全代理系统使用X.509建议的三向鉴别实现用户和OPC安全代理服务器之间的身份鉴别和会话密钥交换。
4.根据权利要求1所述的OPC安全代理系统,其特征在于,所述OPC安全代理系统在客户端采用基于Windows平台Winsock中“服务提供者接口”网络封包截获技术截获原OPC客户端发往OPC服务器的请求,并重定向至OPC安全代理服务器,即能通过OPC安全代理服务器透明地安全访问原有生产系统OPC服务器。
5.根据权利要求1所述的OPC安全代理系统,其特征在于,所述OPC安全代理系统的所有请求必须通过OPC安全代理服务器转发;在接收到客户端转发的OPC请求后,OPC安全代理服务器对数据包解密并恢复客户端OPC请求,根据预设的访问权限与控制列表,确定该客户是否拥有相应OPC操作权限,决定代理或丢弃该OPC请求。
6.一种权利要求1所述的OPC安全代理系统的代理方法,其特征在于,方法的流程包括:
1)开始;
2)建立访问规则列表;
3)建立端口映射表;
4)开始在命令端口监听;
5)有新的连接请求?有则转至6);否则转至9);
6)是否为合法用户?是则转至7);否则转至8);
7)登记并返回可访问资源列表;转至5);
8)拒绝连接;转至5);
9)有新的访问请求?有则转至10);否则转至5);
10)是否为合法用户?是则转至12);否则转至11);
11)记录并拒绝访问;转至5);
12)解密数据包;
13)是否有权限?是则转至15);否则转至14);
14)记录并拒绝访问;转至5);
15)转发给服务器;
16)等待服务器的响应;
17)响应结果加密;
18)返回给客户端;转至5)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710173482 CN101247391B (zh) | 2007-12-28 | 2007-12-28 | Opc安全代理系统及其代理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710173482 CN101247391B (zh) | 2007-12-28 | 2007-12-28 | Opc安全代理系统及其代理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101247391A CN101247391A (zh) | 2008-08-20 |
CN101247391B true CN101247391B (zh) | 2013-03-06 |
Family
ID=39947591
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710173482 Expired - Fee Related CN101247391B (zh) | 2007-12-28 | 2007-12-28 | Opc安全代理系统及其代理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101247391B (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9003553B2 (en) * | 2009-09-10 | 2015-04-07 | Symantec Corporation | Viewing content under enterprise digital rights management without a client side access component |
CN101853224B (zh) * | 2010-04-21 | 2014-12-10 | 中兴通讯股份有限公司 | 一种Linux系统数据卡设备端口识别的方法及装置 |
CN102402557A (zh) * | 2010-09-17 | 2012-04-04 | 张健 | 一种突破多数据库并存限制的web信息管理系统集成方法 |
CN103139138B (zh) * | 2011-11-22 | 2016-02-03 | 飞塔公司 | 一种基于客户端检测的应用层拒绝服务防护方法及系统 |
CN103441926B (zh) * | 2013-08-27 | 2016-12-28 | 西北工业大学 | 数控机床网安全网关系统 |
CN103685055B (zh) * | 2013-12-25 | 2017-06-16 | 深圳供电局有限公司 | 电力系统跨区隔离数据均衡传输方法及跨区隔离器 |
CN104660593B (zh) * | 2015-02-09 | 2017-10-10 | 西北工业大学 | Opc安全网关数据包过滤方法 |
CN104753936B (zh) * | 2015-03-24 | 2017-10-10 | 西北工业大学 | Opc安全网关系统 |
CN104767748B (zh) * | 2015-03-30 | 2017-10-10 | 西北工业大学 | Opc服务器安全防护系统 |
CN105471833B (zh) | 2015-05-14 | 2019-04-16 | 瑞数信息技术(上海)有限公司 | 一种安全通讯方法和装置 |
CN105471866A (zh) * | 2015-11-23 | 2016-04-06 | 深圳市联软科技有限公司 | 一种移动应用的保护方法和装置 |
CN105721499A (zh) * | 2016-04-07 | 2016-06-29 | 周文奇 | 一种工业通信安全网关的信息安全系统 |
CN106100836B (zh) * | 2016-08-09 | 2019-02-12 | 中京天裕科技(北京)有限公司 | 一种工业用户身份认证和加密的方法及系统 |
CN106790393B (zh) * | 2016-11-25 | 2019-08-13 | 国信优易数据有限公司 | 一种数据定向传送系统 |
CN108123922A (zh) * | 2016-11-30 | 2018-06-05 | 西门子公司 | 安全处理方法、装置 |
CN108551400B (zh) * | 2018-04-01 | 2022-01-11 | 南京捷安信息科技有限公司 | 一种便携式运维堡垒机系统 |
CN108989302B (zh) * | 2018-07-04 | 2021-06-22 | 光大环保技术研究院(南京)有限公司 | 一种基于密钥的opc代理连接系统和连接方法 |
CN109150902B (zh) * | 2018-09-25 | 2021-03-30 | 山东维平信息安全测评技术有限公司 | 一种基于家庭网关系统的加密装置及其加密方法 |
CN109257391A (zh) * | 2018-11-30 | 2019-01-22 | 北京锐安科技有限公司 | 一种访问权限开放方法、装置、服务器及存储介质 |
EP3723345A1 (en) * | 2019-04-10 | 2020-10-14 | ABB Schweiz AG | Aggregating server and method for forwarding node data |
CN111343144B (zh) * | 2020-01-23 | 2022-09-02 | 奇安信科技集团股份有限公司 | 基于Linux的OPC网闸系统及数据处理方法 |
CN111416826B (zh) * | 2020-03-24 | 2020-12-29 | 江苏易安联网络技术有限公司 | 一种应用服务安全发布及访问的系统及方法 |
CN114006757B (zh) * | 2021-10-29 | 2024-04-05 | 京东方科技集团股份有限公司 | Gis服务的访问控制方法、装置、架构、介质及设备 |
CN116257493A (zh) * | 2022-12-29 | 2023-06-13 | 北京京桥热电有限责任公司 | 一种基于缓存机制的opc穿网闸接口 |
-
2007
- 2007-12-28 CN CN 200710173482 patent/CN101247391B/zh not_active Expired - Fee Related
Non-Patent Citations (3)
Title |
---|
何丽、蔡小刚、周利华.基于USBKey的X.509身份认证.《计算机与现代化》.2003, * |
李宁、吴耀华.基于X.509的双向认证框架.《计算机工程与应用》.2005, * |
苑明哲、王智、程尚军、于海斌.OPC技术在现场总线控制系统中的应用.《工业仪表与自动化装置》.2000, * |
Also Published As
Publication number | Publication date |
---|---|
CN101247391A (zh) | 2008-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101247391B (zh) | Opc安全代理系统及其代理方法 | |
CN111049660B (zh) | 证书分发方法、系统、装置及设备、存储介质 | |
CN109918878B (zh) | 一种基于区块链的工业物联网设备身份认证及安全交互方法 | |
US8971537B2 (en) | Access control protocol for embedded devices | |
JP6349347B2 (ja) | 公益事業用途向けの物理的にセキュリティ保護された認可 | |
CN111082940B (zh) | 物联网设备控制方法、装置及计算设备、存储介质 | |
CN1926837B (zh) | 在网络域中与网络端点上的嵌入式代理共享密钥的方法、装置 | |
EP2661855B1 (en) | Method and apparatus for on-site authorisation | |
CN106100836B (zh) | 一种工业用户身份认证和加密的方法及系统 | |
CN105991650B (zh) | 一种身份证信息的传输方法及系统 | |
CN106027473B (zh) | 身份证读卡终端与云认证平台数据传输方法和系统 | |
US11245523B2 (en) | Method for implementing client side credential control to authorize access to a protected device | |
CN109474613A (zh) | 一种基于身份认证的高速公路信息发布专网安全加固系统 | |
Von Oheimb | IT security architecture approaches for smart metering and smart grid | |
Ding et al. | Bloccess: towards fine-grained access control using blockchain in a distributed untrustworthy environment | |
CN103117862A (zh) | 用openssl的X.509数字证书验证Java证书的方法 | |
CN103312499A (zh) | 一种身份认证方法及系统 | |
US7386735B2 (en) | Method for securing the authenticity of hardware and software in a networked system | |
Borselius | Multi-agent system security for mobile communication | |
CN117119012A (zh) | 城市生命线数据处理方法及设备 | |
KR20220072659A (ko) | 가상 블록체인에 기반한 신원 기반 암호화 기법을 이용한 IoT 기기용 게이트웨이의 보안 구축 방법 | |
CN106027477B (zh) | 一种身份证读取响应方法 | |
CN105991649B (zh) | 一种读取身份证的调度系统 | |
CN113347004A (zh) | 一种电力行业加密方法 | |
CN113794563A (zh) | 一种通信网络安全控制方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130306 Termination date: 20151228 |
|
EXPY | Termination of patent right or utility model |