我正在尝试获得适合我们内部 Jira/Confluence 部署的证书。人们通过主机名或 FQDN 以不同的方式访问它们。我正在使用 Java 7 的 keytool,因此我可以访问服务器备用名称功能:
-ext san=dns:jira
Run Code Online (Sandbox Code Playgroud)
……我把它交给……
jira.example.com
Run Code Online (Sandbox Code Playgroud)
...作为生成证书时的 CN。然后我生成一个签名请求,将 CSR 交给我们的 Win2k8r2 PKIcertreq
以获取密钥签名并将密钥导入回密钥库。
现在,当我按照上面所说的进行设置时,我的浏览器(Chrome、Firefox、Safari)似乎认为这jira
是唯一有效的名称,即使当我检查证书时 CN 显示 FQDN。
如果我删除ext
它,它将使用作为 FQDN 的 CN。
当我有多个ext
语句时,它只使用最后一个,并且我尝试DNS:foo
在一个ext
条目下将多个字符串与各种标点符号一起使用。
我遇到的另一个角度是设置 Web 服务器对 FQDN 执行 301。我对此也很好,但我坚持使用 Tomcat,所以“切换到 Apache/nginx”对我不起作用。这似乎是我遇到的唯一一个用 Tomcat 做类似事情的文档,但它已经 3 岁了,对我来说已经结束了。他们是否已将该功能添加到 Tomcat6?