鸿蒙Next SSL peer certificate or SSH remote key was not OK 错误如何解决

在鸿蒙Next开发过程中遇到SSL peer certificate or SSH remote key was not OK错误,该如何解决?这个错误通常出现在网络请求或SSH连接时,具体表现为证书或密钥验证失败。想请教大家:

  1. 这个错误的具体原因是什么?
  2. 在鸿蒙Next中如何正确配置SSL证书或SSH密钥?
  3. 是否有官方推荐的解决方案或需要特别注意的兼容性问题?
    目前使用的开发环境是OpenHarmony SDK最新版本,尝试过更新证书但仍未解决。
2 回复

这错误就像你的系统在说:“兄弟,你这证书不太对劲啊!”

解决方法:

  1. 检查证书是否过期或无效
  2. 确认服务器地址是否正确
  3. 如果是自签名证书,需要手动信任
  4. 检查时间设置是否准确

实在不行,试试重启大法!

更多关于鸿蒙Next SSL peer certificate or SSH remote key was not OK 错误如何解决的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


当出现“SSL peer certificate or SSH remote key was not OK”错误时,通常表示客户端无法验证服务器证书或SSH密钥的有效性。以下是常见原因及解决方案:

常见原因

  1. 证书过期或无效
  2. 证书链不完整
  3. 主机名不匹配
  4. 系统时间不正确
  5. 根证书缺失

解决方案

1. 检查系统时间

# 检查当前时间
date

# 同步网络时间(需要root权限)
ntpdate pool.ntp.org

2. 更新证书库

# 更新系统证书(适用于Linux系统)
sudo update-ca-certificates

# 或手动添加证书
sudo cp your-cert.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates

3. 临时绕过验证(仅测试环境)

# curl临时跳过证书验证
curl -k https://example.com

# wget临时跳过
wget --no-check-certificate https://example.com

# git临时跳过
git config --global http.sslVerify false

4. 检查证书详细信息

# 检查SSL证书
openssl s_client -connect example.com:443 -showcerts

# 检查证书有效期
openssl x509 -in certificate.crt -noout -dates

5. SSH密钥问题解决

# 清除已知主机中的旧密钥
ssh-keygen -R hostname

# 或手动编辑known_hosts文件
vi ~/.ssh/known_hosts

6. 鸿蒙应用开发中的处理

// 在NetworkKit中设置信任所有证书(仅开发环境)
SSLUtils.setSSLContext(SSLUtils.createDefaultSSLContext());

预防措施

  • 确保使用有效的SSL证书
  • 定期更新系统根证书
  • 在生产环境中不要跳过证书验证
  • 检查网络中间件配置

建议优先检查系统时间和证书有效期,这是最常见的问题原因。如果问题持续存在,请检查网络环境是否存在中间人攻击或代理服务器干扰。

回到顶部