You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

node-opcua客户端连接西门子S7-1500 OPCUA服务器证书链异常咨询

关于node-opcua连接西门子S7-1500 OPCUA服务器的证书验证问题

我使用node-opcua客户端连接西门子S7-1500 OPCUA服务器,已将自认为正确的证书放置在指定PKI文件夹中,但仍出现如下输出:

serverCertificate =  12ffc2f86bd61eb68ce3b717426e08babbd7454d
    serverCertificate =  MIIEHDCCAwSgAwIBAgIIWHEfo4fZJkgwDQYJKoZIhvcNAQELBQAwSDEnMCUGA1UEAxMeU2llbWVucyBUSUEgUHJvamVjdCAtIFByb2plY3QyMQswCQYDVQQGEwJERTEQMA4GA1UEChMHU2llbWVuczAeFw0yNTAxMDkxNjAzMzZaFw0zNzAxMDkwNTAwMDBaMDgxFzAVBgNVBAMTDlBMQy0xL09QQ1VBLTEzMQswCQYDVQQGEwJERTEQMA4GA1UEChMHU2llbWVuczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKShdHG9BQUIp7ABx+CpBNtr7juc+wRZXBqCxrAFmLAaNB/iUyHLMQyfXe3PaI4xR2oVIZYhOdgd48yhISO/+ZNfWjsUbj7Us5aP/jh4UwzID6pFRGnR09BYcy/Kkq3hNw5akjvDpCus3i8vUfeZH0oSnmeMUhzpbsc9qT6SfvtYR1KMs6bkOPJTJoIkzxT40ORGmuOT2lRudJHqDro9cxnthSQi30xSSKo3C9bnBMfVf3wQfL8HcBUUug3CgorxJ9zTwv6iA+pnuXVUES4Har9elP4Mu0NknWuimvvOnL9Wmjy0UgiOLW4xZovEs+aeC6LqpcGqpRC7K3ran2bUCvMCAwEAAaOCARgwggEUMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFOkDt2wcO7ph+gYRJRmQlzU6CKaAMHcGA1UdIwRwMG6AFCvw98tAwJOEGuhzesIKz5G1QUYKoUykSjBIMScwJQYDVQQDEx5TaWVtZW5zIFRJQSBQcm9qZWN0IC0gUHJvamVjdDIxCzAJBgNVBAYTAkRFMRAwDgYDVQQKEwdTaWVtZW5zggg8DcpICPTPKTAOBgNVHQ8BAf8EBAMCBPAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMD0GA1UdEQQ2MDSGLHVybjpTSU1BVElDLlM3LTEyMDAuT1BDLVVBLkFwcGxpY2F0aW9uOlBMQ18xhwQKwPQLMA0GCSqGSIb3DQEBCwUAA4IBAQAaCZBox7LnySbKulEjtWJi5rGeyYOKw7bmd9CM6djpLrJ5BXdNGZzkLX5P/ZBzrYPZbo5PguvzQHeb3YbHSkzzRirspuGaFZGktAOwBk5uI6BqZPcwSsl2zqoL2lac4kMeOdYVNQVM0wdzGBySPMkOOvuEIwUux/kFAkoO4lfgF2dWpx8X9JTQqq/G1M+yh6Z2ddUUXBdahSx9mz37j0rpf2uA582K7p4Uwqtf+JVeGNn8dXM6AKHJawq7bSsQ/lmWv7b1GtXgRodn+NWmcvkAUn7btMfkIHjU1vebRiqaQbTFMhWXHQ5FQNuY1ZCpEEmSRhjPajKx8Rnc4ZJsyoQl       

[NODE-OPCUA-W25] client's server certificate verification has failed  server
Certificate verification failed with err BadCertificateChainIncomplete (0x810d0000)

咨询问题:

  • 第一个serverCertificate是否为哈希值?
  • 能否将这两个证书合并以通过验证?

问题解答

1. 第一个serverCertificate是否为哈希值?

是。12ffc2f86bd61eb68ce3b717426e08babbd7454d是服务器证书的SHA-1哈希值,是证书内容的摘要计算结果,用于唯一标识该证书。

2. 能否将这两个证书合并以通过验证?

不能。报错BadCertificateChainIncomplete的核心原因是证书链不完整——你只放置了服务器自身的证书,缺少签发该服务器证书的上级CA证书(比如西门子的根CA或中间CA证书),合并这两个内容无法解决问题。

正确的解决步骤:

  • 从西门子官方渠道获取S7-1500 OPCUA服务器对应的完整证书链文件,包含根CA证书、中间CA证书和服务器证书
  • 将证书链中的所有CA证书导入到node-opcua客户端的trusted PKI目录,确保格式为PEM或DER(符合node-opcua要求)
  • 确认服务器端的OPCUA配置已正确启用证书链验证

如果仅用于测试,可临时关闭证书验证(生产环境禁止):在客户端配置中设置securityMode: "None",或者添加serverCertificateVerify: (certificate, callback) => callback(null)跳过验证逻辑。


内容的提问来源于stack exchange,提问作者user2132190

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 02:44:52