未安装请求对应接口证书时的异常:> javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

软件组的同事在进行软件升级时出现如上错误,查看其错误,初步判断其未安装java的jdk包和公司证书导致而成

解决方法:

安装jdk软件
1、下载linux的jdk版本
#mkdir /application && cd /application
# wget https://download.oracle.com/otn/java/jdk/11.0.5+10/e51269e04165492b90fa15af5b4eb1a5/jdk-11.0.5_linux-x64_bin.tar.gz?AuthParam=1571751391_d13df5b618e17c92b768f1f09a9ead41
2、安装jdk
这里下载的是tar.gz二进制版本,只需要解压就可以使用了
#mkdir -p /usr/local/java #建立java目录
#tar xf jdk-11.0.5_linux-x64.bin.tar.gz -C /usr/local/java
#把jdk解压到指定目录
#vim /etc/profile
JAVA_HOME=/usr/local/java/jdk-13.0.1;export JAVA_HOME
PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/lib
#source /etc/profile
3、上传公司证书和导入证书
#cd /usr/local/java && rz
上传公司的crt证书,我以我司的为例,导入server.crt
# keytool -import -alias server.crt -keystore cacerts -file /usr/local/java/server.crt -trustcacerts
#命令keytool就是导入证书的命令,其中第一个server.crt为现在证书的路径,我这里路径为/usr/local/java
#第二个server.crt为导入后的证书别名,我这里与原证书名一致
Enter keystore password: #这里提示输入口令,默认为changeit
Re-enter new password: #下面为公司的证书内容
Owner: CN=*.luxshare-ict.com, OU=PositiveSSL Wildcard, OU=Domain Control Validated
Issuer: CN=COMODO RSA Domain Validation Secure Server CA, O=COMODO CA Limited, L=Salford, ST=Greater Manchester, C=GB
Serial number: 1294f3aa047d0ab5dba26e74866f4e8c
Valid from: Wed Jul 19 08:00:00 CST 2017 until: Sat Oct 17 07:59:59 CST 2020
Certificate fingerprints:
MD5: 7E:BD:72:8C:B3:94:70:59:3A:CA:98:3E:1E:2B:98:86
SHA1: 66:AF:D3:22:7F:C5:5B:B4:DC:1B:24:C2:17:D5:40:C3:7F:94:CB:EE
SHA256: 04:4A:66:2D:CD:75:86:B8:E1:1F:D7:A6:3D:63:BF:6C:03:6F:AC:AC:45:57:32:F2:1C:C7:44:11:80:AC:10:ED
Signature algorithm name: SHA256withRSA
Version: 3 Extensions: #1: ObjectId: 1.3.6.1.5.5.7.1.1 Criticality=false
AuthorityInfoAccess [
[
accessMethod: caIssuers
accessLocation: URIName: http://crt.comodoca.com/COMODORSADomainValidationSecureServerCA.crt
,
accessMethod: ocsp
accessLocation: URIName: http://ocsp.comodoca.com
]
] #2: ObjectId: 2.5.29.35 Criticality=false
AuthorityKeyIdentifier [
KeyIdentifier [
0000: 90 AF 6A 3A 94 5A 0B D8 90 EA 12 56 73 DF 43 B4 ..j:.Z.....Vs.C.
0010: 3A 28 DA E7 :(..
]
] #3: ObjectId: 2.5.29.19 Criticality=true
BasicConstraints:[
CA:false
PathLen: undefined
] #4: ObjectId: 2.5.29.31 Criticality=false
CRLDistributionPoints [
[DistributionPoint:
[URIName: http://crl.comodoca.com/COMODORSADomainValidationSecureServerCA.crl]
]] #5: ObjectId: 2.5.29.32 Criticality=false
CertificatePolicies [
[CertificatePolicyId: [1.3.6.1.4.1.6449.1.2.2.7]
[PolicyQualifierInfo: [
qualifierID: 1.3.6.1.5.5.7.2.1
qualifier: 0000: 16 1D 68 74 74 70 73 3A 2F 2F 73 65 63 75 72 65 ..https://secure
0010: 2E 63 6F 6D 6F 64 6F 2E 63 6F 6D 2F 43 50 53 .comodo.com/CPS ]] ]
[CertificatePolicyId: [2.23.140.1.2.1]
[] ]
] #6: ObjectId: 2.5.29.37 Criticality=false
ExtendedKeyUsages [
serverAuth
clientAuth
] #7: ObjectId: 2.5.29.15 Criticality=true
KeyUsage [
DigitalSignature
Key_Encipherment
] #8: ObjectId: 2.5.29.17 Criticality=false
SubjectAlternativeName [
DNSName: *.luxshare-ict.com
DNSName: luxshare-ict.com
] #9: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: D0 9B 0D 21 28 B7 E3 79 C5 2D 7F FB 84 00 CD 31 ...!(..y.-.....1
0010: 34 E5 70 D3 4.p.
]
] Trust this certificate? [no]: y #这里提示是否信任此证书,默认输入y
Certificate was added to keystore
经过上面一步,则完成证书导入,但是否导入成功,可使用命令先测试一下,
#查看某个证书
#keytool -list -keystore cacerts |grep server #查看公司证书
Enter keystore password: changeit
server.crt, Nov 8, 2019, trustedCertEntry, #查看证书
后来与软件组同事沟通,发现可以正常使用了,至此java派来出来的证书问题解决了。特此记录一下,以方便日后查看
至于命令keytool的使用,可以使用man来查看,
基本上导入证书的话,使用keytool -import
查看证书的话,使用keytool -list

