转帖保存

配置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的更多相关文章

  1. ZeroC Ice启用SSL通讯的配置

    Zeroc ICE ( Internet Communications Engine )中间件号称标准统一,开源,跨平台,跨语言,分布式,安全,服务透明,负载均衡,面向对象,性能优越,防火墙穿透,通讯 ...

  2. 自行搭建私有云ownCloud,启用SSL,其他配置

    ownCloud简介 ownCloud(官网)是一款开源的私有云框架,可以通过它实现个人网盘的功能,如果拥有一个性能不错的VPS,那么就可以摆脱奇慢无比的百度云等网盘啦!我花了大约一天的时间总算搭好了 ...

  3. magento启用SSL改http成https

    Magento是电子商务网站,对于网站的用户信息安全来说,让Magento使用SSL连接是一个很好的解决方案.如果在页面的边栏或者底部放上些表明本站使用安全连接的图片,显得更专业,让客户有安全感,对于 ...

  4. 为ASP.NetCore程序启用SSL

    紧接着上一篇搭建连接MySql的三层架构的ASP.NetCore2.0的WebApi的案例,这篇来实现为ASP.NetCore启用SSL支持 由于ASP.NetCore默认服务器Kestrel不像ii ...

  5. 如何为MySQL服务器和客户机启用SSL

    本文来自我的github pages博客http://galengao.github.io/ 即www.gaohuirong.cn 摘要: mysql5.7后有ssl新特性 自己搭建mysql ent ...

  6. (4.22)Microsoft 管理控制台启用 SSL 加密的 SQL Server 实例

    如何通过使用 Microsoft 管理控制台启用 SSL 加密的 SQL Server 实例 关键词:MSSQL加密,sql server加密,sql server客户端与服务器传输内容加密 转自:h ...

  7. Nginx启用ssl以及免费证书申请

    主要是这个东西,折腾了我两天,所以记录下来. 最开始是在meteor下面调用一个webservice,但是发现meteor项目的发布环境时https,所以请求的webservice也必须时webser ...

  8. (十四)RabbitMQ消息队列-启用SSL安全通讯

    原文:(十四)RabbitMQ消息队列-启用SSL安全通讯 如果RabbitMQ服务在内网中,只有内网的应用连接,我们认为这些连接都是安全的,但是个别情况我们需要让RabbitMQ对外提供服务.这种情 ...

  9. Let's Encrypt 安装配置教程,免费的 SSL 证书

    官网:https://letsencrypt.org/ 安装Let's Encrypt 安装非常简单直接克隆就可以了 git clone https://github.com/letsencrypt/ ...

随机推荐

  1. Unity 的ICallHander在C#项目中实现注入

    项目包引用: Install-Package Unity.Interception 创建项目的接口和其实类: public interface ICalculator { double Calcula ...

  2. listview解决滑动条目的时候背景变为黑色的问题

    方式一:java代码: listView.setCacheColorHint(0); 方式二:布局文件 <ListView android:id="@+id/listView1&quo ...

  3. 控制器view的加载顺序initWithNibName >>> viewDidLoad >>> viewWillAppear >>> viewDidAppear

    -(void)viewWillAppear:(BOOL)animated { self.navigationController.navigationBarHidden=NO;// 邓超界:放在wil ...

  4. PHP之音乐ID3扩展

    不知道你有没有这样的经历,一些从网上下载的MP3音乐,文件名明明是01.02这样的序号,但播放时却能显示出歌曲的正确名称来,是不是有点奇妙? 这其实都是ID3在暗中相助 ID3,一般是位于一个mp3文 ...

  5. QML中MouseArea元素的介绍

    原文:http://www.thisisqt.com/?action-viewnews-itemid-22 MouseArea元素的一个很典型的用法是和一个可视的item一起用,处理这个item的鼠标 ...

  6. Java 中的四种引用及垃圾回收策略

    Java 中有四种引用:强引用.软引用.弱引用.虚引用: 其主要区别在于垃圾回收时是否进行回收: 1.强引用 使用最普遍的引用.如果一个对象具有强引用,那就 类似于必不可少的生活用品,垃圾回收器绝不会 ...

  7. offset,client,scroll,style相关笔记

    1.offsetTop 功能:获取元素上外缘与最近的定位父元素内壁的距离,如果没有定位父元素,则是与文档上内壁的距离 使用方法:js document.querySelector(...).offse ...

  8. Json与Gson讲解

    1 json的含义: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言.易于 ...

  9. spring @Component

    使用 @Component <context:component-scan base-package="dao" />   虽 然我们可以通过@Autowired或@R ...

  10. javaScript 新学习:Array.contains 函数

    Array.contains 函数 确定指定对象是否是 Array 对象中的元素. 此函数是静态的,可在不创建对象实例的情况下调用. var itemExists = Array.contains(a ...