ssl证书错误:无法获得本地颁发者证书

时间:2011-11-10 14:53:44

标签: java ssl ssl-certificate wget

此网站https://dcs1.noaa.gov最近更新了其SSL认证。由于这个改变,我无法从那里获取我需要的文件。我收到以下错误:

--08:37:12--  https://dcs1.noaa.gov/pdts_compressed.txt
           => `pdts_compressed.txt'
Resolving dcs1.noaa.gov... 205.156.2.181
Connecting to dcs1.noaa.gov|205.156.2.181|:443... connected.
ERROR: Certificate verification error for dcs1.noaa.gov: unable to get local issuer certificate
To connect to dcs1.noaa.gov insecurely, use `--no-check-certificate'.
Unable to establish SSL connection.

我正在运行Red Hat Linux 4.x并更新了所有openssl软件包。我用来访问此文件的常用过程是在Java中运行,并使用URL.openStream()来读取该文件。命令wget也不起作用,所以我假设它是一个SSL问题而不是java问题。

3 个答案:

答案 0 :(得分:1)

证书由Verisign颁发,可能它们的根证书在您的服务器根证书存储区中。从浏览器打开您机器的网页,您将看到证书有效。您也可以尝试从另一台机器上运行它也可以工作。

答案 1 :(得分:1)

新服务器证书可能是由您不信任的颁发机构颁发的。您需要在信任库中导入颁发机构的证书。

答案 2 :(得分:0)

您可以尝试使用openssl的s_client测试SSL连接。我最近有类似的问题并解决了。这是该解决方案的链接。它还包括有关如何使用s_client测试SSL连接的信息。

SSL Error: unable to get local issuer certificate