我的GF4和SSL有一些问题。
我已经安装了GF4,并在本教程中列出了所有更改
一切顺利,但现在,我想使用GF服务器在线和prudutiv环境,我想改变SSL证书买一个。我已经买了一个SSL123 Thawte SSL证书,这只是域名签名(对初学者来说应该足够了)。现在我有了. key的. csr和. crt文件。我已经看了,如何导入一个给定的密钥和阴极射线管文件到现有的密钥存储。(
现在,如果我只是停止GF域并删除两个别名“s1as”和“glassfish instance”,然后在这个别名下导入新的SSL证书,我就无法再次启动该域。我在服务器中遇到以下两个错误。日志:
[2014-05-28T14:33:55.105+0200] [glassfish 4.0] [WARNING] [] [org.glassfish.grizzly.config.SSLConfigurator] [tid: _ThreadID=28 _ThreadName=http-listener-2(4)] [timeMillis: 1401280435105] [levelValue: 900] [[
GRIZZLY0050: SSL support could not be configured!
java.io.IOException: A MultiException has 2 exceptions. They are:
1. java.lang.Error: java.security.UnrecoverableKeyException: Cannot recover key
2. java.lang.IllegalStateException: Unable to perform operation: post construct on com.sun.enterprise.security.ssl.SSLUtils
at org.glassfish.grizzly.config.ssl.JSSE14SocketFactory.init(JSSE14SocketFactory.java:162)
at org.glassfish.grizzly.config.SSLConfigurator.initializeSSLContext(SSLConfigurator.java:249)
at org.glassfish.grizzly.config.SSLConfigurator.configureSSL(SSLConfigurator.java:131)
at org.glassfish.grizzly.config.SSLConfigurator$InternalSSLContextConfigurator.createSSLContext(SSLConfigurator.java:389)
at org.glassfish.grizzly.ssl.SSLEngineConfigurator.createSSLEngine(SSLEngineConfigurator.java:180)
at org.glassfish.grizzly.ssl.SSLBaseFilter$SSLTransportFilterWrapper.handleRead(SSLBaseFilter.java:968)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:745)
]]
[2014-05-28T14:33:55.124+0200] [glassfish 4.0] [WARNING] [] [org.glassfish.grizzly.filterchain.DefaultFilterChain] [tid: _ThreadID=28 _ThreadName=http-listener-2(4)] [timeMillis: 1401280435124] [levelValue: 900] [[
Exception during FilterChain execution
java.lang.NullPointerException
at org.glassfish.grizzly.ssl.SSLEngineConfigurator.createSSLEngine(SSLEngineConfigurator.java:185)
at org.glassfish.grizzly.ssl.SSLBaseFilter$SSLTransportFilterWrapper.handleRead(SSLBaseFilter.java:968)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:745)
]]
我已经尝试了其他配置,更改了证书密码,更改了主密码,但我无法让它工作。。。我希望有人能给我正确的看法。
谢啦
编辑1:我在Apache2.2上使用了SSL证书。那里一切都很好。
这很可能是密码问题。在登台环境中,您可以尝试将所有密码(包括服务器的主密码)设置为相同。请注意,在生产环境中这是个坏主意!您还可以尝试使用vm选项为密钥指定不同的密码。
我使用Jetty9,所以下面是它在jetty-ssl.xml中的配置: 但是当我重新启动服务器时,它仍然显示为在浏览器上用https自签名的红色X标记 以下是密钥库: 根,2014年11月16日,受信证书条目,证书指纹(SHA1):51:51:B8:63:8A:4C:1F:15:54:56:Ed:37:C9:10:35:CA:D3:01:B9:36 中级,2014年11月16日,受信证书条目,证书
我有一个python程序,它使用PyKCS11,pkcs11接口的python包装器。我可以使用存储在HSM上并由PyKCS11访问的ECC私钥(机制CKM_ECDSA)对数据进行签名。 我现在想要的是用openssl通过相应的公钥验证ECDSA签名。该公钥包含在x509(NewCert.pem)中,该x509由HSM中的私钥创建。 我测试了许多正确验证签名的方法,但没有成功。 文件签名包含bas
我正在学习使用ADFS进行基于SAML的声明验证。与其将用户带到IDP的登录页面,然后请求用户输入她的凭据,不如在SP中获取用户的凭据并将其传递给IDP以在那里进行验证,然后使用SAML令牌返回SP。 这纯粹是实验性的,我想尝试一下,以避免用户在IdP登录页面中输入凭据,而不是在SP中获取她的凭据从IdP验证。 谢谢
我在验证从ADFS服务器获得的SAML响应时遇到了问题。我以url的形式获得响应,例如,而是http://www.w3.org/2001/04/xmldsig-more#rsa-sha256。我设法解码了响应,但无法找到使用给定签名验证响应的方法。 我的主要问题是签名有一个非常意外的格式。由于给定的签名算法,我希望签名的长度为32字节,但是当我base64-decode签名时,我得到的是长度为25
我需要向使用TLS客户端身份验证的服务器发送请求。为此,我用我的证书和私钥创建了一个PKCS12文件,并在SSLContext中将其设置为KeyManager。 我还使用keytool将证书从服务器添加到存储区中,虽然这不起作用,但我使用InstallCerts下载了我猜所有的中间证书,并在cacerts中安装了thoses。我现在遇到的问题是。 我不确定为什么会出现这种情况,根据我的理解,如果设
使用`openssl x509-in cert.pem-noout-text查看证书会得到以下结果: 我知道有一些解决方法,包括禁用证书检查(或者只在本地的普通HTTP上运行API),但我真的很好奇,也很困惑为什么它不能在HTTPS上工作。非常感谢任何帮助。