Apache Webserver& JBoss与https的AJP连接

时间:2009-11-06 05:17:01

标签: apache ssl jboss ajp

我们正在托管在JBoss上运行的Java EE应用程序。出于安全原因,应该在Internet上提供的此应用程序受前端Apache服务器保护。我们正在使用AJP来实现这一点。

当我们通过http访问应用程序时,这工作正常。当我们尝试使用https执行此操作时,它不起作用,当我们访问Java EE应用程序时,我们收到404错误。我们已将SSL证书放在Apache服务器中。

2 个答案:

答案 0 :(得分:2)

来自community.jboss.org

  

加密和SSL支持

     

AJP协议未加密,因此不应与公共网络基础结构一起使用。如果需要保护Web和应用程序服务器之间的数据传输,因为传输介质可能被外界嗅探,那么必须使用某种SSL隧道。另一种选择是将https协议与mod_proxy一起使用。但是,使用https协议会使事情变得更复杂,因为必须确保在应用程序服务器中编写自定义Filter,以便客户端证书透明地传递给应用程序服务器。另一方面,AJP协议自动处理此问题,但结果是在Web和应用程序服务器之间传递解密数据。对于SSL而言,AJP协议的行为类似于缓存SSL加速器。   这提供了更高的性能,因为数据只被解密一次。使用不同的网卡和一组防火墙和路由器在Web和应用程序服务器之间保护网络是最安全的解决方案。   另一个选择是将Web和应用程序服务器放在同一物理盒上,在这种情况下将使用内存中通信,从而提高整个系统的安全性。

答案 1 :(得分:1)

通常使用单独的虚拟主机(vhost)启用Apache上的SSL。您是否为该虚拟主机启用并配置了mod_jkmod_proxy_ajp/mod_cluster)?