我没有更改我的tomcat上的任何内容但是从2天前大约23:00 pm“peer not authenticated”发生了,从那以后我无法登录。 错误是
2016-03-05 19:23:34 ERROR [UsernamePasswordAuthnHandler] - IOException happended during authentication
javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
at sun.security.ssl.SSLSessionImpl.getPeerCertificates(SSLSessionImpl.java:407)
at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:126)
at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:572)
at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:180)
at org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:294)
at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:645)
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:480)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:906)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:805)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:784)
at com.company.userservice.common.util.HttpUtil.execute(HttpUtil.java:256)
at com.company.userservice.common.util.HttpUtil.issueGetRequest(HttpUtil.java:94)
at com.company.userservice.engine.handler.UsernamePasswordAuthnHandler.authenticateUsernamePasswordInternal(UsernamePasswordAuthnHandler.java:124)
at org.jasig.cas.authentication.handler.support.AbstractUsernamePasswordAuthenticationHandler.doAuthentication(AbstractUsernamePasswordAuthenticationHandler.java:71)
我想这是由自签名证书过期引起的,但它表明它仍然有效:
keytool -list -v -keystore xxxx.jks
序列号:7a692bb1 有效期:2014年7月3日星期四16:13:19 CST 2014年至2016年6月2日16:13:19 证书指纹:
以下是我在server.xml中的配置
<Connector port="8491" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="/usr/local/tomcat7_8091/conf/xxxx.jks" keystorePass="123456" />
当前自签名密钥发生了什么变化?我还试图生成一个新的自签名密钥,但仍然与上面相同的错误。我该怎么办?它已经工作了2年,但突然间它停止了工作。
答案 0 :(得分:0)
解决这个问题很简单,但找出根本原因是一个痛苦的过程...希望我在这里写的内容可以帮助将来的某个人并节省一些时间。
我的属性文件中的confiration错误: 为ssl端口设置了非ssl端口,在我的情况下,它应该是8443,而它设置为8081
因此错误。
8443在tomcat server.xml中启用,如下所示:
<Connector port="8081" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="D:\xxxx\keystore" keystorePass="123456"/>