linux – 在JBoss 5上设置SSL

前端之家收集整理的这篇文章主要介绍了linux – 在JBoss 5上设置SSL前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何在 Linux(Red Hat-Fedora 8)盒子上的JBoss 5上启用SSL?

到目前为止我所做的是:

(1)创建一个测试密钥库.

(2)将新生成的server.keystore放在$JBOSS_HOME / server / default / conf中

(3)在$JBOSS_HOME / server / default / deploy / jbossweb.sar中的server.xml中进行以下更改以包含:

<!-- SSL/TLS Connector configuration using the admin devl guide keystore -->
  <Connector protocol="HTTP/1.1" SSLEnabled="true"
       port="8443" address="${jboss.bind.address}"
       scheme="https" secure="true" clientAuth="false"
       keystoreFile="${jboss.server.home.dir}/conf/server.keystore"
       keystorePass="mypassword" sslProtocol = "TLS" />

(4)问题是当JBoss启动时它会记录这个异常(在启动期间)(但我仍然可以查看http://localhost:8080/下的所有内容):

03:59:54,780 ERROR [Http11Protocol] Error initializing endpoint

java.io.IOException:无法恢复密钥
在org.apache.tomcat.util.net.jsse.JSSESocketFactory.init(JSSESocketFactory.java:456)
在org.apache.tomcat.util.net.jsse.JSSESocketFactory.createSocket(JSSESocketFactory.java:139)
在org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:498)
在org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:175)
在org.apache.catalina.connector.Connector.initialize(Connector.java:1029)
在org.apache.catalina.core.StandardService.initialize(StandardService.java:683)
在org.apache.catalina.core.StandardServer.initialize(StandardServer.java:821)
在org.jboss.web.tomcat.service.deployers.TomcatService.startService(TomcatService.java:313)

我知道要启用完整的SSL客户端身份验证还有很多工作要做….

解决方法

这可能不是您正在寻找的最直接的答案,但经过多年设置基于Tomcat的基础架构,我现在总是使用Apache和mod_ssl前端,使用mod_jk(ajp13)连接它们.这有很多原因:

>您可以将所有静态文件处理卸载到Apache以获得更好的性能
>您可以访问所有mod_rewrite(以及其他令人敬畏的模块)功能
>使用Apache设置SSL是没有道理的,Tomcat甚至不知道它是一个SSL通道

……等等.虽然java引擎可以处理SSL,但它不是生活中的一个优点,而且往往比它的价值更麻烦.让java处理webapps及其java代码,让Apache做它最擅长的事情.您还会发现mod_jk有很多很好的选项可以确保您的应用引擎不会过载;使用正确的参数组合,当Tomcat实例响应速度不够快(或崩溃/锁定)时,您可以让用户以干净,美观的方式临时重定向.

猜你在找的Linux相关文章