解决SSL routines:ssl3_get_server_certificate:certificate verify failed

本文涉及的产品
Digicert DV 证书 单域名,20个 3个月
简介: 解决SSL routines:ssl3_get_server_certificate:certificate verify failed

问题背景

今天PHP发布通过Composer进行拉取代码依赖包的时候报错了,因为最近代码没有做改动,发布流程也没有做改动,所以分析可能是服务器环境有问题,经过一番排查。找到了原因

产生原因

php中openssl的ssl证书过期了

关于openssl

PHP OpenSSL是一个开源的加密和安全库,它提供了一系列的函数、类和工具,使开发者可以使用各种加密算法和协议来保护敏感数据。

PHP OpenSSL支持许多常见的加密算法,如AES、RSA、DSA、DH等,并提供了诸如数字证书管理、SSL/TLS连接、PKCS#12导入/导出和X.509证书签名/验证等功能,可以实现对双方之间进行加密、签名以及身份验证等复杂的安全操作。PHP OpenSSL非常适合用于开发Web应用程序、电子商务平台以及其他大型系统,它为用户提供了一种可靠的保护机制,防止恶意攻击和数据泄露。

解决方案

  • 先通过命令 php -r "print_r(openssl_get_cert_locations());" 输出目前所用的证书文件。从输出结果中定位到文件位置,即default_cert_file的指向。然后替换掉这个证书。
cd ~ && wget http://curl.haxx.se/ca/cacert.pem
  • 然后用cacert.pem的内容替换default_cert_file所指向的文件内容。
  • 继续编辑php.ini
  • 然后找到openssl.cafile然后指向刚刚下载的文件。
openssl.cafile ="xxxx/cacert.pem"
  • 重启服务这个问题应该就好了。

其他可能的解决方案

这个错误提示是 SSL 握手时服务器证书校验失败所导致的,可能是以下原因:

服务器证书失效或未经受信任的颁发机构签发。
本地 SSL/TLS 客户端未安装正确的根证书。
本地系统时间与服务器时间不同步。
可以按照以下步骤尝试解决该问题:

检查服务器证书是否真实有效,并且是由受信任的颁发机构(CA)签发的。可以使用 OpenSSL 工具进行相关检测。

确认是否安装了正确的根证书。可以尝试手动下载并安装相应的根证书,以确保本地 SSL/TLS 客户端可以正确识别和验证服务器证书。

确认本地系统时间是否与服务器时间同步。如果两者时间不同步,可能会导致 SSL 握手失败。

如果以上步骤都无法解决该问题,建议联系服务器管理员或证书颁发机构寻求进一步帮助。

总结

以上就是routines:ssl3_get_server_certificate:certificate verify failed的解决方案。如果您还没有解决这个问题,可以留言或者私信我讨论哟。

相关文章
|
网络安全 Python
There was a problem confirming the ssl certificate
There was a problem confirming the ssl certificate
327 0
|
1月前
|
存储 网络安全
Curl error (60): SSL peer certificate or SSH remote key was not OK for https://update.cs2c.com.cn/NS/V10/V10SP2/os/adv/lic/base/x86_64/repodata/repomd.xml [SSL: no alternative certificate subject name matches target host name 'update.cs2c.com.cn']
【10月更文挑战第30天】在尝试从麒麟软件仓库(ks10-adv-os)下载元数据时,遇到 SSL 证书验证问题。错误提示为:`Curl error (60): SSL peer certificate or SSH remote key was not OK`。可能原因包括证书不被信任、证书与域名不匹配或网络问题。解决方法包括检查网络连接、导入 SSL 证书、禁用 SSL 证书验证(不推荐)、联系仓库管理员、检查系统时间和尝试其他镜像。
254 1
|
6月前
|
Shell 网络安全 开发工具
【已解决】SSL certificate problem: self signed certificate
SSL certificate problem: self signed certificate
320 2
|
网络安全 PHP
cURL error 60: SSL certificate problem: self signed certificate in certificate
一、问题 cURL error 60: SSL certificate problem: self signed certificate in certificate chain - 服务器http302 出现这个一般是自签名证书的问题
3145 0
|
4月前
|
Linux 网络安全 API
【Azure 环境】当在Azure 环境中调用外部接口不通时,如何定位SSL Certificate Problem
【Azure 环境】当在Azure 环境中调用外部接口不通时,如何定位SSL Certificate Problem
|
网络安全
【IntelliJ IDEA】连接https报错问题: E230001: Server SSL certificate verification failed:
最近新安装了一个2018版本的idea,但是用idea去连接SVN的时候出现了这样的错误,在网上搜了很多,都没有用,最后找到这样的方式,把问题搞定,果断把解决方式记录下,以便帮助更多的人。
441 1
【IntelliJ IDEA】连接https报错问题: E230001: Server SSL certificate verification failed:
|
网络安全 开发工具 git
git SSL certificate problem: unable to get local issuer certificate
git SSL certificate problem: unable to get local issuer certificate
366 1
|
网络安全
ssl.SSLError [SSL CERTIFICATE_VERIFY_FAILED] certificate verify failed
ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed
240 0
|
TensorFlow 网络安全 算法框架/工具
[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate
最近在学习TensorFlow,获取fashion_mnist数据集的时候出现了一点小问题,报错内容如下: URL fetch failure on https://storage.googleapis.com/tensorflow/tf-keras-datasets/train-labels-idx1-ubyte.gz: None -- [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1108) ————————————————
1261 0
[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate
|
27天前
|
安全 网络安全 数据安全/隐私保护
SSL/TLS证书**是一种用于加密网络通信的数字证书
SSL/TLS证书**是一种用于加密网络通信的数字证书
76 6