至于windows的导入证书那就简单了,可以参考百度,或跟我沟通,我给你。

由java派生出来的证书错误的更多相关文章

  1. 解决Java调用Azure SDK证书错误javax.net.ssl.SSLHandshakeException

    Azure作为微软的公有云平台,提供了非常丰富的SDK和API让开发人员可以非常方便的调用的各项服务,目前除了自家的.NET, Java, Python, nodeJS, Ruby,PHP等语言都提供 ...

  2. 解决 Java 调用 Azure SDK 证书错误 javax.net.ssl.SSLHandshakeException

    Azure 作为微软的公有云平台,提供了非常丰富的 SDK 和 API 让开发人员可以非常方便的调用的各项服务,目前除了自家的 .NET.Java.Python. nodeJS.Ruby,PHP 等语 ...

  3. 【证书】curl 和 java 请求报证书错误

    1. 说明: 以下:例子的域名因为工作环境的问题,被我拿自己的博客域名替代了,所以无法进行模拟测试,请珍重,哈哈! 2. 环境: centos:7.5 java jdk:1.8.0_74 3. cur ...

  4. java的常见异常与错误总结

    算术异常类:ArithmeticExecption 空指针异常类:NullPointerException 类型强制转换异常:ClassCastException 数组负下标异常:NegativeAr ...

  5. Java爬虫--Https绕过证书

    https网站服务器都是有证书的. 是由网站自己的服务器签发的,并不被浏览器或操作系统广泛接受. 在使用CloseableHttpClient时经常遇到证书错误(知乎的网站就是这样) 现在需要SSL绕 ...

  6. MQTT研究之EMQ:【JAVA代码构建X509证书【续集】】

    openssl创建私钥,获取公钥,创建证书都是比较简单的,就几个指令,很快就可以搞定,之所以说简单,是因为证书里面的基本参数配置不需要我们组装,只需要将命令行里面需要的几个参数配置进去即可.但是呢,用 ...

  7. java获取https网站证书,附带调用https:webservice接口

    一.java 获取https网站证书: 1.创建一个java工程,新建InstallCert类,将以下代码复制进去 package com; import java.io.BufferedReader ...

  8. selenium启动Chrome浏览器和禁止证书错误提示弹出

    要把ChromeDriver放到代码中的文件夹中c://*******Application public static WebDriver WebDriverRun(WebDriver driver ...

  9. LR录制https协议报证书错误,导航已阻止

    使用IE浏览器录制https协议报证书错误,导航已阻止,修改如下配置文件:

随机推荐

  1. 【linux基础】Ubuntu下的终端多标签切换快捷键

    method: 方法一: alt+ alt+ alt+ 方法二: ctrl + pageUp ctrl + pageDown 方法三: Edit--> Keybord Shortcuts 到这里 ...

  2. Python扫描器-常用库-Request

    1.常用库-Request 1.1. 介绍 #安装:pip3 install requests #各种请求方式:常用的就是requests.get()和requests.post() >> ...

  3. 编写高质量iOS代码与OS X代码的effective方法(小结)

    一.熟悉OC: 了解OC的起源: OC和C++,Java等面向对象语言类似,不过有很方面差别.因为该语言使用  消息结构而非函数调用. 消息结构和函数调用的区别:前者是在其运行时所应执行的代码由运行环 ...

  4. Docker Swarm 集群(十七)

    目录 一.Docker Swarm 概念 1.集群 2.Docker Swarm 3.重要概念 swarm node service 二.创建 Swarm 集群 1.环境准备 2.创建 swarm 3 ...

  5. 欧姆龙_NX1P_PLC功能模块_限定安全作业空间

    程序  和说明 以及流程图 已上传到百度云盘 https://pan.baidu.com/s/1kYF11pQHJ4VxyaXr8E_gAA 主要是用来向量的叉乘  判断俩向量正向夹角

  6. vue-cli2和vue-cli3同时存在

    https://blog.csdn.net/Jioho_chen/article/details/90455778 win下 vue-cli2 和 vue-cli3 并存,一起使用开局一张图,内容慢慢 ...

  7. linux环境启动rocketmq服务 报connect to <10.4.86.6:10909> failed异常

    解决方式: 需要给Producer和Consumer的DefaultMQPushConsumer对象set这个参数,生产者和消费者都需要,否则不能正常消费消息: 这个问题解决后可能还会出现: conn ...

  8. Ubuntu16.04 换源(或者404 Not Found问题)

    当执行sudo apt-get update或者sudo apt-get install命令时,出现以下两个问题: “apt-get 404 Not Found Package Repository ...

  9. Luogu4081 USACO17DEC Standing Out from the Herd(广义后缀自动机)

    建出广义SAM,通过parent树对每个节点求出其是否仅被一个子串包含及被哪个包含. 写了无数个sam板子题一点意思都没啊 #include<bits/stdc++.h> using na ...

  10. (二十九)JSP之国际化

    导入 <%@ taglib url="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> 创建三个语 ...