在 Glassfish v3 上设置 SSL 的问题

在 Glassfish v3 上设置 SSL 的问题

我目前正在 glassfish 上设置 SSL,但在连接服务器时遇到了一些问题。

http://javadude.wordpress.com/2010/04/06/getting-started-with-glassfish-v3-and-ssl/

我按照本指南设置了证书,效果似乎很好,但我无法让 glassfish 指向证书。经过进一步研究,我发现了另一份指南,其中说,除了我所做的更改之外,我还必须将 domain.xml 中的所有“s1as”实例更改为我为证书指定的别名。最后,经过一番摆弄,我更改了以下内容以指向我的密钥库

-Djavax.net.ssl.keyStore=${com.sun.aas.instanceRoot}/config/keystore.jks

这部分起作用了,前几次尝试我能够成功连接,但每次连续的尝试都会导致浏览器超时。

我是否遗漏了某个设置,或者别人是否看出我做错了什么?

答案1

在全新安装的 Glassfish 3.1 上设置 SSL

我在使用 3.0.1 时遇到了很多问题,因此我建议升级到 3.1

按照上面链接上的说明,这将成功创建密钥库和证书。

更改主密码

Glassfish 上设置的主密码也是允许访问 SSL 证书存储的密码。Glassfish 3.1 的默认密码是“changeit”,Glassfish 3.0.1 没有默认主密码。要更改主密码,请打开命令提示符并输入

cd C:\glassfish3\bin

asadmin change-master-password

系统将提示您输入默认密码,然后要求输入新密码,该密码应设置为您设置证书存储密码的值。

安装证书

将文件 server.keystore 文件复制到C:\glassfish3\glassfish\domains\domain1\config\

打开C:\glassfish3\glassfish\domains\domain1\configdomain.xml 文档,找到该短语的所有实例s1as,并将其替换为您为证书指定的别名。应该有大约 22 处更改。在同一文档中,将所有实例替换为keystore.jksserver.keystore这是上述 javadude 说明中创建的新密钥库的名称。应该有 2 处更改。

设置glassfish进行SSL

通过转到“开始”->“所有程序”->“Glassfish 服务器开源版本 Web 配置文件”->“启动应用程序服务器”来启动 Glassfish 服务器。这将打开一个最小化在屏幕底部的 cmd 窗口。将其最大化并输入 Glassfish 主密码。打开 Web 浏览器并输入 URLhttp://localhost:4848以访问管理控制台。转到“配置”->“服务器配置”->“网络配置”->“网络侦听器”->“Http-listener-2”。将端口更改为 443,并确保选中启用安全框。单击“保存”。在 SSL 选项卡上,选中 SSL3 和 TLS 旁边的框,将证书昵称更改为您在上一步中设置的别名(如果尚未自动设置),然后单击“保存”。

答案2

如果您将 GF 用作 Windows 服务,则必须使用以下命令保存主密码:

asadmin change-master-password --savemasterpassword true

在其他情况下,Windows 服务将不会再次启动。

相关内容