首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有多个域的JBOSS自签名SSL证书

问具有多个域的JBOSS自签名SSL证书
EN

Stack Overflow用户
提问于 2012-11-30 14:27:31
回答 2查看 1.3K关注 0票数 1

是否有任何方法为多域创建自签名的 SSL证书?我的环境是jboss-5.1.0.GA。

我已经使用以下java keytool命令为单个域创建了一个自签名SSL证书。

代码语言:javascript
复制
 keytool -genkey -alias jbosskey -keypass changeit -keyalg RSA -keystore    server.keystore
 *Answer the prompts.  Use myHostname when asked for first/last name
 keytool -export -alias jbosskey -keypass changeit -file server.crt -keystore   server.keystore
 keytool -import -alias jbosscert -keypass changeit -file server.crt -keystore server.keystore

然后,在JBOSS server.xml中启用SSL,如下所示;

代码语言:javascript
复制
 <Connector protocol="HTTP/1.1" SSLEnabled="true" 
       port="7443" address="${jboss.bind.address}"
       scheme="https" secure="true" clientAuth="false" 
       keystoreFile="${jboss.server.home.dir}/conf/server.keystore"
       keystorePass="changeit" sslProtocol = "TLS" />

这很好用。现在,我需要在这个证书中添加另一个单独的域名。

请注意,这不是通配符证书,我指的是哪个支持子域。

我需要做的是,添加完全独立的域名到单个密钥存储文件。

P.S.

我正在开发apache + JBOSS环境。apache服务器充当代理。

我可以在Apachehttpd-ssl.conf配置中为不同的域提供单独的SSL证书文件。但当我来找JBOSS的时候,我不知道该怎么处理。

如果我们使用apache作为代理(这意味着在apache中配置ssl ),我们可以忽略来自JBOSS的SSL吗?

我试图忽略条目(keystoreFile="${jboss.server.home.dir}/conf/server.keystore"),但这会产生一个错误。

如果没有,是否有任何方法可以在没有支持多个域的SSL证书的情况下处理这种情况?

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-25 10:14:53

如果我正确理解了这一点,您可能可以让Apache服务器处理SSL身份验证,如果代理预先处理它,Jboss可以忽略SSL证书( JBoss的设计是允许部署中的SSL证书的控制/ auth,在本例中这听起来是不必要的)

我有一个类似的设置,托管在其他地方的代理处理SSL身份验证&只需通过DMZ将请求转发到JBoss服务器,后者就可以忽略证书。

票数 1
EN

Stack Overflow用户

发布于 2018-07-27 07:21:59

请允许我给出一个额外的答案-- Apache+JBoss的一个非常常见的设置是将Apache用作JBoss的某种负载平衡器/反向代理前端。SSL通信完全由Apache完成。一个更好的方法是,在Apache和JBoss之间使用AJP,而不是HTTP,因为它在Servlet请求中设置了所有必要的信息,而不是使用X转发-.作为需要显式读取的附加标题的信息。

在这种情况下(使用mod_jk或mod_cluster),您还可以轻松地管理Apache后面的多个JBoss实例。当然,Apache和JBoss之间的通信不是加密的(我知道AJP不支持SSL)。

如果您希望进行加密通信,而Apache仍在进行所有外部SSL通信,那么Apache和JBoss之间的内部通信只需要由一个证书来覆盖,而Apache需要信任该证书。

还有一个--您只需将多个证书/私钥导入到已经存在的密钥库中,就可以将它们放入密钥库中。使用keystore -list,您可以查看keystore的内容。我从未测试过的是,如果JBoss将使用SNI来标识传入请求的正确证书/密钥。但是新的JBoss和Java默认支持SNI。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13647106

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档