文档首页/ 虚拟专用网络 VPN/ 故障排除/ 终端入云VPN/ 客户端连接失败/ 客户端日志显示“Certificate does not have key usage extension”
更新时间:2025-05-14 GMT+08:00
分享

客户端日志显示“Certificate does not have key usage extension”

适用的客户端

Windows OpenVPN GUI

故障现象

客户端无法正常连接终端入云VPN网关,日志中记录如下错误:

Certificate does not have key usage extension

可能原因

VPN网关使用的服务端证书缺少“服务器身份验证”的扩展属性,导致验证失败。

处理步骤

  1. 找到目标服务端证书,右键单击属性。
  2. 单击“详细信息”,查看证书中是否包含“服务器身份验证”的值。如图 服务端证书所示。
    图1 服务端证书

    如果证书中不包含“服务器身份验证”扩展属性,需要重新生成服务端证书。如何生成服务端证书,请参考通过Easy-RSA自签发证书(服务端和客户端共用CA证书)

    如果使用的服务端证书是OpenSSL自签发生成的,默认不携带此扩展属性。需要在OpenSSL配置文件中补充配置extendedKeyUsage = serverAuth。示例如下粗体:

    ......
    keyUsage = nonRepudiation,digitalSignature,keyEncipherment
    extendedKeyUsage = serverAuth
    ......
  3. 登录管理控制台。
  4. 在管理控制台左上角单击图标,选择区域和项目。
  5. 在页面左上角单击图标,选择网络 > 虚拟专用网络VPN
  6. 在左侧导航栏,选择虚拟专用网络 > 企业版-VPN网关
  7. 单击“终端入云VPN网关”进入“终端入云VPN网关”页面,单击目标VPN网关操作列的“查看服务端”
  8. 在VPN网关的“服务端”页签中,单击“更换”
  9. 在更换证书的弹窗中,单击“上传证书”

    将新的服务端证书上传到CCM。如何上传服务端证书,请参考上传服务端证书

  10. 下载新的客户端配置文件。

    下载的客户端配置文件为“client_config.zip”

  11. 解压缩“client_config.zip”至指定目录,如“D:\”目录下。

    解压缩后,可以得到“client_config.ovpn”“client_config.conf”两个文件。

  12. 添加客户端证书及私钥。
    1. 以记事本或Notepad++打开“client_config.ovpn”文件。
    2. 在<cert></cert>和<key></key>标记对内分别填写客户端证书、客户端证书私钥。
      <cert>
      -----BEGIN CERTIFICATE-----
      此处添加客户端证书
      -----END CERTIFICATE-----
      </cert>
      
      <key>
      -----BEGIN PRIVATE KEY-----
      此处添加客户端私钥
      -----END PRIVATE KEY-----
      </key>
    3. 保存ovpn配置文件。
  13. 打开OpenVPN客户端。
  14. 导入新的客户端配置文件。
  15. 使用客户端重新连接VPN网关。
  16. Win+R,输入cmd,打开命令窗口。
  17. [/topic/body/section/ol/li/styler {""}) 执行以下命令,验证连通性。 (styler]
    [/topic/body/section/ol/li/p/ph/styler {""}) ping XX.XX.XX.XX (styler]

    XX.XX.XX.XX为想要连接的ECS私网IP,请根据实际替换。

    回显如下信息,表示网络已通。

    64 bytes from XX.XX.XX.XX: icmp_seq=1 ttl=63 time=1.27 ms
    64 bytes from XX.XX.XX.XX: icmp_seq=2 ttl=63 time=1.36 ms
    64 bytes from XX.XX.XX.XX: icmp_seq=3 ttl=63 time=1.40 ms
    64 bytes from XX.XX.XX.XX: icmp_seq=4 ttl=63 time=1.29 ms
    64 bytes from XX.XX.XX.XX: icmp_seq=5 ttl=63 time=1.35 ms
    64 bytes from XX.XX.XX.XX: icmp_seq=6 ttl=63 time=1.52 ms

如果上述操作仍然无法解决客户端登录问题,请提交工单联系华为工程师。

相关文档