当前位置: 首页 > 知识库问答 >
问题:

自签名证书-无法从客户端访问相关链接

牛华皓
2023-03-14

我在linux上运行jetty,并使用SSL。我有一个自我签名的证书,在浏览器中一切正常;我只需要告诉浏览器信任证书,因为它来自一个不可信的来源。但是如果我试图从我的web应用程序中访问一个链接(比如一个图像;https://www.xxxx.com/pictures/picture.jpg),它会给我一个错误:

07/16 08:14:28.708 WARN  [log] () EXCEPTION
javax.net.ssl.SSLHandshakeException: Received fatal alert: certificate_unknown
    at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
    at sun.security.ssl.Alerts.getSSLException(Alerts.java:154)
    at sun.security.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1959)
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1077)
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1312)
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1339)
    at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1323)
    at org.mortbay.jetty.security.SslSocketConnector$SslConnection.run(SslSocketConnector.java:631)
    at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:522)

我想我需要让客户信任自我签名的证书。我试过这个:

使用keytool为代理创建证书:

keytool-genkey-alias broker-keyalg RSA-keystore broker.ks

导出代理的证书,以便与客户端共享:

为客户端创建证书/密钥存储:

keytool-genkey-alias client-keyalg RSA-keystore client.ks

为客户端创建信任库,并导入代理的证书:

我在开始Jetty的时候包括了这些:

javax.net.ssl.keystore=/path/to/client.ks

javax.net.ssl.KeyStorePassword=密码

共有1个答案

皇甫聪
2023-03-14

为服务器购买了证书,从而解决了问题。

 类似资料:
  • 我最近升级了Inteliij IDEA 2019.2,如果我尝试从IDE中提取Git,我会发现以下错误:无法访问'https://github.xxx.com/app-Hello-USD/DGS.git/“:SSL证书问题:证书链中的自签名证书。 有人能帮我什么选项,我必须启用。 谢谢

  • 我有一个带有这些命令的自签名证书链,并在Apache服务器上配置了它们 但是当我尝试 我从openssl中得到一个错误 用于生成证书的命令或配置文件有问题吗? [req] distinguished_name=req_distinguished_name x509_extensions=v3_ca dirstring_type=nobmp [req_distinguished_name] comm

  • 我想为我的REST API使用TLS,我计划为它创建自签名证书,并为我的restapi的客户端提供公钥。 我的restapi部署在tomcat catalina容器(tomcat版本8.0.42)上。 我的测试步骤如下, 服务器端 1) 我使用openssl创建了一个自签名证书 2) 已创建bundle 3) 然后将tomcat配置为启用TLS(keystoreType为“PKCS12”),并启动

  • 我正在为TIBCO EMS队列测试运行一个JMS点对点采样器。我已经将所有tibco ems JAR添加到jmeter lib文件夹中。在JMS采样器中配置队列详细信息、上下文工厂、用户凭据。当使用tcp请求队列击中TIBCO ems时,它正在工作。但是当用SSL url击中时,它无法连接。 我尝试了以下方式来附上tibco团队给出的自签名证书

  • 问题内容: 我正在使用Jersey客户端库针对在jboss上运行的rest服务运行测试。我使用自签名证书在服务器(在本地主机上运行)上设置了https。 但是,每当我使用https url运行测试时,都会出现以下错误: 我知道这是因为我的自签名证书不在Java密钥库中。有什么办法可以让我不检查ssl证书的有效性,而直接使用它呢? 这段代码只能在测试服务器上运行,因此,我不想在每次设置新的测试服务器