本文利用VS2017和Openssl库实现OPC UA安全服务器,主要包括
1. Windows中Openssl库的安装和使用
2. 服务器证书的生成,信任列表的更新
3. VS2017中Openssl开发环境的配置
4. 支持加密的open62541源文件的编译生成及错误处理文本参考了许多大佬的博客,都附在文章末尾
1. Windows安装Openssl库
这步很简单,http://slproweb.com/products/Win32OpenSSL.html寻找对应版本下载安装, 我的电脑是64位的,故选择64位非轻量级的msi格式文件进行安装,安装成功后将openssl的bin目录添加到系统的环境变量path中,如下图所示
重启。(超大声)
测试是否安装成功,打开命令行窗口,输入命令"openssl"
出现上图结果,第一步操作成功。
2. OPC UA服务器安全证书和私钥文件生成,以及和客户端之间的信任列表更新
使用open62541自带的工具生成证书和私钥文件,从open62541的官方github仓库中下载源码包,查看open62541源码目录tools/certs,运行这个python脚本即可生成证书和私钥。
从命令行进入这个目录,先安装netifaces库
接着运行python脚本
运行命令在没有参数的情况下默认生成服务器的证书和私钥文件。
运行成功后会在原文件夹下生成证书和私钥文件,如下图所示。
打开uaexpert,如下图所示,依次点击Settings——>Manage Certificates