配置jboss4.2.3GA启用SSL
转帖保存
配置jboss的HTTP请求走SSL(HTTPS协议)
l 生成keystore 文件
用keytool生成server.keystore文件:
进入命令行
C:\Documents and Settings\new>
keytool -genkey -alias tc-ssl -keyalg RSA -keystore c:\server.keystore -validity 3650
会提示要求输入私钥信息。
生成完后放入\jboss安装目录\server\default\conf下
l 修改D:\jboss-4.2.2.GA\server\default\deploy\jboss-web.deployer\server.xml文件
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="conf/server.keystore" keystorePass="123456"
keystoreType="jks"
/>
去掉该段注释,添加代码(红色标注部分)
keystoreFile后面的内容是server.keystore文件的相对路径。
keystorePass后面的内容是生成文件是的密码。
l 修改完成后启动JBOSS,访问
https://127.0.0.1:8443/teamnet/project/login.jsp
点击查看证书
是否继续选择是。
成功访问,注意端口号为配置文件中的8443,可以根据需要修改。
问题:访问原来的http://127.0.0.1:8080/teamnet/project/login.jsp也同样可以访问页面
l 修改web.xml文件,配置一个HtmlAdaptor。添加代码:
<security-constraint>
<web-resource-collection>
<web-resource-name>HtmlAdaptor</web-resource-name>
<description>
An example security config that only allows users with
the role JBossAdmin to access the HTML JMX console web
application
</description>
<url-pattern>/</url-pattern>
<!-- <http-method>GET</http-method>
<http-method>POST</http-method> -->
</web-resource-collection>
<!--<auth-constraint>
<role-name>JBossAdmin</role-name>
</auth-constraint> -->
<user-data-constraint>
<description>Protection should be CONFIDENTIAL</description>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
再次启动JBOSS服务器,访问http://127.0.0.1:8080/teamnet/project/login.jsp
可以看到访问http已经被自动的转到https协议进行访问。
另外如果jboss有启用APR,那么启动时会报错(No Certificate file specified or invalid file format ).
此时需要将传统配置中
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
。。。
的protocol修改为
<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true"
。。。
最后:
用合法证书替换自签名证书
依据上面文章的操作,在浏览器上打开https时,会提示证书错误。这个时候就需要去申请一个合法证书,收费的或是免费的都行。免费的证书将不会在
地址栏显示公司名称。
1.类似上文第一步,产生keystore文件
keytool -genkey -alias server -keyalg RSA -keysize 2048 -keystore keystore.jks -storepass password
输入名称时,要与域名相同,例如immtest.immerp.com
2.生成证书请求文件(CSR)
Keytool -certreq -alias server -sigalg SHA1withRSA -file certreq.csr -keystore keystore.jks -keypass password -storepass password
3.在证书申请网站,提交csr文件。审核通过后发将证书通过邮件发送回来。这里可以采用www.comodo.com提供的免费证书,90天有效,不限制续用。
4.邮件中一般包含一个或多个的CA证书和服务器域名证书。先分别导入CA证书,最后导入域名证书。
CA证书的别名可以随意,域名证书的别名与生成keystore时的要相同.(下面用comodo颁发的证书为例)
keytool -import -trustcacerts -alias AddTrustExternalCARoot -file AddTrustExternalCARoot.crt -keystore keystore.jks
keytool -import -trustcacerts -alias intermediate1 -file ComodoUTNSGCCA.crt -keystore keystore.jks
keytool -import -trustcacerts -alias intermediate2 -file UTNAddTrustSGCCA.crt -keystore keystore.jks
keytool -import -trustcacerts -alias intermediate3 -file EssentialSSLCA_2.crt -keystore keystore.jks
keytool -import -trustcacerts -alias server -file immtest_immerp_com.crt -keystore keystore.jks
5.将文件keystore.jks放到替换原来的keystore文件,重启jboss。
配置jboss4.2.3GA启用SSL的更多相关文章
- ZeroC Ice启用SSL通讯的配置
Zeroc ICE ( Internet Communications Engine )中间件号称标准统一,开源,跨平台,跨语言,分布式,安全,服务透明,负载均衡,面向对象,性能优越,防火墙穿透,通讯 ...
- 自行搭建私有云ownCloud,启用SSL,其他配置
ownCloud简介 ownCloud(官网)是一款开源的私有云框架,可以通过它实现个人网盘的功能,如果拥有一个性能不错的VPS,那么就可以摆脱奇慢无比的百度云等网盘啦!我花了大约一天的时间总算搭好了 ...
- magento启用SSL改http成https
Magento是电子商务网站,对于网站的用户信息安全来说,让Magento使用SSL连接是一个很好的解决方案.如果在页面的边栏或者底部放上些表明本站使用安全连接的图片,显得更专业,让客户有安全感,对于 ...
- 为ASP.NetCore程序启用SSL
紧接着上一篇搭建连接MySql的三层架构的ASP.NetCore2.0的WebApi的案例,这篇来实现为ASP.NetCore启用SSL支持 由于ASP.NetCore默认服务器Kestrel不像ii ...
- 如何为MySQL服务器和客户机启用SSL
本文来自我的github pages博客http://galengao.github.io/ 即www.gaohuirong.cn 摘要: mysql5.7后有ssl新特性 自己搭建mysql ent ...
- (4.22)Microsoft 管理控制台启用 SSL 加密的 SQL Server 实例
如何通过使用 Microsoft 管理控制台启用 SSL 加密的 SQL Server 实例 关键词:MSSQL加密,sql server加密,sql server客户端与服务器传输内容加密 转自:h ...
- Nginx启用ssl以及免费证书申请
主要是这个东西,折腾了我两天,所以记录下来. 最开始是在meteor下面调用一个webservice,但是发现meteor项目的发布环境时https,所以请求的webservice也必须时webser ...
- (十四)RabbitMQ消息队列-启用SSL安全通讯
原文:(十四)RabbitMQ消息队列-启用SSL安全通讯 如果RabbitMQ服务在内网中,只有内网的应用连接,我们认为这些连接都是安全的,但是个别情况我们需要让RabbitMQ对外提供服务.这种情 ...
- Let's Encrypt 安装配置教程,免费的 SSL 证书
官网:https://letsencrypt.org/ 安装Let's Encrypt 安装非常简单直接克隆就可以了 git clone https://github.com/letsencrypt/ ...
随机推荐
- 轻松创建nodejs服务器(1):一个简单nodejs服务器例子
这篇文章主要介绍了一个简单nodejs服务器例子,本文实现了一个简单的hello world例子,并展示如何运行这个服务器,需要的朋友可以参考下 我们先来实现一个简单的例子,hello world ...
- CSS概要
CSS概要 laiqun@msn.cn Contents 1. css的引入 2. css的选择器及效果图 3. css 盒模型 4. css 浮动 4.1. 浮动的作用: 4.2. 浮动的影响: 5 ...
- storm serializable
http://www.programgo.com/article/68283366567/
- WebRequest 对象的使用
// 待请求的地址 string url = "http://www.cnblogs.com"; // 创建 WebRequest 对象,WebRequest 是抽象类,定义了请求 ...
- addEventListener与removeEventListener
addEventListener:添加事件监听器 element.addEventListener(event, function, useCapture) event:事件类型,字符串,不要加&qu ...
- hdu 5536 xor题
input 1<=T<=1000 3<=n<=1000 s1 s2 ... sn 0<=si<=10e9 最多十个样例n>=100 output max((a ...
- PHP 上传图片,生成水印,支持文字, gif, png
//admin_upfile.php <html> <meta http-equiv="Content-Type" content="text/html ...
- http的状态码(中英文)
1**:请求收到,继续处理 2**:操作成功收到,分析.接受 3**:完成此请求必须进一步处理 4**:请求包含一个错误语法或不能完成 5**:服务器执行一个完全有效请求失败 100——客户必须继续发 ...
- Hibernate的dynamic-insert和dynamic-update的使用
Hibernate在初始化的时候,默认按照配置为表预定义insert,delete,update,select(by id)的SQL语句放在session中,其中insert,update,selec ...
- initWithFrame、initWithCoder、awakeFromNib的区别和调用次序 & UIViewController生命周期 查缺补漏
当我们创建或者自定义一个UI控件时,就很可能会调用awakeFromNib.initWithCoder .initWithFrame这些方法.三者的具体区别如下: initWithFrame: 通过代 ...