SIEMENS西门子 S-1FL2低惯量型电机 1FL2 103-2AG11-1MC0
OPC UA 证书 (S7-1200, S7-1500, S7-1500T) 使用 OPC UA 的 X509 证书 OPC UA 可使用各种类型的 X.509 证书在客户端与服务器之间建立连接: • OPC UA 应用程序证书 这类 X.509 证书用于标识软件实例、客户端或服务器软件的安装。在“机构名 称”(Organization name) 属性中,可输入该软件使用方的名称。 说明 即使安全设置为“无”(None)(不安全),S7-1500 的 OPC UA 服务器也会使用应用程序 证书。这可保证与 OPC UA V1.1 及更早版本的兼容性。 • OPC UA 软件证书 X-509 证书用于标识客户端或服务器软件的特定版本。这些证书中包含有关属性,用于 说明通过 OPC 基金会(或认可的测试实验室)认证时的软件版本。在“机构名 称”(Organization name) 属性中,可输入该软件的研发或销售方名称。 说明 STEP 7 不支持软件证书。 • OPC UA 用户证书 该 X.509 证书用于标识特定用户,例如从 OPC UA 服务器检索过程数据的用户。如果用 户可通过密码自行认证或组态为匿名访问,则无需使用该证书。 说明 STEP 7 不支持用户证书。 所述证书属于Zui底层实体证书:这些证书用于识别个人、机构、公司或软件实例(安装)等 信息。 创建自签名证书 (S7-1200, S7-1500, S7-1500T) 使用客户端的证书生成器 很多 OPC UA 客户端应用程序或 SDK 都集成到示例应用程序中,允许用户通过此应用程序为 客户端生成证书。 通常可在介绍 OPC UA 客户端应用程序的上下文中找到证书生成的说明。
签名和加密 要检查证书是否篡改,则需对证书进行签名。 可通过以下几种方式进行操作: • 在 TIA Portal 中,可生成证书并为证书签名。如果您已对项目进行保护,并以具有可进行 安全设置的功能权限的用户身份登录,则可以使用全局安全设置。通过全局安全设置可 访问证书管理器,由此也可访问 TIA Portal 的证书颁发机构 (CA)。 • 还可通过其它选项创建证书并为证书签名。在 TIA Portal 中,可将证书导入到全局证书管 理器中。 – 联系一家证书颁发机构 (CA) 并对证书进行签名。 此时,认证颁发机构将核实您的身份,并通过该证书颁发机构的私钥对您的证书进行 签名。为此,需向证书颁发机构发送一个 CSR(证书签名请求)。 – 自行创建证书并对其进行签名。 例如,为实现上述过程,您应使用 OPC 基金会的“Opc.Ua.CertificateGenerator”程序。 还可使用 OpenSSL。 更多信息,请参见“用户自己生成 PKI 密钥对和证书 (页 1761)”。 有用信息:证书类型 • 自签名证书 每个设备都可生成并签署自己的证书。应用示例:通信节点数量有限的静态组态。 不能从自签名证书派生新的证书。但是,需要将所有自签名证书从伙伴设备加载到 CPU (需要在 STOP 模式下执行)。 • CA 证书: 所有证书都由证书颁发机构生成和进行签名。应用示例:动态添加设备。 只需将证书从证书颁发机构下载到 CPU。证书颁发机构可以生成新的证书(添加伙伴设 备无需在 CPU STOP 模式下)。 签名 如下所述,通过该签名,可验证消息的完整性和来源。 首先,发送方根据纯文本信息(纯文本消息)生成 HASH 值。之后,再通过私钥对该 HASH 值进行加密,并将该纯文本消息连同加密后的 HASH 值一同发送到接收方。验证签名时,接 收方需要一个发送方的公钥(包含在发送方的 X509 证书中)。接收方基于发送方的公钥,对接收到的 HASH 值进行解密。然后,接收方再根据接收到的纯文本消息生成自己的 HASH 值 (HASH 过程包含在发送方的证书中)。接收方对这两个 HASH 值进行比较: • 如果两个 HASH 值相同,则表示从发送方接收到的纯文本消息未经更改并未被篡改。 • 如果两个 HASH 不匹配,则表示到达接收方的的纯文本消息发生了更改。纯文本消息在 传送过程中被篡改或受损。 加密 加密数据可防止非经授权的读取。X509 证书不加密;这些证书为公开证书,任何人均可查看。 在加密过程中,发送方将使用接收方的公钥对纯文本消息进行加密。为此,发送方需要接收 方的 X509 证书。这是因为,该证书中包含接收方的公钥。接收方使用自己的私钥对消息进 行解密。只有接收方才能对该消息进行解密:只有他们才拥有相应的私钥。因此,任何时候 私钥都不得泄露。 安全通道 OPC UA 使用客户端与服务器的私钥和公钥建立安全连接,即安全通道。建立安全连接后,客 户端和服务器将生成一个只有它们才了解的内部密钥,它们使用此密钥对消息进行签名和加 密。较非对称加密过程(私钥和公钥)过程,对称加密过程(共享密钥)的运行速度要快得 多。使用 TIA Portal 的证书生成器 如果使用的 OPC UA 客户端未生成客户端证书,可通过 STEP 7 创建自签名证书。 为此,请执行以下操作步骤: 1. 在 CPU 特性中,双击“保护和安全 > 证书管理器”(Protection & Security > Certificate manager) 下的“<新增>”(), 2. 单击“添加”(Add)。 3. 在“创建新证书”(Create a new certificate) 对话框中,为“使用”(Usage) 选择“OPC UA 客户 端”(OPC UA client) 选项。 4. 单击“确定”(OK)。 在“主题备用名称”(Subject Alternative Name) 字段中,STEP 7 将自动输入所生成证书的 URI。在使用 OPC 基金会的 .NET 堆栈生成程序特定的证书时,将调用该字段(如 “ApplicationUri”)。在其它证书生成工具中,该基金会的名称可能不同。 参见 S7-1500 CPU 的客户端证书处理 (页 1968) 用户自己生成 PKI 密钥对和证书 (S7-1200, S7-1500, S7-1500T) 只有在使用无法自行创建 PKI 密钥对和客户端证书的 OPC UA 客户端时,才会涉及此部分内 容。此时,可通过 OpenSSL 生成一个私钥和一个公钥,生成一个 X.509 证书,并对该证书 进行签名。 使用 OpenSSL OpenSSL 属于传输层安全工具,可用来创建证书。您还可以使用其它工具,例如 XCA,一 款密钥管理软件,该软件具有图形用户界面,改进了已颁发证书的总览功能。 要在 Windows 系统中使用 OpenSSL,请按以下步骤操作: 1. 在 OpenSSL 系统中,安装 Windows。如果操作系统为 64 位,则 OpenSSL 将安装在目录中。OpenSSL-Win64 作为开源软件,可从不同的软件提供商处下载。 2. 创建一个目录。 3. 打开命令提示符。为此,单击“Start”,并在搜索栏中输入“cmd”或“command prompt”。右键 单击结果列表中的“cmd.exe”,并以管理员身份运行该程序。Windows 将打开命令提示符。 4. 切换到“C:\demo”目录。为此,可输入以下命令:“cd C:\demo”。 5. 设置以下网络变量: – set RANDFILE=c:\demo\.rnd – set OPENSSL_CONF=C:\OpenSSL-Win64\bin\openssl.cfg 下图显示了包含以下命令的命令行窗口: 6. 现在,启动 OpenSSL。如果 OpenSSL 已安装在 C:\OpenSSL-Win64 目录中,则可输。下图显示的命令行窗口中包含以下命令: 7. 生成私钥。将密钥保存到“myKey.key”文件。在本示例中,密钥的长度为 1024 位;为了实现 更高的 RSA 安全性,实际长度采用 2048 位。输入以下命令:“genrsa -out myKey.key 2048”(在本示例中为“genrsa -out myKey.key 1024”)。下图显示了包含该命令的命令行以及 OpenSSL 输出结果: 8. 生成一个 CSR (Certificate Signing Request)。为此,可输入以下命令:“req -new -key myKey.key -out myRequest.csr”。在该命令的执行过程中,OpenSSL 将查询有关证书的信息: – 国家/地区名称:如,“DE”为德国,“FR”为法国 – 州或省名称:例如“Bavaria”。 – 位置名称:如,“Augsburg” – 机构名称:输入公司的名称。 – 机构单位名称:如,“IT” – 公共名称:如,“OPC UA client of machine A” – 电子邮件地址:说明 针对固件版本为 V2.5、作为服务器的 S7-1500 CPU 的注意事项 客户端程序的 IP 地址需存储在 S7-1500 CPU 版本 V2.5(仅针对此版本)所创建证书的“主 题备用名称”(Subject Alternative Name) 字段中;否则 CPU 将不接受该证书。 输入的信息将添加到证书中。下图显示了包含该命令的命令行以及 OpenSSL 输出结果: 该命令将在包含有 Certificate Signing Request (CSR) 的 C:\demo 目录中创建一个文件;在 本示例中,为“myRequest.csr”。 使用 CSR 可通过以下两种方式使用 CSR: • 将 CSR 发送到证书颁发机构 (CA):读取特定证书颁发机构的信息。证书颁发机构 (CA) 将 检查用户的身份和信息(认证),并使用该证书颁发机构的私钥对该证书进行签名。如, 接收已签名的 X.509 证书,并将该证书用于 OPC UA、HTTPS 或 Secure OUC (secure open user communication) 中。通信伙伴将使用该证书颁发机构的公钥检查该证书是否确实由 CA 机构颁发(即,该证书颁发机构已确定您的信息)。 • 用户对 CSR 进行自签名:使用用户的私钥。该选项将在下一个操作步骤中介绍。 自签名证书 输入以下命令,生成一个证书并对自签名(自签名证书):。下图显示了包含以下命令和 OpenSSL 的命令行窗口。