`
seafront12
  • 浏览: 4709 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
文章分类
社区版块
存档分类
最新评论

Use InstallCert

阅读更多
编译InstallCert.java,然后执行:java InstallCert hostname,比如:
java InstallCert www.twitter.com
会看到如下信息:
java InstallCert www.twitter.com
Loading KeyStore /usr/java/jdk1.6.0_16/jre/lib/security/cacerts...
Opening connection to www.twitter.com:443...
Starting SSL handshake...

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
at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:150)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1476)
at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:174)
at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:168)
at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:846)
at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:106)
at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:495)
at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:433)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:815)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1025)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1038)
at InstallCert.main(InstallCert.java:63)
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:221)
at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:145)
at sun.security.validator.Validator.validate(Validator.java:203)
at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:172)
at InstallCert$SavingTrustManager.checkServerTrusted(InstallCert.java:158)
at com.sun.net.ssl.internal.ssl.JsseX509TrustManager.checkServerTrusted(SSLContextImpl.java:320)
at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:839)
... 7 more
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:236)
at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:194)
at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:216)
... 13 more

Server sent 2 certificate(s):

1 Subject CN=www.twitter.com, O=example.com, C=US
   Issuer  CN=Certificate Shack, O=example.com, C=US
   sha1    2e 7f 76 9b 52 91 09 2e 5d 8f 6b 61 39 2d 5e 06 e4 d8 e9 c7
   md5     dd d1 a8 03 d7 6c 4b 11 a7 3d 74 28 89 d0 67 54

2 Subject CN=Certificate Shack, O=example.com, C=US
   Issuer  CN=Certificate Shack, O=example.com, C=US
   sha1    fb 58 a7 03 c4 4e 3b 0e e3 2c 40 2f 87 64 13 4d df e1 a1 a6
   md5     72 a0 95 43 7e 41 88 18 ae 2f 6d 98 01 2c 89 68

Enter certificate to add to trusted keystore or 'q' to quit: [1]

输入1,回车,然后会在当前的目录下产生一个名为“ssecacerts”的证书。
将证书拷贝到$JAVA_HOME/jre/lib/security目录下,或者通过以下方式:
System.setProperty("javax.net.ssl.trustStore", "你的jssecacerts证书路径");


注意:因为是静态加载,所以要重新启动你的Web Server,证书才能生效。
分享到:
评论

相关推荐

    use平台简单开发例子

    【USE平台简单开发例子】 USE(Universal Service Engine)普元平台是一个企业级的服务开发和运行平台,它提供了全面的服务管理、服务开发、服务部署和监控等功能。本教程将通过一个简单的开发例子,帮助你理解如何...

    ranger-2.1.0-usersync.tar.gz

    在“ranger-2.1.0-usersync.tar.gz”这个压缩包中,我们关注的是Ranger的用户同步工具(Ranger Usersync),这是一个关键组件,用于将组织的用户和组信息从身份提供者(如Active Directory或LDAP)同步到Hadoop集群...

    netuse命令详解

    ### netuse命令详解 在Windows操作系统中,`netuse`命令是一个非常强大的工具,用于管理网络资源的连接,包括映射网络驱动器、断开网络连接等操作。它允许用户轻松地访问网络上的共享资源,如文件夹或打印机,而...

    Caniuse用于查看浏览器对各种新特性的兼容情况

    Caniuse是一个非常重要的在线工具,对于前端开发者来说,它是一个不可或缺的资源库。这个工具主要用来查询不同的浏览器对Web开发中新特性的支持情况。在不断发展的互联网技术中,JavaScript和其他相关技术的新特性...

    基于vueuse的api实现的虚拟滚动和无限滚动列表

    博主在使用 Vue 3 和 Vite 4 构建的项目中,基于 vueuse 提供的丰富 API,成功实现了虚拟滚动和无限滚动列表的功能,这一成果充分展现了博主在前端开发领域的深厚技术功底和创新能力。 首先,博主通过充分利用 vue...

    Writing Effective Use Cases

    ### 有效撰写Use Case 的关键方法与实践 #### 标题理解:《撰写有效的Use Case》 本书聚焦于如何高效地编写Use Case文档,旨在帮助读者掌握正确的编写技巧,从而更好地捕捉、分析并表述系统需求。 #### 描述解读...

    UseCase文档模版在面向对象软件开发中的应用

    【UseCase文档模版在面向对象软件开发中的应用】 Use Case驱动的面向对象软件开发方法是一种以用户需求为中心的方法论,由Rational统一过程(RUP)所提倡。在这个过程中,Use Case模型扮演了核心角色,它清晰地描述...

    遥感图像数据集UCMerced_LandUse

    《遥感图像数据集UCMerced_LandUse详解》 遥感图像数据集UCMerced_LandUse是针对地表覆盖分类研究的重要资源,它在地理信息系统(GIS)、地球科学、环境监测、城市规划等领域有着广泛的应用。这个数据集由美国加州...

    net_use命令详细解释

    ### net_use命令详细解释 #### 一、net_use命令简介 `net_use`命令是Windows系统中的一个网络管理工具,主要用于连接或断开共享资源,还可以列出所有当前的连接。通过`net_use`命令,用户可以轻松地访问远程计算机...

    UC Merced_ LandUse数据集

    UC Merced LandUse数据集是遥感影像分析领域的一个重要资源,特别适用于深度学习技术的研究与应用。这个数据集由美国加州大学默塞德分校(University of California, Merced)创建,旨在为土地覆盖分类提供高质量的...

    uml - writing effective use cases 带PDF书签版本

    ### UML - Writing Effective Use Cases #### 概述与背景 《Writing Effective Use Cases》一书由Alistair Cockburn撰写,是理解并掌握用例(Use Case)编写技巧的重要资源。本书通过丰富的实例和实用指导,帮助...

    net use 远程关机

    #### 一、Net Use 命令及远程操作 - **Net Use 命令概述**: - `net use` 是Windows操作系统中的一个命令行工具,用于建立、查询或断开计算机与网络资源之间的连接。 - 通过此命令可以实现与远程计算机的IPC$...

    Caniuse命令行工具

    **Caniuse命令行工具详解** Caniuse命令行工具,是基于Node.js开发的一款实用程序,主要用于前端开发者快速查询浏览器对各种Web技术特性的支持情况。它与知名的在线资源"Caniuse.com"紧密集成,提供了方便快捷的...

    UseCase2.0 PPT

    《UseCase2.0:用例驱动开发的深化与扩展》 在软件工程领域,用例(Use Case)自提出以来便成为了系统分析、设计和测试的重要工具,它有效地沟通了系统应该实现的功能,将需求置于特定用户目标的上下文中,并作为...

    C语言头文件 USE_ANSI

    C语言头文件 USE_ANSIC语言头文件 USE_ANSIC语言头文件 USE_ANSIC语言头文件 USE_ANSIC语言头文件 USE_ANSIC语言头文件 USE_ANSIC语言头文件 USE_ANSIC语言头文件 USE_ANSIC语言头文件 USE_ANSIC语言头文件 USE_ANSI...

    Academic Vocabulary in Use

    Academic Vocabulary in Use is the perfect study aid for anyone using English for their academic work. Ideal for students of any discipline, from engineers or social scientists to business students or ...

    高通chi usecase流程分析.pdf

    在本文档中,我们将深入探讨高通公司的ISP(Image Signal Processor)架构以及其在相机应用中的使用案例(usecase)流程。首先,我们简要概述高通ISP的基本架构及其数据处理流程,接着详细分析usecase XML配置文件,...

    DOS下net use 命令详解

    在DOS操作系统中,`net use`命令是一种强大的工具,用于管理和控制网络连接。这个命令允许用户映射网络驱动器、断开连接、添加或删除用户账户,以及建立和查看网络资源的连接状态。本文将详细解析`net use`命令的...

    《The Barra US Equity Model (USE4)》.pdf

    《The Barra US Equity Model (USE4)》官方正版说明文档是一份关于金融市场投资分析的专业文件,其内容涵盖了巴拉萨股票模型USE4的核心原理与方法论。以下是从文档中提炼出的相关知识点: 1. 现代投资组合理论与...

Global site tag (gtag.js) - Google Analytics