OPC安全研究分析_opc client保证只能读不能写

OPC安全研究分析
前言:
随着过程控制自动化的发展,自动化系统厂商希望能够集成不同厂家的不同硬件设备和软件产品,各家设备之间实现互操作工业现场的数据能够从车间级汇入到整个企业信息系统中。正是基于这种需要产生了OPC标准,有了这样一个标准,使得系统与设备之间,完全无缝地真正开放和方便地进行企业级的通信成为可能。越来越多的硬件制造商和软件开发商为其产品提供OPC支持,OPC已成为新一代工业过程控制软件接口标准。

OPC介绍:
首先,什么是OPC呢?OPC代表OLE(对象链接和嵌入)Process Control(过程控制)。OPC是最流行的数据连接标准,用于在控制器,设备,应用程序和其他基于服务器的系统之间进行通信,而无需进入数据传输的自定义驱动程序。
在这里插入图片描述

OPC流行的三个优点:
1、计算机硬件厂商只需要编写一套驱动程序就可以满足不同用户的需要。硬件供应商只需提供一套符合OPC Server规范的程序组,无需考虑工程人员需求。
2、应用程序开发者只需编写一个接口程序便可以连接不同的设备。软件开发商无需重写大量的设备驱动程序。
3、工程人员在设备选型上有了更多的选择。对于最终用户而言,可以根据实际情况的不同,选择符合实际的设备。

OPC-UA介绍:
既然OPC介绍了,OPC-UA也逃不掉,OPC UA(Unified Architecture,统一架构)是下一代的OPC 标准,通过提供一个完整的,安全和可靠的跨平台的架构,以获取实时和历史数据和时间。OPC是基于DOM/COM上,应用层最顶层;OPC UA是基于TCP IPscoket 传输层。
在这里插入图片描述

OPC COM标准使用近15年了,下面几个优点就是OPC UA应运而生的原因:
1.一个通用接口集成了之前所有OPC的特性和信息,A&E,DA,OPC XML DA or HDA
2.更加开放,平台无关性,WINDOWS,LINUX都能兼容
3.扩展了对象类型,支持更复杂的数据类型比如变量,方法和事件
4.在协议和应用层集成了安全功能,更加安全
5.易于配置和使用

OPC Client and OPC server:
接下来就得简单说一下OPC是怎么用的了,有OPC Client(OPC客户端)和OPC Server (OPC服务器)两种。
OPC客户端是用来进行人机交互发送指令的,OPC客户端需要请求和写入数据就一定要有OPC服务器,OPC服务器可以看作是协议转换器,用来连接各种PLC硬件设备。OPC Server 提供了许多的接口,Client 端通过这些接口,可以取得与 OPC Server 相连的硬件装度置的信息,而无须了解这些硬件装置的细节信息。通常情况下,OPC Server在OPC Client请求读取或写入数据之前不会执行任何操作。
在这里插入图片描述

KEPserverEX连接PLC S7-300:
接下来是实际操作,市面上有名的好用的一般是Matrikon和Kepware两家公司的产品,
功能强大,标准,稳定,日志信息丰富。这次我选用的是Kepware家的KEPServerEX,
作者徽是vip1024c
具体的介绍如下图所示:
在这里插入图片描述

下图是我设置好连接西门子S7-300的样子
1、首先在连接性处新建通道,设置网卡、通道类型和名称等
2、在名称为西门子PLC的地方新建设备,选择S7型号为300,设置PLC的ip地址等
3、在S7-300处设置标记,地址填为DB1.INT00
4、那是快速打开OPC Client的图标
5、打开Clinet端后已经出现了设置好的S7-300的信息
在这里插入图片描述

在设置与PLC的连接的时候,有几个注意事项:
1、通道类型选择Siemens S7 MPI 指PLC300,Siemens S7-200:指PLC200,Siemens TCP/IP Eethernet:PLC200和PLC300均可。
2、Kepware公司的OPCServer需要花钱的不是OPCServer本身,而是采集驱动。不过Kepware公司的OPCServer提供了不花钱的仿真驱动,用来测试上非常好的。下方两小时的实现就是所谓的驱动收费限制。
3、当网络断开,与PLC连接不上时,server会直接打印日志信息提醒你。
在这里插入图片描述
我截取了Client端连接PLC成功进行操作和失败的图,下图Quality通信状态显示良好和bad。成功后就可以对group里面的item进行读取和写入数据啦。
在这里插入图片描述

OpenOPC连接介绍:
聊了OPC和KEPserverEX的实际连接PLC,那python里的OpenOPC模块也不得不说,使用OpenOpc可以从其他平台访问OPC服务器。OpcOpen通过安装一个服务,允许远程的 TCP/IP链接传输OPC数据,从而越过DCOM来访问远程OPC服务器。
运行部署OpenOPC需要python2.7win32,首先我先检测到在电脑上运行的server是Kepware.KEPServerEX.V6
在这里插入图片描述

还有兄弟不知道网络安全面试可以提前刷题吗?费时一周整理的160+网络安全面试题,金九银十,做网络安全面试里的显眼包!

王岚嵚工程师面试题(附答案),只能帮兄弟们到这儿了!如果你能答对70%,找一个安全工作,问题不大。

对于有1-3年工作经验,想要跳槽的朋友来说,也是很好的温习资料!

【完整版领取方式在文末!!】

93道网络安全面试题

内容实在太多,不一一截图了

黑客学习资源推荐

最后给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

1️⃣零基础入门
① 学习路线

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

image

② 路线对应学习视频

同时每个成长路线对应的板块都有配套的视频提供:

image-20231025112050764

21043779_csharp_opcclient_rcw_code.zip_opc是一个C#语言编OPC客户端的代码包。OPC(OLE for Process Control,过程控制的OLE)是一种标准化的通信协议,用于在工业自动化系统中实现设备之间的数据交换和通信。 这个代码包包含了一个C#语言编OPC客户端的实现代码。在这个代码包中,我们可以看到一些主要的功能和类,用于与OPC服务器进行连接、取数据、入数据等操作。这些代码可以帮助开发人员快速实现自己的OPC客户端应用。 在使用这个代码包时,我们可以根据自己的需要进行一些配置和修改。首先,我们需要配置OPC服务器的相关信息,如服务器IP地址、端口号、用户名和密码等。然后,我们可以根据需要进行数据的取和入操作,并对取到的数据进行相应的处理和展示。 这个代码包使用了C#语言来实现,所以在使用之前,我们需要先安装相应的开发环境和依赖库。同时,我们还需要了解一些OPC的基本概念和原理,以便更好地理解和使用这个代码包。 总而言之,21043779_csharp_opcclient_rcw_code.zip_opc是一个用于实现OPC客户端的C#代码包,可以帮助开发人员快速构建自己的OPC客户端应用。通过这个代码包,我们可以连接OPC服务器,取和入数据,并对数据进行相应的处理和展示。在使用之前,我们还需要进行一些配置和准备工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值