1

设置:我有一个码头(8.1.5,如果重要的话)服务器通过 https 运行一个简单的站点,使用自签名证书(它是内部网,所以这不是问题)。这行得通。

但是,为了提供更好的用户体验,我想提供 SSL 证书以供下载和安装,并使用正确的内容类型“application/x-x509-ca-cert”。为了做到这一点,我需要两件事:

  1. 一种从 Jetty 使用的 KeyStore 获取证书的方法。我知道我可以使用 OpenSSL 客户端执行此操作,但我确实需要以编程方式执行此操作,并且最好不必打开与服务器的新连接。

  2. 一种以正确格式向用户提供此证书的方法。我非常确信我可以通过编写自定义 HttpServlet 来做到这一点,但是有没有更聪明/更快的方法?

4

2 回答 2

1

不久前,我写了一些代码来验证签名 jar 的证书,您可能可以使用它来启发 servlet,该 servlet 可以引用密钥库并返回证书。它至少可以帮助您入门。

https://github.com/jetty-project/jetty-webapp-verifier/blob/master/src/main/java/org/mortbay/jetty/webapp/verifier/rules/JarSignatureRule.java

于 2012-09-19T19:12:27.107 回答
0

这是我过去所做的,这可能是您考虑的另一种选择:

  1. 仅使用浏览器下载服务器证书(不需要 openSSL)。访问您的网站,查看证书并将证书复制/导出到您的计算机。
  2. 将该服务器证书复制到您的 Web 服务器并在您的 Jetty 上发布一个 HTTP 页面,其中包含下载该证书的链接以及在不同浏览器中安装的说明(最好带有屏幕截图)。
  3. 与将访问您的 (HTTPS) 网站的用户共享此链接
于 2012-09-19T19:05:05.670 回答