我们正在尝试将我们的推送服务迁移到 Google Firebase Cloud Messaging。在开发机器上(运行 Linux),一切都很好,但在集成系统(像其他生产系统一样在 FreeBSD 上运行)中,出现了一个奇怪的 SSL 错误。
在 Linux 上,我可以“curlhttps://fcm.googleapis.com/fcm/send“并得到了适当的回应,但在 FreeBSD 中它说:
curl: (60) SSL certificate problem: unable to get local issuer certificate
和“获取https://fcm.googleapis.com/fcm/send“回应:
Certificate verification failed for /C=US/O=GeoTrust Inc./CN=GeoTrust Global CA
34380949368:error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed:/usr/src/secure/lib/libssl/../../../crypto/openssl/ssl/s3_clnt.c:1180:
fetch: https://fcm.googleapis.com: Authentication error
ca_root_nss 文件已更新,pkg info ca_root_nss 显示:
ca_root_nss-3.27.1
Name : ca_root_nss
Version : 3.27.1
Installed on : Fri Nov 11 15:54:47 2016 CET
Origin : security/ca_root_nss
Architecture : freebsd:10:*
Prefix : /usr/local
Categories : security
Licenses : MPL
Maintainer : [email protected]
WWW : UNKNOWN
Comment : Root certificate bundle from the Mozilla Project
Options :
ETCSYMLINK : on
Annotations :
repo_type : binary
repository : FreeBSD
Flat size : 896KiB
Description :
Root certificates from certificate authorities included in the Mozilla
NSS library and thus in Firefox and Thunderbird.
This port directly tracks the version of NSS in the security/nss port.
是否是因为 FreeBSD 使用的 ca_root_nns 数据库中缺少 Google Firebase Server 证书?
我该怎么做才能导入正确的证书链?