最近把项目从腾讯云迁移到阿里云(linux)后,突然发现邮件功能不能用,经过排查log发现报了一个协议的错误:javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
转载请注明出处:https://www.cnblogs.com/funnyzpc/p/10989813.html
前言:曾经听别人说生成证书时能够用IP地址。今天用样例证实了下用IP地址是不行的。
脑子想了半天,没遇到过这个问题呀,说的什么鬼证书的事儿。我从 Windows 切换到 Mac OS,Android Studio 倒是一直没出现过这个鬼鬼。
在爬取https网站的时候,今天遇到了一个之前没有见过的异常javax.net.ssl.SSLHandshakeException,具体细节请看如图
异常原因是ssl证书校验失败,因为自己网站是http的,对方公司是https的接口,所以证书校验失败,处理方法是在网上找的一个不错的方法,思路是重写一个不验证证书的SocketFactory,Axis默认SocketFactory,会对server端的证书进行验证,导致验证异常
Glide加载https图片报错:javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
SSL协议在当今的网络信息传输过程中起到了不可替代的作用,使用不对称加密技术实现会话双方之间信息的安全传递,实现信息传递的保密性、完整性,并且会话双方能鉴别对方身份。
相信使用过Spring的众多开发者都知道Spring提供了非常好用的 JavaMailSender接口实现邮件发送。在Spring Boot的Starter模块中也为此提供了自动化配置。下面通过实例看看如何在Spring Boot中使用 JavaMailSender 发送邮件。
总述 https简单来说就是在http协议的基础上增加了一层安全协议。通常为TLS或者SSL(一般现在都采用TLS,更加安全)。这一层安全协议的最主要的作用有两个: 1. 验证服务端或客户端的合法性
javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
本人在做接口自动化的过程中,遇到了请求第三方https协议请求,在经过了短暂的知识重新学习之后,写完代码执行起来总是遇到一个异常,在用客户端执行请求的时候抛出来的,下面是异常的信息:
上面这个问题归结起来就是无法验证网站的证书,找不到证书验证链 针对这个问题,Java的证书验证系统与其他不同,将代理工具生成的证书作为可信根证书导入系统证书库,是存在问题的。在java的认证需要使用JRE中证书库,所有必须把代理工具的证书加入到JRE的证书库中。下面解决步骤:
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'attrAttrgroupRelationController': Unsatisfied dependency expressed through field 'attrAttrgroupRelationService'; nested exception is org.springframework.
Question:unable to find valid certification path to requested target
hosts文件添加 Knox 的{ {GATE_WAY}}ip的映射 就可以打开界面了
测试环境数据库从 5.7.27 升级到 5.7.44之后, 应用发现连不上数据库了.
不过抛出异常,需要注意,如果是jdk8就不需要设置TLSv1.0,jdk6有些版本不能设置TLSv1.1
最近 很多 询问关于 DataGrip或其他JetBrains`家IDE的MySQL数据库配置中报错的问题。具体的报错信息大概是这样的:
在Centos上部署项目发现一个奇怪的问题,数据库连接一直抛异常。于是花了两个小时搜了各种数据库连接异常导致的原因,最终问题得以解决。同时,把解决过程中搜集到的异常信息汇总一下,当大家遇到类似的问题时,给大家以思路。必须珍藏。
维护的系统增加,导致对应需要维护的开发数据库环境也增加了,为了简化管理和监控,搭建图形化管理平台,是一种不错的解决方案,我们知道,11g就有了GC(Grid Control),发展到现在,已经有了12c CC和13c CC(Cloud Control)。
代理服务器预装的IBM Http Server, 他们之前配置了代理,而且还在代理server加了证书,这些都是多余的,代理server只提供了放开网络的功能,不需要证书,于是全给删了,只需要配置正向代理即可:
这将显示 SSL 相关的配置选项和参数,例如 ssl_ca、ssl_cert、ssl_key 等。
文章主要讲述了如何通过配置nginx.conf来实现反向代理和负载均衡。介绍了反向代理和负载均衡的概念,以及常见的方法和优缺点。还介绍了一种基于nginx的配置方法,并给出了详细的步骤和示例。
代码已托管到 https://github.com/yangshangwei/commonUtils
1.首先看到的报错信息org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; 怀疑是项目配置的链接数据库的地址或者用户名, 密码错误导致,后仔细核查数据库ip ,端口号,数据库用户名,密码均未发现异常。 2.考虑到1中未排查出异常,故继续往下找,发现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,查询了一下错误信息的意义,发现这个应该是缺少认证证书的问题,但是连接数据库并不是通过https连接,怎么会触发证书认证的情况?可以错误日志也没有再提供其他的方向了,这个时候跟程序发现报了mysql的08001的错误码,查询得知代表的是数据库连接时区配置问题,再次检查时区配置,并按社区小伙伴提供的时区配置后问题仍然没有解决。 3.基于2中缺少证书的问题,给自己的tomcat安装了认证证书,但是问题仍然存在 4.问题再次回到1,检查数据库连接,发现原来的数据库连接有参数userSSL=true,这个参数是过去到现在一直存在的,查询参数意义发现如果这个参数开启,需要应用端和服务端同时配置证书,查看mysql服务端
公司全部站点升级了https,升级过程由同事们完成,我没有过问细节。ssl证书使用的是阿里云 的【Symantec免费版 SSL】一年免费。
Flink1.13.6 MySQL5.7.27 JDK8 Hadoop3.1.4 集成环境Idea2020
在Java开发中,遇到 sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target 错误时,可能会让许多开发者感到困惑。本文将详细介绍如何解决此问题,包括背景介绍、解决方案和代码示例。关键词:PKIX path building failed, ValidatorException, SSLHandshakeException, Java证书验证问题, SunCertPathBuilderException。
SSL(Secure Socket Layer:安全套接字层),利用数据加密、身份验证和消息完整性验证机制,为基于TCP等可靠连接的应用层协议提供安全性保证。
在保障数据安全的现代环境中,对 Elasticsearch 启动和访问实施有效的密码保护至关重要。本节将详细介绍如何设置 Elasticsearch 的启动密码以及访问密码,以确保系统的安全性。通过合理配置密钥库和使用 SSL 加密通信,您可以有效地管理启动密码,并在访问密码方面提供更强大的安全性。
证书对于实现此单点登录非常之重要,证书是服务器端和客户端安全通信的凭证,本教程只是演示,所有用了
AppScan扫描CAS所在的tomcat,检查出"支持不推荐使用的 SSL 版本",于是在tomcat中设置 <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="200" SSLEnabled="true" scheme="https" secure="true" keystoreFile="/opt/neu/ke
Docker为了实现集群管理,提供了远程管理的端口。Docker Daemon作为守护进程运行在后台,可以执行发送到管理端口上的Docker命令。
这是在代码尝试访问不在值内的数组索引时发生的运行时错误消息。以下代码将触发此异常:
接上文50个常见的 Java 错误及避免方法(第一部分) 17.“Cannot Return a Value From Method Whose Result Type Is Void” 当一个voi
这个代码是sql-client.sh中成功读取到MySQL插入的数据,此时在MySQL中对数据的操作即可通过FlinkCDC连接展示在此界面。
前言: 最近由于有点时间,就像深入的学习一下Hibernate.之前只是简单的使用,并没领会它的妙处。这里就趁着分享的机会,好好整理一下。 这篇主要讲到了下面几个部分: Hiberna
到你的下载的hadoop所在版本的lib包中引入jackson-core-asl-1.8.8.jar 和 jackson-mapper-asl-1.8.8.jar 后错误消失
上面的代码,在本地调试的时候正常跑过,没有出现任何异常,但是放到测试环境之后便会出现下面的异常,这三种异常都是从ks.load(certStream, password)这里抛出来的。定位这个问题花费了一些时间,且让我小小总结一下,供大家遇到相同问题时有个参考。
ES高版本已经支持x-pack认证,TBDS的ES版本是6.4.2,默认已经安装了x-pack,下面是配置方法。
除了 Oracle 对微服务已经全面的支持之外,新功能还使跨服务事务的实现变得更加简单。
设置docker compose的COMPOSE_PROJECT_NAME环境变量时,在有多个单词时,尽量不要使用下划线,因为COMPOSE_PROJECT_NAME会作为container_name的一部分。 而container_name在容器网络中会作为“域名”。而域名,是不接受非ldh ascii字符的,即不接受下划线。
当我们尝试调用带有错误参数的Java代码时,通常会产生此Java错误消息(@ghacksnews):
领取专属 10元无门槛券
手把手带您无忧上云