首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Grizzly Server中止SSL握手

Grizzly Server中止SSL握手
EN

Stack Overflow用户
提问于 2014-08-07 16:21:28
回答 1查看 6.7K关注 0票数 4

关于使用带有自签名证书的SSL,我有一个问题.我在这里使用了这个例子-- http://people.apache.org/~gmazza/restexamples/https-clientserver-grizzly

单元测试工作得很好。但是,如果启动grizzly服务器并尝试使用curl获取资源,则会出现以下错误:

代码语言:javascript
复制
curl -v https://localhost:8443/api/v1/hello
* Adding handle: conn: 0x7ff69b004400
* Adding handle: send: 0
* Adding handle: recv: 0
* Curl_addHandleToPipeline: length: 1
* - Conn 0 (0x7ff69b004400) send_pipe: 1, recv_pipe: 0
* About to connect() to localhost port 8443 (#0)
*   Trying ::1...
*   Trying fe80::1...
*   Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 8443 (#0)
* Server aborted the SSL handshake
* Closing connection 0
curl: (35) Server aborted the SSL handshake

我已经将证书添加到系统密钥链中,并始终信任所有类别。不过,没有浏览器能够获得资源。这是我从Chrome获得的错误消息。

无法与服务器建立安全连接。这可能是服务器的问题,也可能需要您没有的客户端身份验证证书。错误代码: ERR_SSL_PROTOCOL_ERROR

还有其他人遇到过同样的问题吗?

添加:

对于curl,我使用key工具生成java keystore和cert。

代码语言:javascript
复制
keytool  -genkey -keystore ./keystore_server -alias serverKey -dname "CN=localhost, OU=Jersey, O=Sun Microsystem, L=Prague, ST=Czech Republic, C=CZ"  
keytool -export -alias serverKey -rfc -keystore ./keystore_server > ./server.cert
openssl x509 -in server.cert -inform PEM -text -out server.pem 

然后我跑了

代码语言:javascript
复制
curl -E server.pem -v https://localhost:8443/api/v1/hello -u "username:password"

但是,我遇到了和以前一样的错误。

对于浏览器,我现在已经开始在Firefox和Chrome上工作了。然而,我仍然对Safari有问题。我收到错误消息说Safari无法打开页面,因为safari无法建立到server.Anyone的安全连接,我知道如何使safari快乐吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-08 02:37:09

但是,如果我启动了grizzly服务器,并试图使用curl获取资源,我就会出现错误,比如.

cURL不使用操作系统的密钥链。该规则的例外情况是,如果cURL是针对SecureTransport为iOS或OS构建的。请参见curl.1手册页-E--cert选项。即使在这种情况下,也不是为了可信赖的锚。

如果您想要使用特定的CA来验证服务器,那么您应该使用--cacert选项来指定它。您还可以使用此选项指定cacert.pem包。见curl.1手册页

铬..。错误代码:ERR_SSL_PROTOCOL_ERROR

这是另一个问题。Chrome使用操作系统的keystore。参见Chromium的根证书策略

要修复它,您可能需要查看让Chrome接受自签名本地主机证书

把证书和你的问题一起寄出去也许是个好主意。使用以下方法生成它(假设其PEM编码):

代码语言:javascript
复制
openssl x509 -in <cert> -inform PEM -text -noout

还有其他人遇到过同样的问题吗?

其他人可能也经历过这个问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25187501

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档