HTTP协议转换成HTTPS协议

HTTP协议转换成HTTPS协议

考虑到数据的安全敏感性采用https是超文本传输协议(HTTP)加SSL/TLS(数据链接层加密技术)的组合,用以鉴定网络服务器身份并且提供用户与服务器加密通讯。

本文以jboss-4.2.3.GA版本为例讲解配置https方法。(tomcat在后面)

一、为服务器生成证书keystore密钥文件

1.以下是我在cmd中的操作:

%JAVA_HOME%\bin\keytool -genkey -alias server -keyalg RSA -keystore f:\server.keystore -validity 3650

或有相应提示输入提示信息

在F盘生成了一个server.keystore密钥文件。

-alias server key的别名。具体参数见本文档附录最后。

二、将生成好的server.keystore放入你的jboss安装目录

生成完后server.keystore放入D:\ jboss-4.2.3.GA\server\default\conf中。

三、修改server.xml文件

1.修改D:\jboss-4.

2.

3.GA\server\default\deploy\jboss-web.deployer 目录下的

server.xml文件。

2.找到

入代码片段:

keystoreFile="${jboss.server.home.dir}/conf/server.keystore"

keystorePass="123456" clientAuth="false" sslProtocol="TLS"

也可不去掉注释增加如下代码:

port="8443" minSpareThreads="5" maxSpareThreads="75"

enableLookups="true" disableUploadTimeout="true"

acceptCount="100" maxThreads="200"

scheme="https" secure="true" SSLEnabled="true"

keystoreFile="${jboss.server.home.dir}/conf/server.keystore"

keystorePass="123456"

clientAuth="false" sslProtocol="TLS"/>

keystoreFile:server.keystore 在jboss中的位置,在第二步中放的位置

keystorePass:在cmd命令中输入的key密码一定要一直

sslProtocol="TLS":加密方式

可以参考官网https://www.360docs.net/doc/ab17952319.html,/jbossweb/3.0.x/ssl-howto.html

四、修改项目中web.xml配置文件增加如下配置。

HtmlAdaptor

An example security config that only allows users with the

role JBossAdmin to access the HTML JMX console web application

*.do

Protection should be

CONFIDENTIAL

CONFIDENTIAL

*.do过滤地址可以配置多个选项/表示全部

可以用指定jsp html等

CONFIDENTIAL

其中transport-guarantee的可选参数类型有三个:

NONE: 对所使用的通信协议不加限制;

CONFIDENTIAL:使用加密的通信协议;

INTEGRAL:数据必须以一种防止截取它的人阅读它的方式传送。

五、测试。

访问

也可以访问

本项目地址:

https://www.360docs.net/doc/ab17952319.html,:8080/buyerindex.do会强制转向的

https://https://www.360docs.net/doc/ab17952319.html,:8443/buyerindex.do

注意https://www.360docs.net/doc/ab17952319.html, 是在cmd生成key文件时输入的

出现警告点击继续

出现红叉不信任警告

可以查看证书信息,里面都是cmd时生成的信息

六、安装导入证书

如上图点击“常规选项卡”点击安装证书

点击是。

重新打开浏览器此时的地址栏警告已经没有了

注意地址栏https://www.360docs.net/doc/ab17952319.html,是cmd输入的“名字姓氏(名词可能不一样)”如果不匹配或出现警告“地址不符”

到处为止jboss https加密协议完成,注意这种用是单向认证

七、tomcat配置https协议

生成keystore文件与jboss 相同。

文件存放位置:tomcat安装的根目录如:D:\apache-tomcat-6.0.37

修改conf下的service.xml文件方法与jboss修改文件相同如:

port="8443" minSpareThreads="5"

maxSpareThreads="75"

enableLookups="true" disableUploadTimeout="true"

acceptCount="100" maxThreads="200"

scheme="https" secure="true" SSLEnabled="true"

clientAuth="false" sslProtocol="TLS"

keystoreFile="server.keystore"

keystorePass="123456"/>

注意红色部分tomcat6 是这样配置的

protocol="org.apache.coyote.http11.Http11NioProtocol"

其他tomcat版本protocol="HTTP/1.1"

修改项目web.xml 文件同jboss相同。

完毕测试方法类同。

八、JDK中keytool 常用命令。

-genkey 在用户主目录中创建一个默认文件".keystore",还会产生一个mykey 的别名,mykey中包含用户的公钥、私钥和证书

(在没有指定生成位置的情况下,keystore会存在用户系统默认目录,如:对于window xp系统,会生成在系统的C:/Documents and Settings/UserName/文件名为“.keystore”)

-alias 产生别名

-keystore 指定密钥库的名称(产生的各类信息将不在.keystore文件中)

-keyalg 指定密钥的算法(如RSA DSA(如果不指定默认采用DSA))

-validity 指定创建的证书有效期多少天

-keysize 指定密钥长度

-storepass 指定密钥库的密码(获取keystore信息所需的密码)

-keypass 指定别名条目的密码(私钥的密码)

-dname 指定证书拥有者信息例如:"CN=名字与姓氏,OU=组织单位名称,O=组织名称,L=城市或区域名称,ST=州或省份名称,C=单位的两字母国家代

相关文档
最新文档